monit,根据另一项检查运行程序

monit,根据另一项检查运行程序

在我们的 Linux 服务器上,我们有以下基本检查:

check system localhost
    every "* 08-18 * * 1-5"
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 75% then alert
    if swap usage > 25% then alert
    if cpu usage (user) > 70% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

在 3 台服务器上我们有 postgresql。是否可以这样配置 monit:

  • 当基本测试警报时,执行特定程序?

例子:

check process system_busy
    depends on system
    exec "/usr/bin/psql -U postgres -c \"SELECT * FROM pg_stat_activity;\" > /var/log/postgres_busy.log"

我们需要进行另一次检查,以免修改本地主机。

答案1

解决这个问题的更好、更简单的方法是根据所需的 monit 检查调用 bash/python 脚本,该脚本具有在需要时转储 postgres 活动所需的属性。

相关内容