每次我这样做
# monit reload
M/Monit enabled but no httpd allowed -- please add 'set httpd' statement
Reinitializing monit daemon
我收到关于我没有的错误set httpd
。这是我的/etc/monitrc
。
set daemon 60 with start delay 20
set logfile /var/log/monit.log
set pidfile /var/run/monit.pid
set idfile /root/.monit.id
set statefile /tmp/.monit.state
set eventqueue basedir /var/monit slots 100
set mmonit https://xxx:[email protected]/collector
include /etc/monit.d/*
问题
我对客户端上存在 monit 抱怨的内容不感兴趣httpd
。是否可以消除错误消息?
答案1
您无法明确禁用 httpd(除非不是在您的配置中设置它),因为monit cli 依赖于它:
请注意,如果禁用 HTTP 支持,Monit CLI 接口的功能将减少,因为大多数 CLI 命令(例如“monit status”)需要通过 HTTP 接口与 Monit 后台进程通信。我们强烈建议启用 HTTP 支持。如果担心安全问题,请仅将 HTTP 接口绑定到本地主机或使用 Unix Socket,这样 Monit 就无法从外部访问。
默认情况下,它仅绑定到127.0.0.1:2812
。您可以将其设置为UNIX套接字模式,因此对您的系统的影响很小。
答案2
这是一个警告,而不是错误,并且它在源代码中是硬编码的。
} else {
LogWarning("M/Monit enabled but no httpd allowed -- please add 'set httpd' statement\n");
}
因此,您要么需要过滤这些警告的位置以隐藏该警告,要么编译一个自定义版本并将该行注释掉(如果您坚持不运行 http 而不是简单地忽略警告)。