2009-05-26 77 views
8

我已經設置了nagios監控並配置了check_http插件來檢查我的應用程序中的特定URL。該網址返回'ok'或錯誤消息。如何在nagios電子郵件中發送額外信息

當nagios檢測到某些東西不是'好'時,我給了我一封電子郵件。然而,我得到的只是「HTTP關鍵 - 字符串未找到」。我想在電子郵件中收到的是從我的URL返回的實際錯誤消息。我試過使用verbose(-v)選項。在命令行中,它會返回一個完整的請求,包括我的錯誤消息,但是nagios電子郵件只會向我發送詳細響應的第一行。

我想在nagios通知中獲得的是字符串未找到以獲取實際的錯誤消息。有沒有辦法使用check_http(或者可能是其他)插件來做到這一點,還是我必須自己寫?

編輯: 到目前爲止,我一直在我的電子郵件通知中使用$ SERVICEOUTPUT $。

回答

9

似乎是你可以在你的服務通知命令定義中使用(從http://nagios.sourceforge.net/docs/3_0/macrolist.html)兩個服務輸出宏:

  • $ SERVICEOUTPUT $:文本輸出的最後一個服務檢查第一行(即「 Ping OK「)。
  • $ LONGSERVICEOUTPUT $:上次服務檢查時的全文輸出(第一行除外)。

如果你對這些沒有成功,我想最簡單的方法是編寫一個check_http的包裝器,它將錯誤消息放在第一個輸出行上。

+0

謝謝,$ LONGSERVICEOUTPUT $有竅門 – 2009-05-27 23:59:33