标签: stackdriver

将 Container-Optimized OS 服务日志输出发送到 Stackdriver Logging

如何将 Cloud-Config 服务的输出获取到 Stackdriver Logging?

我正在使用 node.js API 创建我的 VM 实例,并按照此处找到的示例创建我的服务:https : //cloud.google.com/container-optimized-os/docs/how-to/run-container -instance#starting_a_docker_container_via_cloud-config

一切都运行成功,但我可以看到日志输出的唯一方法是通过 SSH 连接到实例并运行sudo journalctl -ef,但我真的很想将日志流式传输到 Stackdriver Logging。但是 COS 似乎不允许我安装日志代理。

这是我的服务文件,它/home/ci/run.sh只是运行一些 docker 容器,这些容器运行一些测试并输出到标准输出:

- path: /etc/systemd/system/ciservice.service
  permissions: 0644
  owner: root
  content: |
    [Unit]
    Description=Run tests
    Wants=gcr-online.target
    After=gcr-online.target

    [Service]
    User=ci
    Group=ci
    Environment="HOME=/home/ci"
    ExecStartPre=/usr/bin/docker-credential-gcr configure-docker
    ExecStart=/bin/bash /home/ci/run.sh
Run Code Online (Sandbox Code Playgroud)

我正在使用容器优化操作系统,因为它带有 Docker、开箱即用的 GCR 访问、安全性,并且可以快速启动。但我想我可能不得不切换回基于 Ubuntu/Debian 的映像,因为这将允许我安装日志代理,但代价是在自定义映像中进行更多的基本配置。

对此使用 COS 的任何帮助将不胜感激,因此在此先感谢您 :)

google-compute-engine stackdriver google-container-os google-cloud-stackdriver

4
推荐指数
1
解决办法
1486
查看次数

使用 Stackdriver 每个设备的 Google IOT 心跳警报

我想就大量 Google IOT 核心设备中的任何一个缺少心跳(或收到 0 个字节)发出警报。我似乎无法在 Stackdriver 中做到这一点。相反,它似乎让我在整个设备注册表上发出警报,这并没有给我我正在寻找的东西(我怎么知道某个特定设备已断开连接?)

那么如何去做呢?

google-cloud-platform stackdriver google-cloud-iot

4
推荐指数
1
解决办法
737
查看次数

在没有表行更新/上传发生时设置大查询警报

当没有数据上传到 Big Query 表超过一天时,为每封电子邮件设置 Big Query 警报的最佳方法是什么?我想到的是:

  • 堆栈驱动程序
  • 酒馆子
  • 云功能

但我不确定最快和最好的方法是什么。我尝试通过 Stackdirver -> Create New Alert Ploicy 进行设置

  • 资源类型:BigQuery 数据集
  • 指标:上传的行
  • 如果-> 违反任何时间序列 -> 23 小时不存在,则条件触发

但是没有发送电子邮件。虽然有些表几个月没有数据......

google-bigquery google-cloud-platform stackdriver google-cloud-stackdriver

4
推荐指数
1
解决办法
1454
查看次数

GKE 中的 HPA 扩展时出错:apiserver 无法写入 JSON 响应:http2:流已关闭

遵循 google 为在 Google Kubernetes Engine 中部署 HPA 制定的指南:https://cloud.google.com/kubernetes-engine/docs/tutorials/autoscaling-metrics

并添加正确的权限,因为我在本指南中使用工作负载身份: https: //github.com/GoogleCloudPlatform/k8s-stackdriver/tree/master/custom-metrics-stackdriver-adapter

并添加此处评论的防火墙规则:https ://github.com/kubernetes-sigs/prometheus-adapter/issues/134

我陷入了 HPA 返回此错误的地步:

kubectl describe hpa -n test-namespace
Name:                  my-hpa
Namespace:             test-namespace
Labels:                <none>
Annotations:           <none>
CreationTimestamp:     Tue, 13 Apr 2021 12:47:56 +0200
Reference:             StatefulSet/my-set
Metrics:               ( current / target )
  "my-metric" on pods:  <unknown> / 1
Min replicas:          1
Max replicas:          60
StatefulSet pods:      1 current / 0 desired
Conditions:
  Type           Status  Reason               Message
  ----           ------  ------               -------
  AbleToScale    True    SucceededGetScale    the HPA …
