第 16 章 启用 Prometheus 指标
Prometheus 是一个开源系统和服务监控和警报工具包,可用于监控独立 Apache Karaf 容器中部署的服务。Prometheus 以给定间隔收集并存储来自配置的服务的指标,评估规则表达式,显示结果,并在指定条件变为 true 时触发警报。
红帽对 Prometheus 的支持仅限于红帽产品文档中提供的设置和配置建议。
Prometheus 使用在客户端上安装和配置的"exporters"来向 Prometheus 格式公开端点。此端点是一个 HTTP 接口,它提供指标列表和指标的当前值。Prometheus 定期提取每个目标定义端点,并将收集的数据写入其数据库。Prometheus 在延长时间内收集数据,而不仅仅是针对当前运行的会话。Prometheus 存储数据,以便您可以以图形方式视觉化并在数据上运行查询。
16.1. 启用从独立 Apache Karaf 容器导出指标
Prometheus 使用配置文件 https://raw.githubusercontent.com/jboss-fuse/application-templates/master/prometheus/prometheus-config.yml
,其中包含 Camel 公开的指标。
您可以识别的指标仅限于 JMX 中提供的指标。
您必须部署 Fuse 应用程序才能生成 Apache Camel 指标。
步骤
使用命令行从独立 Apache Karaf 容器启用 Prometheus 指标导出:
-
打开命令提示符,并确保您位于 Apache Karaf 安装的
etc/
目录中。 键入以下命令,从
etc/
目录中的示例文件创建 Prometheus 配置文件:cp prometheus-config.yml-example prometheus-config.yml
-
只有在使用
fuse
或fuse.bat
命令启动 Fuse 时,导出器才可用:在 Linux/Unix 或bin\fuse.bat
上运行bin/fuse
。 -
当 Fuse 重启时,您可以通过打开 Web 浏览器来查看公开的指标
:http://localhost:9779
(可选)您可以从命令行更改 KARAF_PROMETHEUS_PORT
和 KARAF_PROMETHEUS_CONFIG
配置变量的默认值。