在我们的 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 活动所需的属性。