admin · 1月4日 · 2022年
一、配置文件prometheus.yml解析
#全局配置(如果有内部单独设定,会覆盖这个参数)
global:
#默认15s 全局每次数据收集的间隔
scrape_interval: 15s
# 规则扫描时间间隔是15秒,默认不填写是 1分钟
evaluation_interval: 15s
#默认10s 超时时间
scrape_timeout: 10s
#告警规则。 按照设定参数进行扫描加载,用于自定义报警规则,其报警媒介和route路由由alertmanager插件实现
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# 告警插件,这里会设定alertmanager这个报警插件
alerting:
alertmanagers:
- static_configs:
- targets:
#alertmanager组件的ip
# - alertmanager:9093
#采集配置。配置数据源,包含分组job_name以及具体target。又分为静态配置和服务发现
scrape_configs:
- job_name: 'prometheus'
#这里会覆盖global设定的值
scrape_interval: 10s
#默认为/metrics
metrics_path: /metrics
#静态规则
static_configs:
#文件发现
file_sd_configs:
- files:
- /software/prometheus/cx-node.yml
#target格式,labels下可定义多个标签,yml文件同理
- targets: [ '10.0.0.229:8081' ]
labels:
instance: 10.0.0.229
service: nginx
service_name: 网页服务
service_type: 1
service_port: 8081
relabel_configs:
#将源标签为__address__的 【标签】 替换为 __param_target标签,value不变
- source_labels: [__address__]
target_label: __param_target
#将目的标签为__address__的 【值】 替换为 10.0.0.230:9115,key不变
- target_label: __address__
replacement: 10.0.0.230:9115
--------------------------------------------------------------------------------
source_labels指定需要处理的源标签
target_labels指定要replace后的标签名字
action指定relabel动作,这里使用replace替换动作
regex去匹配源标签(__hostname__)的值,"(.*)"代表__hostname__这个标签是什么值都匹配的
replacement指定的替换后的标签(target_label)对应的数值
系统使用的标签
__address__: 当前Target实例的访问地址[host]:[port]
__scheme__: 采集目标服务访问地址的HTTP Scheme,HTTP或者HTTPS
__metrics_path__: 采集目标服务访问地址的访问路径
__param_: 采集任务目标服务的中包含的请求参数
__name__: 此标签是标识指标名称的预留标签
__param_<name> 标签的值,是传给URL的查询参数<name>的值;
action:
replace: 对标签和标签值进行替换。
keep: 满足特定条件的实例进行采集,其他的不采集。
drop: 满足特定条件的实例不采集,其他的采集。
hashmod: 将 target_label 设置为关联的 source_label 的哈希模块。
labelmap: 根据 regex 去匹配 Target 实例所有标签的名称(注意是名称),并且将捕获到的内容作为为新的标签名称,regex 匹配到标签的的值作为新标签的值。
labeldrop:对抓取的实例特定标签进行删除。
labelkeep:对抓取的实例特定标签进行保留,其他标签删除。
--------------------------------------------------------------------------------
# Settings related to the remote write feature.
remote_write:
[ - <remote_write> ... ]
# Settings related to the remote read feature.
remote_read:
[ - <remote_read> ... ]