我正在寻找一种方法来跟踪nginx Web服务器上多个虚拟主机的带宽。 我猜测有一种方法,我可以设置日志文件输出这些信息,然后我可以编写一个脚本parsing通过日志文件,并加起来的文件大小。
如果是这样的话,是否有人知道正确的日志格式,如果已经有一个脚本是这样做的?
您可以使用ngx_http_log_module定义新的日志及其格式。 您可以在http , server或location部分使用以下命令:
log_format name format [format ...]定义了新日志的格式。 variables$bytes_sent将添加为每个请求发送的字节数,包括HTTP头的长度。
access_log path [format [buffer=size]]指定日志文件。 您可以为每个虚拟主机运行此命令为每个虚拟主机定义一个单独的日志。
有一个munin 插件 ,完全按照你想要的 – 通过特定的虚拟主机进行过滤,并将其graphics化。