6. 配置项:relabel_config
- 6.1relabel_config的位置
- 6.2 relabel_config参数详解
- 1.replace
- 2. keep
- 3.drop
- 6.labelkeep
- 7.hashmod
- 6.3 正则表达式
重新标记是一种强大的工具,可以在抓取目标之前动态重写目标的标签集。 每个抓取配置可以配置多个重新标记步骤。 按照它们在配置文件中的出现顺序应用于每个目标的标签集。
6.1relabel_config的位置
1 global:
2 ....
3 # 抓取配置列表.
4 scrape_configs:
5 [ - <scrape_config> ... ]....
1 # The job name assigned to scraped metrics by default.
2 job_name: <job_name>
3
4 [ honor_labels: <boolean> | default = false ]
5
6 [ honor_timestamps: <boolean> | default = true ]
7
8 # List of target relabel configurations.
9 relabel_configs:
10 [ - <relabel_config> ... ]
11
12 # List of metric relabel configurations.
13 metric_relabel_configs:
14 [ - <relabel_config> ... ]
15 ......
6.2 relabel_config参数详解
1 # 源标签从现有标签中选择值。 它们的内容使用已配置的分隔符进行连接,并与已配置的正则表达式进行匹配,以进行替换,保留和删除操作。
2 [ source_labels: '[' <labelname> [, ...] ']' ]
3
4 # 分隔符放置在连接的源标签值之间。
5 [ separator: <string> | default = ; ]
6
7 # 在替换操作中将结果值写入的标签。
8 # 替换操作是强制性的。 正则表达式捕获组可用。
9 [ target_label: <labelname> ]
10
11 # 与提取的值匹配的正则表达式。
12 [ regex: <regex> | default = (.*) ]
13
14 # 采用源标签值的散列的模数。
15 [ modulus: <uint64> ]
16
17 # 如果正则表达式匹配,则执行正则表达式替换的替换值。 正则表达式捕获组可用。
18 [ replacement: <string> | default = $1 ]
19
20 # 基于正则表达式匹配执行的操作。
21 [ action: <relabel_action> | default = replace ]
<regex>是任何有效的RE2正则表达式。 它是replace,keep,drop,labelmap,labeldrop和labelkeep操作所必需的。 正则表达式固定在两端。 要取消锚定正则表达式,请使用。* <regex>.*。
<relabel_action>确定要采取的重新签名行动:
1.replace
将regex与连接的source_labels匹配。 然后,将target_label设置为replacement,将匹配组引用(${1},${2},...)替换为其值。 如果正则表达式不匹配,则不进行替换。
1 scrape_configs:
2 - job_name: file
3 file_sd_configs:
4 - files:
5 - '*.json'
6 #例如:team="monitoring"-->team_new="monitor"
7 relabel_configs:
8 -source_labels: [team]
9 regex: monitoring
10 replacement: monitor
11 target_label: team_new
12 action: replace
13 #action的默认值是replace
14 - source_labels: [__meta_consul_address]
15 regex: '(.*)'
16 replacement: '${1}:9100'
17 target_label: __address__
18 #参看上面看看这个什么意思
19 - source_labels: [__meta_consul_tag]
20 regex: '.*,(prod|staging|dev),.*'
21 target_label: env
2. keep
删除regex与连接的source_labels不匹配的目标。
regex与连接的source_labels不匹配的目标。1 scrape_configs:
2 - job_name: node
3 consul_sd_configs:
4 - server: 'localhost:8500'
5 relabel_configs:
6 - source_labels: [__meta_consul_tag]
7 regex: '.*,prod,.*'
8 action: keep
3.drop
删除regex与连接的source_labels匹配的目标。
1 scrape_configs:
2 - job_name: node
3 consul_sd_configs:
4 - server: 'localhost:8500'
5 relabel_configs:
6 - source_labels: [__meta_consul_tag]
7 regex: '.*,prod,.*'
8 action: drop
4.labelmap
将regex与所有标签名称匹配。 然后将匹配标签的名称替换为replacement指定的值。(不同于replace,keep,drop,只改变label名,不修改标签值)
1 scrape_configs:
2 - job_name: ec2
3 ec2_sd_configs:
4 - region: <region>
5 access_key: <access key>
6 secret_key: <secret key>
7 #将所有以monitor_开头的标签名替换为去掉monitor_前缀的新标签名字(例如:monitor_foo="bar"-->foo="bar")
8 relabel_configs:
9 - regex: monitor_(.*)
10 replacement: '${1}'
11 action: labelmap
5.labeldrop
将regex与所有标签名称匹配。匹配的任何标签都将从标签集中删除。(理labelmap)5.labeldrop
6.labelkeep
将regex与所有标签名称匹配。任何不匹配的标签都将从标签集中删除。(同理labelmap)
7.hashmod
将target_label设置为连接的source_labels的哈希模数。
1 scrape_configs:
2 - job_name: my_job
3 # Service discovery etc. goes here.
4 relabel_configs:
5 #prometheus从特定targets随机抓取数据量的10%
6 - source_labels: [__address__]
7 modulus: 10
8 target_label: __tmp_hash
9 action: hashmod
10 - source_labels: [__tmp_hash]
11 regex: 0 #指定抓取的目标
12 action: keep
必须小心使用labeldrop和labelkeep,以确保在删除标签后仍然对指标进行唯一标记。
6.3 正则表达式

