
ncabatoff/process-exporter该镜像是一个 Prometheus Exporter,用于从 Linux 系统的 /proc 文件系统采集进程级指标,并将其转换为 Prometheus 兼容格式,通过 HTTP 端点暴露,供 Prometheus 抓取和监控。
/proc);/proc 文件系统);/proc 文件系统可用);通过 docker run 命令启动容器,需挂载宿主机 /proc 目录(容器内默认 /proc 为容器自身的,需显式挂载宿主机 /proc 以获取主机进程信息)。
bashdocker run -d \ --name proc-exporter \ -p 9100:9100 \ -v /proc:/host/proc:ro \ -e PROCFS_PATH=/host/proc \ -e SCRAPE_INTERVAL=5s \ <exporter-image-name>
-v /proc:/host/proc:ro:挂载宿主机 /proc 到容器内 /host/proc(只读);-e PROCFS_PATH=/host/proc:指定 Exporter 读取的 /proc 路径(需与挂载路径一致);-p 9100:9100:暴露 Exporter 监听端口(默认 9100);<exporter-image-name>:替换为实际镜像名称(如 prometheus-process-exporter)。通过 docker-compose.yml 定义服务,适用于多容器协同部署场景:
yamlversion: '3.8' services: proc-exporter: image: <exporter-image-name> container_name: proc-exporter restart: unless-stopped ports: - "9100:9100" # Exporter 监听端口 volumes: - /proc:/host/proc:ro # 挂载宿主机 /proc environment: - PROCFS_PATH=/host/proc # /proc 文件系统路径 - LISTEN_PORT=9100 # 监听端口 - SCRAPE_INTERVAL=5s # 指标采集间隔 - INCLUDE_PROCESSES=^nginx|mysql$ # 仅采集名称匹配 nginx 或 mysql 的进程 - EXCLUDE_PROCESSES=^systemd$ # 排除名称为 systemd 的进程 - LOG_LEVEL=info # 日志级别(debug/info/warn/error)
启动命令:docker-compose up -d
Exporter 支持通过环境变量配置行为,参数说明如下:
| 环境变量 | 描述 | 默认值 | 示例值 |
|---|---|---|---|
PROCFS_PATH | /proc 文件系统路径(需指向宿主机 /proc) | /proc | /host/proc |
LISTEN_PORT | Exporter 监听端口 | 9100 | 9200 |
SCRAPE_INTERVAL | 指标采集间隔(支持 s/ms 单位) | 5s | 10s(10秒) |
INCLUDE_PROCESSES | 进程名称包含规则(正则表达式) | .*(全部) | `^nginx |
EXCLUDE_PROCESSES | 进程名称排除规则(正则表达式) | 空(不排除) | `^systemd |
LOG_LEVEL | 日志输出级别 | info | debug(调试模式) |
Exporter 暴露的核心指标示例如下(完整指标列表可通过 http://<ip>:<port>/metrics 查看):
| 指标名称 | 类型 | 描述 | 标签 |
|---|---|---|---|
process_cpu_usage_seconds_total | Counter | 进程累计 CPU 使用秒数 | pid、comm |
process_memory_rss_bytes | Gauge | 进程 RSS 内存占用(字节) | pid、comm、state |
process_io_read_bytes_total | Counter | 进程累计读取字节数 | pid、comm |
process_io_write_bytes_total | Counter | 进程累计写入字节数 | pid、comm |
process_up | Gauge | 进程状态(1=运行中,0=已终止) | pid、comm |
/proc(只读),无需额外 Linux capabilities;SCRAPE_INTERVAL < 1s)可能增加主机 I/O 开销,建议根据需求调整;INCLUDE_PROCESSES/EXCLUDE_PROCESSES 正则表达式过滤进程,减少指标 cardinality;/proc 文件系统)。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务