Run Code Online (Sandbox Code Playgroud)

google-cloud-platform kubernetes google-kubernetes-engine stackdriver hpa

4
推荐指数
1
解决办法
3702
查看次数

有没有办法通过 API 获取 Google Cloud Monitoring 事件指标?

在查看此处的文档 ( https://cloud.google.com/monitoring/alerts/incidents-events#incident ) 并使用一般产品时,似乎未决事件和相关详细信息仅通过 Google Cloud Console 显示。

CLI 和 API 似乎只支持警报策略的管理,但我找不到检索未处理事件列表的方法。例如,如果特定警报策略的开放时间超过 5 个事件持续 12 小时,我希望发送警报。数据似乎存在(由 Google Cloud Console 提供),但 API 不公开。

monitoring google-cloud-platform gcloud stackdriver

4
推荐指数
1
解决办法
878
查看次数

3
推荐指数
1
解决办法
1084
查看次数

GKE - Stackdriver

我试图将我的pod日志输出到Stackdriver,但我遇到了一个问题,他们没有被发送到Stackdriver.

如果我查看GKE集群的详细信息,它会显示:

Stackdriver Logging - Disabled
Stackdriver Monitoring  - Enabled
Run Code Online (Sandbox Code Playgroud)

我找不到有关如何在正在运行的集群上启用Stackdriver的任何信息.

有一个正在运行的heapster pod,我已经运行了这个命令,因为没有设置:

gcloud container clusters update <cluster> --monitoring-service=monitoring.googleapis.com
Run Code Online (Sandbox Code Playgroud)

现在显示正确的服务,但这并不能解决日志记录问题.是否有人能够阐明如何启用日志记录?

谢谢

logging kubernetes google-kubernetes-engine stackdriver

3
推荐指数
1
解决办法
1284
查看次数

在Firebase云功能中记录'jsonPayload'

TL; DR;

有没有人知道是否可以console.log在Firebase/Google Cloud功能中使用该jsonPayload属性将条目记录到堆栈驱动程序,以便我的日志可搜索(目前我传递给console.log的任何内容都会被字符串化textPayload).


我有一个多模块项目,其中一些代码在Firebase云功能上运行,还有一些在其他环境中运行,如Google Compute Engine.稍微简化一下,我基本上有一个"核心"模块,然后我将"云功能"模块部署到云功能,"后端服务"部署到GCE,这些都依赖于"核心"等.

我在整个"核心"模块中使用bunyan进行日志记录,当部署到GCE时,使用"@ google-cloud/logging-bunyan"配置记录器,以便我的日志转到堆栈驱动程序.

除此之外:在Google Cloud Functions中使用此配置会导致Error: Endpoint read failed我认为由于功能不冷而且尝试重用死连接而导致的问题,但我并不是100%确定真正原因是什么.

所以现在我尝试使用记录console.log(arg),其中arg是一个对象,而不是字符串.我希望这个对象出现在Stack Driver下面,jsonPayload但是它被字符串化并放入textPayload字段中.

firebase google-cloud-functions stackdriver

3
推荐指数
1
解决办法
987
查看次数

在GKE中设置驱逐吊舱警报

我遇到的情况是,内存用完后,吊舱有时会被逐出。有什么方法可以设置某种警报,以便在发生这种情况时可以通知我?

实际上,Kubernetes会继续工作并在删除旧的Pod之后重新创建Pod,而且通常要花几小时或几天才能让我意识到根本存在问题。

kubernetes google-kubernetes-engine stackdriver

3
推荐指数
1
解决办法
1151
查看次数

用于监控 Google Cloud pubsub 中未送达消息的 REST API

我想实现一项服务来监视未送达的消息并在达到阈值或进一步处理时发送通知。

我已经浏览了 Stackdriver。它为我提供了监控和警报,它仅提供获取 metricDescriptor 的 API,但它不提供获取未传递消息的 API,如您在Stackdriver Monitoring API 中看到的。

实际上是否有提供的 API 来获取指标值?

google-cloud-platform google-cloud-pubsub stackdriver google-cloud-stackdriver

3
推荐指数
1
解决办法
567
查看次数