以下将为您介绍如何通过 Exporter 导出 veImageX 服务的监控指标至 Prometheus 进行监控。
登录 veImageX 控制台,点击用户名并在下拉功能框点击 API 访问密钥,并获取对应的 AccessKey ID、AccessKey Secret,简称 AK、SK。
在使用 Exporter 之前,请您获取 YAML 文件并进行配置,该文件已包含了 veImageX 可导出监控指标以及必要的认证配置信息。
请您在 volc-exporter.yml
文件中,配置准备操作获取的 AccessKey ID
、AccessKey Secret
和您需要拉取的 veImageX 监控指标,具体示例如下所示:
说明
volc-exporter.yml
文件已包含了 veImageX 服务端全部监控指标配置,您可以根据实际业务需要筛选拉取指标。该指标具体说明请参考指标和自监控。
credential: access_key_id: <YOUR_ACCESS_KEY> # 必填,您的 AK access_key_secret: <YOUR_SECRET_KEY> # 必填,您的 SK region_id: <YOUR_REGION_ID> # 区域,默认值为 cn-north-1,表示中国 metrics: imagex: # 必填,项目名称 - name: edge_traffic period: 60 - name: edge_bandwidth period: 60
在上面的示例中,Exporter 将使用 AK/SK 进行网关认证。此外还配置了 veImageX 的 edge_traffic
、 edge_bandwidth
指标,分别表示边缘流量和边缘带宽,其查询时间粒度为 60s 。
veImageX 已提供了 Docker 镜像,使您可以方便地部署和运行该 Exporter。您可以使用以下命令从 Docker Hub 拉取镜像:
注意
volc-exporter.yml
配置文件和运行程序在容器里的同一个目录。请您在 volc-exporter.yml
所在目录下执行该命令运行 Exporter。
docker run -p 2112:2112 -v $(pwd)/volc-exporter.yml:/opt/app/volc-exporter.yml livingsu/volc-exporter:0.0.0
在上面的命令中,配置文件已挂载到了容器中的 opt/app/volc-exporter.yml
路径下,这样 Exporter 就可以读取配置文件了。此外已将容器的 2112 端口映射到了宿主机的 2112 端口。
注意
请您访问 localhost:2112/metrics
查看指标是否抓取成功。
请您访问 localhost:2112/metrics
后,您可在 Prometheus 中查看监控指标 volc_{project}_{metric}
的状态。
project
表示项目,例如imagex
metric
表示指标,例如edge_traffic
当拉取失败或无数据时,则 volc_{project}_{metric}
(例如 volc_imagex_edge_traffic
)不存在。
每一个 volc_{project}_{metric}
对应两个自监控指标:
volc_{project}_{metric}_up
表示指标是否拉取成功,取值如下所示:
1
:拉取成功0
:拉取失败volc_{project}_{metric}_latency_seconds
表示指标拉取延时,单位为秒。说明
预计延迟时间仅供参考,实际时长请以您的页面返回时长为准。
控制台页面 | 指标 | 指标名称 | Dimensions | 单位 | Min Periods | 预计延迟时间 |
---|---|---|---|---|---|---|
用量统计 - 请求次数 | 访问 veImageX 请求次数 | request_cnt | ServiceId | count | 300s | 20min |
用量统计 - 基础图像处理量 | 基础图像处理量 | base_op | ServiceId | bytes | 300s | 20min |
用量统计 - 高效压缩 | 高效压缩量 | compress | ServiceId | bytes | 300s | 20min |
数据监控 - 边缘分发流量带宽 | 边缘分发流量 | edge_traffic | DomainName | bytes | 60s | 10min |
数据监控 - 边缘分发流量带宽 | 边缘分发带宽 | edge_bandwidth | DomainName | bits/s | 60s | 10min |
数据监控 - 边缘分发数据 | 边缘访问总请求次数 | edge_request_cnt_total | DomainName | count | 60s | 10min |
边缘状态码 2xx 次数 | edge_request_cnt_code_2xx | DomainName | count | 60s | 10min | |
边缘状态码 3xx 次数 | edge_request_cnt_code_3xx | DomainName | count | 60s | 10min | |
边缘状态码 4xx 次数 | edge_request_cnt_code_4xx | DomainName | count | 60s | 10min | |
边缘状态码 5xx 次数 | edge_request_cnt_code_5xx | DomainName | count | 60s | 10min | |
边缘状态码 2xx 占比 | edge_request_cnt_ratio_code_2xx | DomainName | % | 60s | 10min | |
边缘状态码 3xx 占比 | edge_request_cnt_ratio_code_3xx | DomainName | % | 60s | 10min | |
边缘状态码 4xx 占比 | edge_request_cnt_ratio_code_4xx | DomainName | % | 60s | 10min | |
边缘状态码 5xx 占比 | edge_request_cnt_ratio_code_5xx | DomainName | % | 60s | 10min | |
边缘状态码 200 次数 | edge_request_cnt_code_200 | DomainName | count | 60s | 10min | |
边缘状态码 206 次数 | edge_request_cnt_code_206 | DomainName | count | 60s | 10min | |
边缘状态码 304 次数 | edge_request_cnt_code_304 | DomainName | count | 60s | 10min | |
边缘状态码 400 次数 | edge_request_cnt_code_400 | DomainName | count | 60s | 10min | |
边缘状态码 403 次数 | edge_request_cnt_code_403 | DomainName | count | 60s | 10min | |
边缘状态码 404 次数 | edge_request_cnt_code_404 | DomainName | count | 60s | 10min | |
边缘状态码 499 次数 | edge_request_cnt_code_499 | DomainName | count | 60s | 10min | |
边缘状态码 200 占比 | edge_request_cnt_ratio_code_200 | DomainName | % | 60s | 10min | |
边缘状态码 206 占比 | edge_request_cnt_ratio_code_206 | DomainName | % | 60s | 10min | |
边缘状态码 304 占比 | edge_request_cnt_ratio_code_304 | DomainName | % | 60s | 10min | |
边缘状态码 400 占比 | edge_request_cnt_ratio_code_400 | DomainName | % | 60s | 10min | |
边缘状态码 403 占比 | edge_request_cnt_ratio_code_403 | DomainName | % | 60s | 10min | |
边缘状态码 404 占比 | edge_request_cnt_ratio_code_404 | DomainName | % | 60s | 10min | |
边缘状态码 499 占比 | edge_request_cnt_ratio_code_499 | DomainName | % | 60s | 10min | |
数据监控 - 镜像回源流量带宽 | 回源流量 | mirror_traffic | ServiceId,DomainName | bytes | 300s | 20min |
数据监控 - 镜像回源流量带宽 | 回源带宽峰值 | mirror_bandwidth | ServiceId,DomainName | bits/s | 300s | 20min |
数据监控 - 镜像回源请求次 | 回源总请求次数 | mirror_request_cnt_total | ServiceId,DomainName | count | 300s | 20min |
回源状态码 2xx 次数 | mirror_request_cnt_code_2xx | ServiceId,DomainName | count | 300s | 20min | |
回源状态码 3xx 次数 | mirror_request_cnt_code_3xx | ServiceId,DomainName | count | 300s | 20min | |
回源状态码 4xx 次数 | mirror_request_cnt_code_4xx | ServiceId,DomainName | count | 300s | 20min | |
回源状态码 5xx 次数 | mirror_request_cnt_code_5xx | ServiceId,DomainName | count | 300s | 20min | |
回源状态码 2xx 占比 | mirror_request_cnt_ratio_code_2xx | ServiceId,DomainName | % | 300s | 20min | |
回源状态码 3xx 占比 | mirror_request_cnt_ratio_code_3xx | ServiceId,DomainName | % | 300s | 20min | |
回源状态码 4xx 占比 | mirror_request_cnt_ratio_code_4xx | ServiceId,DomainName | % | 300s | 20min | |
回源状态码 5xx 占比 | mirror_request_cnt_ratio_code_5xx | ServiceId,DomainName | % | 300s | 20min | |
回源状态码 200 次数 | mirror_request_cnt_code_200 | ServiceId,DomainName | count | 300s | 20min | |
回源状态码 200 占比 | mirror_request_cnt_ratio_code_200 | ServiceId,DomainName | % | 300s | 20min | |
命中率 - 流量命中率 | 流量命中率 | cdn_hit_rate_traffic | DomainName | % | 60s | 10min |
命中率 - 请求命中率 | 请求命中率 | cdn_hit_rate_request | DomainName | % | 60s | 10min |
请点击 Prometheus 官网 下载并安装最新版本,您可以根据实际的操作系统和业务需求,选择合适的版本并按照 Prometheus 官方文档进行安装。
安装完成后,您需要编辑 Prometheus 的 prometheus.yml
配置文件,以便 Prometheus 获取 Exporter 提供的指标信息。在 prometheus.yml
文件中添加以下内容:
scrape_configs: - job_name: 'volc-exporter' static_configs: - targets: ['localhost:2112']
在上面的配置中,定义了一个名为 volc-exporter
的任务,并让 Prometheus 从 localhost:2112
地址读取指标数据。
在完成配置后,您可以启动 Prometheus 并开始监控您的应用程序或服务。在您的使用终端中,请进入 Prometheus 的安装目录,并运行以下命令启动 Prometheus 并使用您的 prometheus.yml
配置文件:
./prometheus --config.file=prometheus.yml
启动 Prometheus 后,您可以通过在浏览器中访问 http://localhost:9090
来访问 Prometheus 的 UI 界面。在这里,您可以查看指标数据、定义报警规则等。