使用 munin 监控 nginx-plus vhost 流量

使用 munin 监控 nginx-plus vhost 流量

我正在使用 nginx-plus(需要付费的版本),我想通过 vhost 监控访问。

当我使用 nginx 免费版本时,我可以轻松地使用按项目munin插件:

在此处输入图片描述

我迁移到了 nginx plus,但没有数据。当我使用 netcat 登录到 munin node 时:

$ nc localhost 4949

# munin node at servername.com
fetch byprojects_access
controlcenter.value 0
static.value 0
ccapi.value 0
tracking.value 0
reco.value 0

主要区别在于,当我将日志记录到文件时,我通过 syslog 进行记录。每个 vhost 都使用一个标签进行记录,此处的标签为nginxreco

access_log syslog:server=localhost,facility=local7,tag=nginxreco,severity=info;

我在免费 nginx 下有以下日志文​​件配置:

access_log /var/log/nginx/reco-access.log;

因此,对于recovhost 来说,我必须适应插入配置来自:

'reco' => [
            {'path' => '/var/log/nginx/reco-access.log'}
          ],

'reco' => [
            {'path' => '/var/log/local7.log', 'regex' => 'nginxreco'}
          ],

因为我使用 syslog,所以日志格式发生了一点变化:它添加了日期、主机名和标签(这是 syslog 的日志记录方式)

旧格式(来自直接文件):

xx.xx.xx.xx - - [18/Mar/2014:06:25:20 +0100] "GET /HTTP/1.1" 200 52 "-" "Python-urllib/2.7"

新格式(来自系统日志):

Mar 18 06:25:20 myhostname nginxreco: xx.xx.xx.xx - - [18/Mar/2014:06:25:20 +0100] "GET /HTTP/1.1" 200 52 "-" "Python-urllib/2.7"

我究竟做错了什么 ?

答案1

local7.log 无法被 munin 读取

相关内容