6. 配置项:relabel_config的更多相关文章
- SpringMVC配置项学习笔记
1. <mvc:annotation-driven /> <mvc:annotation-driven />是一种简写形式,默认会注册DefaultAnnotationHand ...
- JSHint配置项说明
转自:http://www.jianshu.com/p/4cb23f9e19d3 什么是JSHint? 官方网站这样介绍: JSHint, A Static Code Analysis Tool fo ...
- validate插件深入学习-03validate()方法配置项
validate()方法配置项 rules 定义校验规则 messages 定义提示信息 上面这两个已经介绍过了 rules里隐藏的属性depends,只有符合条件(返回true)的时候才会执行 su ...
- 配置项setOption -- title
标题组件,包含主标题和副标题.在 ECharts 3 中可以存在任意多个标题组件,这在需要标题进行排版,或者单个实例中的多个图表都需要标题时会比较有用. title.show boolean [ de ...
- Ext JS 4 新特性2:配置项属性(config)之二
Ext JS 4 新特征2:配置项属性config之二 ☞ Config(自动的setters和getters) Ext JS 4介绍了config声明方式,在Ext JS 中也有几个例子:在运行程序 ...
- Ext JS 4 新特性2:配置项属性(config)之一
Ext JS 4 新特征2:配置项属性config 最新版本的Ext JS 4.2的另外一个伟大的新特征就是增加了configuration配置项属性,当我们在创建一个新类的时候,经常性的要设置某某属 ...
- Redis应用配置项说明
近期整理了下项目中Redis配置参数,以便学习备用~ #指定内存大小,格式为1k 1GB 1M,单位不区分大小写 # 1k => 1000 bytes # 1kb => 1024 byt ...
- Mysql配置项的简单优化
preface 众所周知,Mysql已经成为广泛使用的开源数据库了,so 公司阿里云的数据库为Mysql,在最开始的时候是直接yum安装,配置项都是默认的,没有任何调整,这次有时间就参考各路大神的资料 ...
- 【转】VS项目属性的一些配置项的总结
首先,解决方案和项目文件夹包含关系(c++项目): VS解决方案和各个项目文件夹以及解决方案和各个项目对应的配置文件包含关系,假设新建一个项目ssyy,解决方案起名fangan,注意解决方案包括项目, ...
- 【转】Hive配置文件中配置项的含义详解(收藏版)
http://www.aboutyun.com/thread-7548-1-1.html 这里面列出了hive几乎所有的配置项,下面问题只是说出了几种配置项目的作用.更多内容,可以查看内容问题导读:1 ...
随机推荐
- 【2016】CloneCD和IsoBuster配合使用以提取VCD中的文件
**笔记记录于:2016-11-24 ** 本文章仅供用于技术研究用途,请勿利用文章内容操作用于违反法律的事情. 起因: 公司老总让我提取下VCD中的文件以备份下,但是把光碟放进DVD光驱中发现只有几 ...
- 华企盾DSC苹果电脑右键菜单不显示问题
1.检查认证的用户是否给了对应的权限(如:手动加密.手动解密.申请解密) 2.系统偏好设置--键盘--快捷键中开通的权限是否有勾选 3.系统服务中允许的菜单数超出了最大值
- nginx-通过配置不同的虚拟主机实现,不同的uri访问不同资源
先来一个配置 再来另外一个 这两个地址对应的域名都配置解析了,并且解析的ipv4地址是你的服务器ip,且上面配置文件中的内容都在服务器做了相应的配置,对应的路径下的资源是需要准备好的(比如网站或图片或 ...
- STM32CubeMX教程2 GPIO输出 - 点亮LED灯
1.准备材料 开发板(STM32F407G-DISC1) ST-LINK/V2驱动 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK-Arm) 2 ...
- SpringBoot 接口:响应时间优化9个技巧!
今天聊聊 SpringBoot接口:响应时间优化的9个技巧.在实际开发中,提升接口响应速度是一件挺重要的事,特别是在面临大量用户请求的时候.好了,咱们直接切入正题. 本文,已收录于,我的技术网站 dd ...
- docker: 'buildx' is not a docker command
解决方法 sudo apt install docker-buildx-plugin
- Programming Abstractions in C阅读笔记:p246-p247
<Programming Abstractions in C>学习第68天,p246-p247总结,总计2页. 一.技术总结 本章通过"the game of nim(尼姆游戏) ...
- Kubernetes的拐点助推器:左手开源,右手边缘计算
摘要:KubeEdge 是首个基于 Kubernetes 扩展的,提供云边协同能力的开放式智能边缘计算平台,也是 CNCF 在智能边缘领域的首个正式项目.依托 Kubernetes 强大的容器编排和调 ...
- SARIF:DevSecOps工具与平台交互的桥梁
摘要:静态扫描工具融入在DevSecOps的开发过程中,对提高产品的整体的安全水平发挥着重要的作用.为了获取安全检查能力覆盖的最大化,开发团队通常会引入多个安全扫描工具.为了降低各种分析工具的结果汇总 ...
- 云小课|3种常用Git工作流推荐
本文分享自华为云社区<[云小课]应用平台第44课 常用Git工作流推荐>,作者: 应用万花筒. . 1. Git工作流-动静有法 简单来说,工作流就是开发团队预置的开发流程和解决问题时使用 ...