Prometheus监控指标标签管理

1.标签的作用

标签作用:Prometheus中存储的数据为时间序列,是由Metric的名字和一系列的标签(键值对)唯一标识的,
不同的标签代表不同的时间序列,即通过指定标签查询指定数据。

2.Metadata标签

在Prometheus所有的Target实例中,都包含一些默认的Metadata标签信息。可以通过Prometheus UI的
Targets页面中查看这些实例的Metadata标签的内容:
• __address__:当前Target实例的访问地址<host>:<port>
• __scheme__:采集目标服务访问地址的HTTP Scheme,HTTP或者HTTPS
• __metrics_path__:采集目标服务访问地址的访问路径
上面这些标签将会告诉Prometheus如何从该Target实例中获取监控数据。除了这些默认的标签以外,我们
还可以为Target添加自定义的标签。

在这里插入图片描述

3.自定义标签

- job_name: 'Linux Server'
basic_auth:
username: prometheus
password: 123456
static_configs:
- targets: ['192.168.31.62:9100']
labels:
idc: bj
project: www

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.重新标记标签

重新标记目的:为了更好的标识监控指标。
在两个阶段可以重新标记:
• relabel_configs :在采集之前
• metric_relabel_configs:在存储之前

准备抓取指标数据时,可以使用relabel_configs添加一些标签、也可以只采集特定目标或过滤目标。

已经抓取到指标数据时,可以使用metric_relabel_configs做最后的重新标记和过滤。

在这里插入图片描述

重新标记标签一般用途:

• 动态生成新标签
• 过滤采集的Target
• 删除不需要或者敏感标签
• 添加新标签

action:重新标记标签动作

• replace:默认,通过regex匹配source_label的值,使用replacement来
引用表达式匹配的分组,分组使用$1,$2...引用
• keep:删除regex与连接不匹配的目标 source_labels
• drop:删除regex与连接匹配的目标 source_labels
• labeldrop:删除regex匹配的标签
• labelkeep:删除regex不匹配的标签
• labelmap:匹配regex所有标签名称,并将捕获的内容分组,用第一个分组内容作为新的标签名

重新标记标签:重命名标签

场景1:动态生成添加标签(对已有的标签重新标记)
- job_name: 'Linux Server'
   static_configs:
	- targets: ['192.168.31.62:9100']
 relabel_configs: 
 - action: replace
	source_labels: ["__address__"]
	regex: (.*):([0-9]+) # 正则匹配标签值,( )分组
	replacement: $1 # 引用分组匹配的内容
	target_label: "ip"

重新标记标签:过滤Target

场景2:选择采集的目标
- job_name: 'Linux Server'
	static_configs:
	- targets: ['192.168.31.62:9100']
relabel_configs:
- action: drop
regex: “192.168.31.63.*“ # 正则匹配标签值
source_labels: ["__address__"]

重新标记标签:删除标签

场景3:删除不需要或者敏感的标签
- job_name: 'Linux Server'
	static_configs:
 - targets: ['192.168.31.62:9100']
relabel_configs:
 - action: labeldrop
 regex: “job” #正则匹配标签名称
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Prometheus 是一种开源的、基于 Go 语言构建的现代监控系统和时间序列数据库。它能够收集、存储并分析大量实时数据点,适用于多种环境下的应用性能监控和基础设施监控。 ### Prometheus 的工作原理 1. **数据采集**:Prometheus 通过主动轮询的方式从目标系统(如服务器、微服务等)收集数据。它也可以配置为接收来自其他组件的数据推送(例如通过 HTTP 或者 gRPC 协议)。每个目标系统通常有一个唯一的地址,并由标签labels)进行标识,标签帮助 Prometheus 精确地匹配和识别数据来源。 2. **时间序列数据库**:Prometheus 使用一个基于键值对的时间序列数据库。键值对包括了目标系统、度量项名称、时间戳以及实际的数值。这种结构使得查询历史数据变得非常高效。 3. **查询语言**:Prometheus 提供了一个强大的查询语言——PromQL,用于检索、聚合和计算历史数据。用户可以编写复杂的查询表达式来获特定时间段内的统计数据,甚至生成新的合成指标。 4. **报警机制**:Prometheus 支持定义报警规则,当监控数据超出预设阈值时会触发通知。这些报警可以集成到各种第三方工具和服务中,以便及时响应异常情况。 5. **可视化**:Prometheus 集成了 Grafana 这样的可视化工具,用户可以在图形界面中查看监控数据的趋势图、堆叠图等多种图表形式,方便理解和分析。 ### 相关问题: 1. **如何设置 Prometheus监控 Kubernetes 集群?** 2. **Prometheus 中的标签如何提高数据的精细度和灵活性?** 3. **PromQL 查询语言的核心功能有哪些?** 这种全面而灵活的架构使得 Prometheus 成为了众多企业级监控系统的首选解决方案,特别是在需要处理大规模分布式系统和容器化环境的应用场景中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值