GCP 基于日志的监控:未收到日志时触发警报
Posted
技术标签:
【中文标题】GCP 基于日志的监控:未收到日志时触发警报【英文标题】:GCP Logs-Based Monitoring: Trigger an alert when no logs are received 【发布时间】:2021-05-14 15:02:56 【问题描述】:我有一个应用程序,我正在为其设置基于日志的监控。应用程序将在完成特定任务时记录。我想确保应用程序至少每 6 小时完成一次。
我已尝试通过将监控配置为在指标在给定时间内保持低于 1 时触发警报来复制此规则。
不幸的是,当基于日志的指标没有收到任何日志时,它似乎表现出“没有数据”而不是值 0。
是否可以将未收到日志时的段视为 0 以便触发警报?
我的指标图的屏幕截图:
警报定义的屏幕截图: 您可以看到我们收到了一个时间范围内的日志,但随后该行消失并且没有触发警报。
【问题讨论】:
为什么不创建一个 2 个日志警报指标,这样总会收到一个数据,然后为每个创建 labels? 【参考方案1】:尝试使用 absent_for
和基于 MQL 的警报。
absent_for
表操作生成一个表,其中包含两个值列,活动和信号。当表输入中缺少数据时,活动列为true
,否则为false
。这对于创建条件查询很有用,用于在输入缺失时发出警报。
例子:
fetch gce_instance :: compute.googleapis.com/instance/cpu/usage_time
| absent_for 8h
【讨论】:
获取路径当然是您自己的日志记录指标。但是由于截图上的指责,我以gce cpu usage_time为例。 这正是我需要的,谢谢!我没有意识到 MQL 的功能不仅仅是 UI 上显示的功能。以上是关于GCP 基于日志的监控:未收到日志时触发警报的主要内容,如果未能解决你的问题,请参考以下文章
当没有数据上传到 GCP 中的 BigQuery 表时创建警报
AWS 为 Lambda 创建 Cloudformation 日志警报