8

我已经设置了一个 nagios 监控并配置了 check_http 插件来检查我的应用程序中的特定 URL。该 url 返回“ok”或错误消息。

当我的 nagios 检测到不“正常”时,它会向我发送一封电子邮件。但是我得到的只是“HTTP CRITICAL - 找不到字符串”。我想在电子邮件中收到的是从我的 URL 返回的实际错误消息。我尝试过使用详细 (-v) 选项。在命令行中,它会返回一个完整的请求,包括我的错误消息,但是 nagios 电子邮件只会向我发送详细响应的第一行。

我想在 nagios 通知中得到的不是string not found来获取实际的错误消息。有什么办法可以使用 check_http (或者可能是其他)插件,还是我必须自己写?

编辑: 到目前为止,我一直在我的电子邮件通知中使用 $SERVICEOUTPUT$。

4

1 回答 1

9

在您的服务通知命令定义中,您似乎可以使用两个服务输出宏(来自http://nagios.sourceforge.net/docs/3_0/macrolist.html ):

  • $SERVICEOUTPUT$:上次服务检查(即“Ping OK”)输出的第一行文本。
  • $LONGSERVICEOUTPUT$:上次服务检查的全文输出(第一行除外)。

如果你不成功,我想最简单的方法是为 check_http 编写一个包装器,将你的错误消息放在第一行输出。

于 2009-05-27T15:22:34.433 回答