NGINX Prometheus Exporter 教程
项目地址:https://gitcode.com/gh_mirrors/ng/nginx-prometheus-exporter
1. 项目目录结构及介绍
nginx-prometheus-exporter 的目录结构主要包括以下几个关键部分:
.
├── Dockerfile # Docker 映像构建文件
├── examples # 示例配置文件和脚本
│ ├── systemd # 系统d服务示例配置
├── Makefile # Makefile 用于构建和打包
├── prometheus.example # 示例 Prometheus 配置文件
└── src # 项目源代码所在目录
└── main.go # 主程序入口
此项目的主要目的是提供一个能够从 NGINX 和 NGINX Plus 服务器收集指标并导出到 Prometheus 的工具。src/main.go 是主程序,它实现了一个简单的 Web 服务器,暴露出 /metrics 端点供 Prometheus 抓取。
2. 项目的启动文件介绍
由于 nginx-prometheus-exporter 是一个 Go 语言编写的程序,没有单独的启动文件。你可以通过命令行运行该程序或使用提供的 Docker 镜像。
命令行运行
使用 Go 编译并运行(确保已安装 Go 环境):
go get github.com/nginxinc/nginx-prometheus-exporter
./bin/nginx-prometheus-exporter [flags]
Docker 运行
如果你打算使用 Docker,可以执行以下命令:
docker run -p 9113:9113 nginx/nginx-prometheus-exporter:latest
这将把 nginx-prometheus-exporter 的默认端口 9113 映射到主机上的相同端口。
3. 项目的配置文件介绍
nginx-prometheus-exporter 在命令行中接受多个标志来配置其行为,例如指定要抓取的 NGINX 终端节点以及如何连接。通常不需要配置文件,但可以通过环境变量或命令行标志传递设置。
例如,如果你想从 Unix 域套接字获取 NGINX 指标,可以这样运行:
nginx-prometheus-exporter \
--nginx.scrape-uri=unix:/path/to/unix/domain/socket:/stub_status
此外,examples/systemd 目录下的文件提供了在 systemd 系统下作为服务运行的示例配置。这些配置文件允许你定制如启动命令、环境变量等。
对于 Prometheus 的配置,需要在 Prometheus 的配置文件(如 prometheus.yml)中添加 nginx-prometheus-exporter 的目标地址来定期抓取指标。
scrape_configs:
- job_name: 'nginx'
static_configs:
- targets: ['localhost:9113']
以上是 nginx-prometheus-exporter 的基本使用和配置简介。在实际环境中,可能需要根据你的 NGINX 配置和网络布局进行相应的调整。更多信息请参考官方仓库的文档。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



