prometheus - Prometheus 未从 file_sd_configs 读取黑盒目标
问题描述
我正在配置 blackbox 来监控我的网站。Prometheus 静态配置目标正在工作,但也有点混乱。我想把我所有的目标都归档,但它根本不起作用。
码头工人撰写:
version: '2.1'
volumes:
prometheus_data: {}
services:
prometheus:
mem_limit: 1000m
image: prom/prometheus
container_name: prometheus
volumes:
- ./prometheus/:/etc/prometheus/
- prometheus_data:/prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.retention.time=200h'
links:
- 'blackbox:blackbox'
expose:
- 9090
labels:
container_group: monitoring
blackbox:
image: prom/blackbox-exporter
container_name: blackbox
expose:
- 9115
volumes:
- ./blackbox/:/etc/blackbox/
command: --config.file=/etc/blackbox/blackbox.yml
labels:
container_group: monitoring
普罗米修斯.yml
scrape_configs:
- job_name: 'blackbox'
metrics_path: /probe
params:
module: [http_2xx]
file_sd_configs:
- files: ['/blackbox/blackbox_targets.yml']
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- target_label: __address__
replacement: blackbox:9115
blackbox_targets.yml
- targets: ['http://google.com']
labels:
group: 'localhost'
instance: 'localhost'
没有 blackbox_targets.yml 可以看到 prometheus batleter 中的目标丢失。
解决方案
在您的prometheus.yml
配置文件中,文件位置/blackbox/blackbox_targets.yml
无效。根据文件实际位于主机计算机上的位置,您需要确保 a)它已映射到容器中,并且 b)您在配置文件中使用了正确的路径。
例如,如果文件位于./prometheus/
主机上的文件夹中,则路径应该是/etc/prometheus/blackbox_targets.yml
。
推荐阅读
- ios - 无法将 Flurry 添加到我的 Swift 项目中
- php - 在 Woocommerce 单品标题后添加特定产品属性
- windows - Powershell Jobs - 在另一个并行作业中监控正在运行的作业
- ruby-on-rails - Rails 应用程序中的回滚事务错误
- visual-studio-2017 - 在项目创建或连接服务中添加身份验证
- mongodb - 更改 ECS Instance 上 mongodb 的默认端口
- r - 创建一个将其参数传递给 Surv 函数(或任何其他函数)的函数
- python - 如何在列表中插入条件语句?
- java - Spring Integration:文件读取拆分和消息过滤
- php - 类范围内可访问的静态数组,试图推送到它,但总是返回空