php-fpm-exporter 项目使用教程
1. 项目目录结构及介绍
php-fpm-exporter/
├── cmd/
│ └── php-fpm-exporter/
├── script/
├── test/
├── vendor/
├── .gitignore
├── .golangci.yml
├── .travis.yml
├── Dockerfile
├── LICENSE
├── README.md
├── VERSION
├── collector/
├── exporter.go
├── go.mod
├── go.sum
└── util/
目录结构介绍
- cmd/: 包含主要的可执行文件目录。
- php-fpm-exporter/: 主要的可执行文件目录,包含构建和运行所需的文件。
- script/: 包含构建脚本。
- test/: 包含测试文件。
- vendor/: 包含项目依赖的第三方库。
- .gitignore: Git 忽略文件配置。
- .golangci.yml: GolangCI 配置文件。
- .travis.yml: Travis CI 配置文件。
- Dockerfile: Docker 构建文件。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文件。
- VERSION: 项目版本文件。
- collector/: 包含收集器相关代码。
- exporter.go: 主要的导出器代码文件。
- go.mod: Go 模块依赖文件。
- go.sum: Go 模块依赖校验文件。
- util/: 包含工具类代码。
2. 项目启动文件介绍
项目的主要启动文件是 cmd/php-fpm-exporter/main.go
。该文件负责初始化并启动 PHP-FPM 指标导出器。
启动文件功能
- 初始化配置: 读取命令行参数和环境变量,配置导出器的监听地址和 PHP-FPM 状态端点。
- 启动导出器: 启动 HTTP 服务器,监听指定地址,提供
/metrics
端点以供 Prometheus 抓取。 - 健康检查: 提供
/healthz
端点用于健康检查。
3. 项目配置文件介绍
项目的主要配置通过命令行参数和环境变量进行。以下是主要的配置项:
命令行参数
- --addr: 监听地址,默认值为
127.0.0.1:8080
。 - --endpoint: PHP-FPM 状态端点 URL,默认值为
http://127.0.0.1:9000/status
。 - --fastcgi: FastCGI URL,如果设置,将使用 FastCGI 而不是 HTTP。
示例
./php-fpm-exporter --addr="127.0.0.1:8080" --endpoint="http://127.0.0.1:9000/status"
环境变量
项目支持通过环境变量进行配置,具体映射关系请参考项目文档。
示例
export PHP_FPM_EXPORTER_ADDR="127.0.0.1:8080"
export PHP_FPM_EXPORTER_ENDPOINT="http://127.0.0.1:9000/status"
./php-fpm-exporter
通过以上配置,可以灵活地启动和配置 php-fpm-exporter
,以满足不同的监控需求。