使用 Munin 监控 Nginx 虚拟主机

使用 Munin 监控 Nginx 虚拟主机

我已经设置了 Munin,到目前为止,我很喜欢它。我设置了一些基本的 Nginx 监控,并且能够监控 Nginx 的状态和 RAM 使用情况(将 stub_status 编译到 Nginx 中并在配置中激活)。然而,在我设置 Munin 和 Nginx 以执行此操作的过程中,我发现了 nginx_traffic Munin 插件。我在 Munin 中启用了它,就像我对 nginx_status 和 nginx_request 所做的那样,但我的 vhost 流量图表仍然是空白的。

munin-node-configure --suggest显示 nginx_request 和 nginx_status 已激活并推荐,但没有显示任何其他 nginx_* 插件(虽然我有 nginx_memory,并且它已成功绘制图表)。

有人能至少告诉我如何正确设置这个插件吗?我很乐意使用它。

答案1

我希望 munin 插件需要 nginx 的状态模块。默认情况下不会将其编译进去,即使将其编译进去也不会自动提供。

使用 --with-http_stub_status_module 标志编译 nginx。

确保您已经在server {}这样的块内启用了存根状态:

    location /nginx_status {
            stub_status on;
            access_log off;
    }

重新启动 nginx 以使您的更改生效。

curl http://yourdomain.example.com/nginx_status验证 nginx 确实返回数据。

确保 munin 知道你的 nginx_status URL 的完整路径。

答案2

我用nginx_vhost_traffic插件。您需要让 nginx 为您想要监控的每个 vhost 生成一个“流量日志”,但这可能比重新编译 nginx 更可行。

相关内容