如何使用 Monit 工具(免费版)发送 Linux 服务器监控的每日警报?

如何使用 Monit 工具(免费版)发送 Linux 服务器监控的每日警报?

我正在使用 monit 免费版来监控服务器状态,但警报仅在完成某些触发操作时才有效。但是,我想发送 monit 显示的服务器所有详细信息的每日警报。

答案1

你想干什么?想“举报”吗?

Monit无法做到这一点。正如您所说,Monit当触发服务检查时会发送警报。这是设计使然。

我建议设置一个每日 cron 作业来运行Bash您自己的脚本。

您的脚本可以解析Monit日志文件,检索给定日期的事件,组织信息以便于用户更方便地阅读并发送报告。


但是,如果你不想使用Cron但仍使用Monit,你可以使用服务轮询时间来自 的功能Monit

这里的想法是每天触发一次虚假的服务检查,它也会运行Bash你自己的脚本,执行与上面 cron 作业描述的相同的操作。

伪造的服务定义可能如下所示:

check process fake with pidfile /var/run/fake.pid
  start program = "/root/report.sh"
  stop program = "/root/report.sh"
  every "00 23 * * 0-6"

这将于每天晚上 11 点触发。

但在我看来,这个解决方案并不是最合适的,因为:

  • 你的 Monit 日志文件中会出现“错误”警报
  • Monit如果您设置的守护进程轮询间隔小于一分钟(例如 30 秒),则可能会触发多次。

相关内容