nginx-module-vts监控nginx
通过with-http_stub_status_module或nginx-module-vts监控nginx
https://juejin.cn/post/7119751560900378637#heading-6
前言:nginx安装时推荐编译安装
一. nginx编译两模块 (with-http_stub_status_module监控的东西太少不推荐 )
nginx-module-vts下载链接:
https://codeload.github.com/vozlt/nginx-module-vts/tar.gz/v0.1.18
编译安装nginx:
https://gegewu12.github.io/2023/05/15/%E7%BC%96%E8%AF%91%E9%83%A8%E7%BD%B2nginx/
1.首次安装nginx编译(with-http_stub_status_module模块)
查看是否已有模块
1 | # 查看是否已编译 |
编译安装
1 | cd /usr/local/src/${dir} && ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_slice_module --with-stream |
2.nginx 已安装但是没有编译nginx-module-vts模块(推荐使用nginx-module-vts监控nginx)
nginx-module-vts下载链接:
https://codeload.github.com/vozlt/nginx-module-vts/tar.gz/v0.1.18
nginx下载链接:
http://nginx.org/download/nginx-1.16.1.tar.gz
如果是编译安装则直接将vts模块解压到/usr/local/src/nginx-1.16.1目录使用--add-module=/usr/local/src/nginx-1.16.1/nginx-module-vts-0.1.18指定编译模块
如果是其他安装方式如apt则需要下载与apt安装方式相同版本nginx安装包 解压到/usr/local/src/目录再将vts模块解压到/usr/local/src/nginx-1.16.1目录使用--add-module=/usr/local/src/nginx-1.16.1/nginx-module-vts-0.1.18指定编译模块
框内编译所有操作在/usr/local/src/nginx-1.16.1目录执行
1 | # 下载nginx压缩包 |
此时编译成功!
make完成截图
3. docker-compose文件
二. 监控nginx with-http_stub_status_module模块 ( 监控的东西太少不建议使用 )
1.修改nginx配置文件 server模块部分 (/usr/local/nginx/conf/nginx.conf)
1 | # 修改nginx配置文件 server模块部分 |
2.此模块可搭配nginx-prometheus-exporter:latest采集插件使用
1 | # docker run构建监控插件容器 |
3.采用nginx-prometheus-exporter采集插件prometheus.yml配置
1 | # prometheus配置 |
4 采用telegraf采集插件telegraf.conf配置(此处需要写成实际IP不能写为localhost)
1 | [[inputs.nginx]] |
注:此处telegraf nginx-prometheus-exporter选其一
三 nginx-module-vts模块
1.修改nginx配置文件 server模块部分 (/usr/local/nginx/conf/nginx.conf)
1 | # http模块添加 |
2. prometheus.yml配置监控
1 | # nginx 监控 |
四. 验证
1. with-http_stub_status_module验证:
2. nginx-module-vts验证 (grafana 14900 9785 15205 )
http://10.0.0.10/status


















