本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

!架构概览
该导出器采用Go语言编写,基于Solace Legacy SEMP协议,通过SEMP v1抓取指标并提供Prometheus友好的HTTP端点。
视频介绍可在***观看:Integrating Prometheus and Grafana with Solace PubSub+ | Solace Community Lightning Talk
实现了以下端点:
http://<host>:<port>/ 文档页面,显示端点列表 http://<host>:<port>/metrics Golang和标准Prometheus指标 http://<host>:<port>/solace-std 传统端点(需配置):系统和***级别的Solace指标 http://<host>:<port>/solace-det 传统端点(需配置):消息客户端和队列的Solace指标 http://<host>:<port>/solace-broker-std 传统端点(需配置):仅Broker的标准指标(系统级) http://<host>:<port>/solace-***-std 传统端点(需配置):仅***的标准指标(***级),非全局管理员可访问 http://<host>:<port>/solace-***-stats 传统端点(需配置):仅***的统计指标(***级),非全局管理员可访问 http://<host>:<port>/solace-***-det 传统端点(需配置):仅***的详细指标(***级),非全局管理员可访问 http://<host>:<port>/solace 模块化端点
通过HTTP GET参数配置所需数据。
键始终以m.为前缀,后跟抓取目标。
值包含两部分,用竖线|分隔:
并非所有抓取目标都支持两种过滤器,详见抓取目标。两种过滤器均支持多个星号*作为任意字符通配符。
每个抓取目标可多次使用,以实现"或"条件过滤。
获取与传统solace-det端点相同的结果:
[***]|*&m.***Stats=*|*&m.BridgeStats=*|*&m.QueueRates=*|*&m.QueueDetails=*|*
仅从*** my***获取传统solace-det端点的结果:
[***]|*&m.***Stats=my***|*&m.BridgeStats=my***|*&m.QueueRates=my***|*&m.QueueDetails=my***|*
获取名称以BRAVO或ARBON开头且属于名称含my的***的所有队列信息:
[***]|ARBON*&m.QueueStats=*my*|BRAVO*&m.QueueDetails=*my*|ARBON*&m.QueueDetails=*my*|BRAVO*
从特定broker获取传统solace-det端点的结果:
[***]|*&m.***Stats=*|*&m.BridgeStats=*|*&m.QueueRates=*|*&m.QueueDetails=*|*&scrapeURI=[***]
| 抓取目标 | 支持***过滤器 | 支持项目过滤器 | 性能影响 | 对应CLI命令 | 支持类型 |
|---|---|---|---|---|---|
| Version | 否 | 否 | 不影响broker | show version | 软件、设备 |
| Health | 否 | 否 | 不影响broker | show system health | 软件 |
| Spool | 否 | 否 | 不影响broker | show message-spool | 软件、设备 |
| Redundancy(仅HA broker) | 否 | 否 | 不影响broker | show redundancy | 软件、设备 |
| ConfigSyncRouter(仅HA broker) | 否 | 否 | 不影响broker | show config-sync database router | 软件、设备 |
| *** | 是 | 否 | 不影响broker | show message-*** ***Filter | 软件、设备 |
| ***Replication | 是 | 否 | 不影响broker | show message-*** ***Filter replication | 软件、设备 |
| ConfigSync***(仅HA broker) | 是 | 否 | 不影响broker | show config-sync database message-*** ***Filter | 软件、设备 |
| Bridge | 是 | 是 | 不影响broker | show bridge itemFilter message-*** ***Filter | 软件、设备 |
| ***Spool | 是 | 否 | 不影响broker | show message-spool message-*** ***Filter | 软件、设备 |
| ClientStats | 是 | 否 | 客户端数量多时可能影响broker | show client itemFilter stats count 100 (分页) | 软件、设备 |
| ***Stats | 是 | 否 | 性能影响极小 | show message-*** ***Filter stats | 软件、设备 |
| BridgeStats | 是 | 是 | 性能影响极小 | show bridge itemFilter message-*** ***Filter stats | 软件、设备 |
| QueueRates | 是 | 是 | 已弃用:队列数量多时可能影响broker | show queue itemFilter message-*** ***Filter rates count 100 (分页) | 软件、设备 |
| QueueStats | 是 | 是 | 队列数量多时可能影响broker | show queue itemFilter message-*** ***Filter rates count 100 (分页) | 软件、设备 |
| QueueDetails | 是 | 是 | 队列数量多时可能影响broker | show queue itemFilter message-*** ***Filter detail count 100 (分页) | 软件、设备 |
若需缩短端点URL,可通过ini文件配置端点:
[endpoint.solace-det] ClientStats=*|* ***Stats=*|* BridgeStats=*|* QueueRates=*|* QueueDetails=*|*
这将创建新端点:[***],与[***]|*&m.***Stats=*|*&m.BridgeStats=*|*&m.QueueRates=*|*&m.QueueDetails=*|*效果相同。
Solace的注册默认端口为9628。
solace_prometheus_exporter -h usage: solace_prometheus_exporter [<flags>] Flags: -h, --help 显示上下文相关帮助(也可尝试--help-long和--help-man)。 --log.level=info 仅记录指定级别及以上的日志。选项:[debug, info, warn, error] --log.format=logfmt 日志输出格式。选项:[logfmt, json] --config-file=CONFIG-FILE 配置文件的路径和名称。详见示例文件solace_prometheus_exporter.ini。
配置参数可通过配置文件、环境变量或URL指定。使用Docker时,建议优先使用环境变量(见下文)。若通过配置文件启动,配置文件参数优先级高于环境变量。若参数未在URL、配置文件或环境变量中找到,导出器将退出并报错。
solace_prometheus_exporter --config-file /path/to/config/file.ini
示例配置文件:
[solace] # Web界面和遥测的监听地址。 listenAddr=0.0.0.0:9628 # 抓取Solace broker的基础URI。 scrapeUri=[***] # 注意:可通过浏览器访问该URI,应显示broker登录页面,可在此测试下方的用户名和密码。 # 用于向Solace broker发送HTTP抓取请求的基本认证用户名。 username=admin # 用于向Solace broker发送HTTP抓取请求的基本认证密码。 password=admin # 向Solace broker发送HTTP抓取请求的超时时间。 timeout=5s # 启用抓取URI的SSL证书验证的标志。 sslVerify=false
示例环境变量:
SOLACE_LISTEN_ADDR=0.0.0.0:9628 SOLACE_SCRAPE_URI=[***] SOLACE_USERNAME=admin SOLACE_PASSWORD=admin SOLACE_TIMEOUT=5s SOLACE_SSL_VERIFY=false
可调用:
[***]|*&m.***Stats=*|*&scrapeURI=https%3A%2F%2Fyour-broker%3A943&username=monitoring&password=monitoring&timeout=10s
该服务通过SEMP v1抓取指标并提供Prometheus友好的HTTP端点,支持通过URL覆盖ini配置文件/环境变量中的以下参数:
这允许单个导出器监控所有本地broker。
安全注意事项:使用此功能时必须启用HTTPS。
- job_name: 'solace-std' scrape_interval: 15s metrics_path: /solace-std static_configs: - targets: - [***] - [***] - [***] relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: solace-exporter:9628
cd <some-directory>/solace-prometheus-exporter go build
仓库中包含构建Dockerfile,用于自动构建并推送最新镜像至Dockerhub仓库solacecommunity/solace-prometheus-exporter。
建议通过环境变量参数化Docker中的导出器。在本地主机创建环境变量文件(如env.txt),内容如下:
SOLACE_LISTEN_ADDR=0.0.0.0:9628 SOLACE_SCRAPE_URI=[***] SOLACE_USERNAME=admin SOLACE_PASSWORD=admin SOLACE_TIMEOUT=5s SOLACE_SSL_VERIFY=false
然后运行:
docker run -d \ -p 9628:9628 \ --env-file env.txt \ --name solace-exporter \ solacecommunity/solace-prometheus-exporter
testfiles子目录包含一些curl命令示例及其输出,仅供参考,无需用于构建。
请确保仅在安全网络中运行此应用或通过代理保护。它可能会泄露不希望公开的应用信息。若使用通过HTTP请求体/头传递broker凭据的功能,必须在Kubernetes/OpenShift等环境中运行以添加HTTPS层。
更多信息请参考以下资源:
请阅读CONTRIBUTING.md了解我们的行为准则和提交拉取请求的流程。
详见参与此项目的贡献者列表。
详见LICENSE文件。===SHORT_DESC=== solace-prometheus-exporter是基于Solace Legacy SEMP协议的Prometheus导出器,用Go编写,通过HTTP端点提供Solace消息broker的系统、***、客户端和队列等指标,支持模块化配置和多种过滤方式,便于Prometheus监控。 ===FULL_DESC===# solace-prometheus-exporter:Solace消息Broker的Prometheus导出器
!架构概览
该导出器采用Go语言编写,基于Solace Legacy SEMP协议,通过SEMP v1抓取指标并提供Prometheus友好的HTTP端点。
视频介绍可在***观看:Integrating Prometheus and Grafana with Solace PubSub+ | Solace Community Lightning Talk
实现了以下端点:
http://<host>:<port>/ 文档页面,显示端点列表 http://<host>:<port>/metrics Golang和标准Prometheus指标 http://<host>:<port>/solace-std 传统端点(需配置):系统和***级别的Solace指标 http://<host>:<port>/solace-det 传统端点(需配置):消息客户端和队列的Solace指标 http://<host>:<port>/solace-broker-std 传统端点(需配置):仅Broker的标准指标(系统级) http://<host>:<port>/solace-***-std 传统端点(需配置):仅***的标准指标(***级),非全局管理员可访问 http://<host>:<port>/solace-***-stats 传统端点(需配置):仅***的统计指标(***级),非全局管理员可访问 http://<host>:<port>/solace-***-det 传统端点(需配置):仅***的详细指标(***级),非全局管理员可访问 http://<host>:<port>/solace 模块化端点
通过HTTP GET参数配置所需数据。
键始终以m.为前缀,后跟抓取目标。
值包含两部分,用竖线|分隔:
并非所有抓取目标都支持两种过滤器,详见抓取目标。两种过滤器均支持多个星号*作为任意字符通配符。
每个抓取目标可多次使用,以实现"或"条件过滤。
获取与传统solace-det端点相同的结果:
[***]|*&m.***Stats=*|*&m.BridgeStats=*|*&m.QueueRates=*|*&m.QueueDetails=*|*
仅从*** my***获取传统solace-det端点的结果:
[***]|*&m.***Stats=my***|*&m.BridgeStats=my***|*&m.QueueRates=my***|*&m.QueueDetails=my***|*
从特定broker获取传统solace-det端点的结果:
[***]|*&m.***Stats=*|*&m.BridgeStats=*|*&m.QueueRates=*|*&m.QueueDetails=*|*&scrapeURI=[***]
| 抓取目标 | 支持***过滤器 | 支持项目过滤器 | 性能影响 | 对应CLI命令 | 支持类型 |
|---|---|---|---|---|---|
| Version | 否 | 否 | 不影响broker | show version | 软件、设备 |
| Health | 否 | 否 | 不影响broker | show system health | 软件 |
| Spool | 否 | 否 | 不影响broker | show message-spool | 软件、设备 |
| Redundancy(仅HA broker) | 否 | 否 | 不影响broker | show redundancy | 软件、设备 |
| ConfigSyncRouter(仅HA broker) | 否 | 否 | 不影响broker | show config-sync database router | 软件、设备 |
| *** | 是 |
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429