首页 > 解决方案 > 来自textPayload的堆栈驱动程序中的日志解析警报?

问题描述

我有点卡在堆栈驱动程序中的警报。我的目标是从 MySQL 错误的解析日志中发出警报。我有textPayload: "2020-06-24T17:25:05.766410Z 332837 [ERROR] /usr/sbin/mysqld: Out of memory (Needed 1073741816 bytes)"消息,我需要提醒,当我有 5 条这样的消息时。但是我坚持使用度量标准,当我尝试创建和设置时,我遇到了 reg exp 错误。也许我需要其他方式来配置它?

在此处输入图像描述

标签: ubuntugoogle-cloud-platformmonitoringgoogle-cloud-stackdriver

解决方案


转到查询编辑器并尝试

resource.type="gce_instance"
textPayload.message=~"/usr/sbin/mysqld: Out of memory"

这将匹配所有日志条目,然后您可以创建一个基于日志的指标,该指标将计算日志条目,然后是您想要的警报(如下图所示); 在此处输入图像描述

创建警报策略时,请确保该字段agregator设置为您需要的任何时间段sumperiod如果您将其设置为 10 分钟,如果只有 4 个错误,则不会触发警报。记在脑子里。除非它们是在很短的时间内生成的,但这是特定于您的情况的。

在此处输入图像描述

在我的例子中,配置部分应该是这样的: 在此处输入图像描述

在其他页面上选择警报通道等(非常清楚)并保存警报。

完成后,您的警报应如下所示(我专门为此示例创建了一个指标和警报): 在此处输入图像描述

我故意触发了警报,并在事件发生后大约 2 分钟(这是典型的)后收到了一封电子邮件。


推荐阅读