当 Linux 服务停止时,我正在尝试在 OMS 中创建警报。
1 回答
AFAIK 我们有以下选项来满足您的要求。
选项一:
如果服务/守护程序由默认配置配置,则服务日志信息将记录在 /var/log/messages 下。
每当 Linux 服务停止时,如果信息记录在 /var/log/messages 文件中,请按照以下步骤获取警报:
转到 Azure 门户 -> YOURLOGANALYTICSWORKSPACE -> 高级设置 -> 数据 -> 系统日志 -> 键入“守护进程”-> 单击“+”-> 单击“保存”。有关详细信息,请参阅此https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-sources-syslog链接。
转到 Azure 门户 -> YOURLOGANALYTICSWORKSPACE -> 日志 -> 键入“系统日志”-> 单击“运行”。检查输出中的“SyslogMessage”列。输出还具有各种其他有用的列,例如 SeverityLevel、ProcessName 和 ProcessID,您可以在根据需要开发查询时使用它们。
所以查询看起来如下所示。
系统日志 | 哪里(设施==“守护进程”)| 其中(SyslogMessage 有“xxxxxxx”,SyslogMessage 有“停止”)| 按计算机汇总 AggregatedValue= any(SyslogMessage),bin(TimeGenerated, 30s)
使用上述查询在 Log Analytics 工作区警报磁贴中创建和配置自定义日志警报。在配置警报时设置阈值、频率、周期详细信息。提供预期的操作组以在警报触发时获得通知。
选项二:
如果服务/守护程序是自定义配置的,则服务日志信息将记录在该特定自定义路径中。
每当 Linux 服务停止时,如果信息被记录在 /xxxx/yyyy/zzzz.txt 文件中(或其他示例是 /aaaa/bbbb/jenkins/jenkins.log、cccc/dddd/tomcat/catalina.out 等。 ) 然后按照以下步骤获取警报:
转到 Azure 门户 -> YOURLOGANALYTICSWORKSPACE -> 高级设置 -> 数据 -> 自定义日志 -> 单击“添加 +” -> ...。有关详细信息,请参阅此https://docs.microsoft.com/en-us /azure/azure-monitor/platform/data-sources-custom-logs链接。
转到 Azure 门户 -> YOURLOGANALYTICSWORKSPACE -> 日志 -> 键入“CUSTOMLOGNAME_CL” -> 单击“运行”。检查输出中的“RawData”列。
所以查询看起来如下所示。
CUSTOMLOGNAME_CL | 其中(RawData 有“xxxxxxx”,RawData 有“停止”)| 汇总 AggregatedValue= any(RawData) by Computer, bin(TimeGenerated, 30s)
使用上述查询在 Log Analytics 工作区警报磁贴中创建和配置自定义日志警报。在配置警报时设置阈值、频率、周期详细信息。提供预期的操作组以在警报触发时获得通知。
选项三:
如果您的服务日志数据也无法使用自定义日志收集,则使用此处说明的 HTTP 数据收集器 API 将数据直接发送到 Azure 监视器 -> https://docs.microsoft.com/en-us/azure/天蓝色监视器/平台/数据收集器 API。
在使用 Azure 自动化运行手册收集 Azure Monitor 中的日志数据中提供了在 Azure 自动化中使用运行手册的示例,此处解释了 -> https://docs.microsoft.com/en-us/azure/azure-monitor/platform/runbook-数据收集。
希望这可以帮助!!干杯!!:)