Prometheus 标签动作|action: keep 设置哪些对象需要抓取

标签的作用:

  • 可以基于已有的标签,生成一个标签
  • 也可以创建新的标签
  • 还可以过滤标签,不想采集哪些
  • 哪些标签不要了也可以将其删除

 

 

 保留或丢弃对象、哪些对象需要抓取


Relabeling 另一个常见的用例就是过滤有标签的对象,keep 或 drop 这两个动作可以来完成,使用这两个操作,可以帮助我们完成如下的一些操作:

  • 来自服务发现的哪些目标应该被抓取
  • 从目标中抓取哪些指定的序列样本,或将其发送到远程存储
  • 哪些报警要发送到 Alertmanager

一个 keep 动作的配置规则如下所示:

action: keep
source_labels: [<source label name list>]
separator: <source labels separator> # 默认为 ';'
regex: <regular expression> # 默认为 '(.*)' (匹配任何值)

keep 操作同样按顺序执行如下步骤:

  • 使用 separator 分隔符将 source_labels 中列出的标签值连接起来,多个label用分隔符分开
  • 测试 regex 中的正则表达式是否与上一步的连接字符串匹配
  • 如果不匹配,该对象将从最终输出列表中删除,如果匹配,则保留该对象

drop 动作和 keep 类似,只是它是删除一个对象而不是保留。同样接下来看一看 keep 和 drop 的示例。

只抓取具有注解的目标

在服务发现的时候,我们可能只想抓取那些具有特定元数据标签的目标,例如,下面的配置让我们只抓取 Kubernetes 中具有 example.io/should_be_scraped=true 这个 annotation 的目标。

- action: keep
  source_labels:
  [_meta_kubernetes_service_annotation_example_io_should_be_scraped]
  regex: true

kind: Service
apiVersion: v1
metadata:name: redisnamespace: monitorannotations:prometheus.io/scrape: "true"prometheus.io/port: "9121"--------------------------------------------------------------------------------- job_name: 'kubernetes-service-endpoints'kubernetes_sd_configs:- role: endpointsrelabel_configs:- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]action: keepregex: true
​      relabel_configs:- source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]action: keepregex: default;kubernetes;https

Kubernetes 服务发现机制下面会将 labels 标签与 annotation 作为元信息输出到 Prometheus,这些元信息都包含 __meta_ 前缀,这里我们的配置就是保留具有 example.io/should_be_scraped 这个 annotation 标签,且值为 true 的目标。

只存储特定的指标

当使用 metric_relabel_configs(抓取数据之后的,也就是说要存储了,只会去存储这样的指标,relabel_configs是抓取之前) 来控制目标的抓取方式时,我们可以使用下面的规则来只存储指标名称以 api_ 或 http_ 开头的指标。

action: keep
source_labels: [__name__]
regex: "(api_|http_).*"

只抓取特定目标的Service

Keep只有匹配的才会去采集数据,不匹配的就不采集。下面意思就是pod当中有些注解中声明了prometheus_io_scrape这个字段,那么就会把你纳入监控,如果没有声明就不会纳入监控。也就是k8s当中部署了这么多pod,谁要监控,谁不要被监控,在部署service可以指定是否需要采集,如果需要采集需要在注解当中声明prometheus_io_scrape: true

在service 和pod里面声明配置注解,那么就会采集注解里面含有这个值的

annotations:
  prometheus.io/scrape: 'true'

 # Service没配置注解prometheus.io/scrape的不采集
- action: keep
  regex: true
  source_labels:
  - __meta_kubernetes_service_annotation_prometheus_io_scrape

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/1726.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云mysql8.0 this is incompatible withsql mode=only full group by

阿里云RDS中mysql5.6升级为8.0后&#xff0c;出现如下问题&#xff1a; ### Error querying database. Cause:java.sql.SQLSyntaxErrorException: Expression #1 of SELECT listis not in GROUP BY clause and contains nonaggregatedcolumn temp.product_id which is not fun…

2024抖店新政策!抖音小店的发展趋势!新手必看!

哈喽~我是电商月月 准备开抖店的新手朋友注意了&#xff0c;最近抖音严查无货源违规商家&#xff0c;还发布了取消新手期的政策&#xff0c;这说明了两点 1. 生态环境正在改变 无规矩不成方圆&#xff0c;违规的都是故意放错类目以及&#xff0c;靠S单非法获得销量&#xff…

JavaScript实现字符串转json对象的方法

在JavaScript中&#xff0c;将字符串转换为JSON对象通常使用JSON.parse()方法。但如果你想要其他方法&#xff0c;这里给出四种不同的方法&#xff1a; 1. 使用JSON.parse() 这是最常见且推荐的方法&#xff0c;它可以将一个格式正确的JSON字符串转换为一个JavaScript对象。 …

流量计如何进行校准?

什么是流量计&#xff1f;流量计是指示被测流量和&#xff08;或&#xff09;在选定的时间间隔内流体总量的仪表。简直研制&#xff0c;流量计是用于测量管道或明渠中流体流量的一种仪表。流量计种类繁多&#xff0c;又分为有差压式流量计、转子流量计、节流式流量计、细缝流量…

Linux信号(保存)

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 前言 Linux信号(产生)-CSDN博客&#xff0c;上一个章节我们详细介绍了信号是什么&#xff0c;为什么要有信号&#xff0c;怎样产生信号&#xff0c;以及信号产生的几个问题&#xff0c;这个章节我们将介绍信号的保存。 我们…

【Linux】简单的线程池

目录 线程池介绍 基本概念 定义 组成部分 线程池的优点 资源高效 响应迅速 可管理性 线程池的工作原理 线程池的使用场景 线程池的注意事项 实现简单的线程池 前置函数 Mutex 类介绍 LockGuard 类介绍 Log类的介绍 枚举定义 Log类 全局对象 Conf类 myThre…

使用Vueuse的useIntervalFn方法制作一个获取验证码倒计时按钮

useIntervalFn const { pause, resume, isActive } useIntervalFn(()>{}, 1000, {})useIntervalFn可获取到两个方法和一个属性&#xff0c;pause暂停计时器&#xff0c;resume恢复计时器&#xff0c;isActive表示当前计时器的活动状态 div内容 <el-button click"…

嵌入式linux学习之arm开发板移植ssh

1.下载源码 &#xff08;1&#xff09;zlib 下载网址&#xff1a;http://www.zlib.net/fossils/ 教程中版本选择的是: zlib-1.2.11.tar.gz &#xff08;2&#xff09;openssl下载网址&#xff1a;https://www.openssl.org/source/mirror.html 教程中版本选择的是: openssl-1.1…

数据库相关的所有问题

哪里有纯DBA啊&#xff1f;操作系统出问题&#xff0c;导致数据库卡了。你&#xff0c;去把这个问题做掉。

android应用复制文件到u盘

刚开始觉得简单&#xff0c;不就是找到u盘路径&#xff0c;打开文件写入文件 fun getUsbPath(): String? {val usbRoot File("/mnt/media_rw")if (usbRoot.exists() && usbRoot.isDirectory()) {val usbFiles usbRoot.listFiles()if (usbFiles ! null &am…

设计模式-迭代器模式(Iterator)

1. 概念 迭代器模式是一种行为型设计模式&#xff0c;它提供了一种统一的方式来访问集合对象中的元素。迭代器模式的核心思想是将遍历集合的责任封装到一个单独的对象中&#xff0c;这样可以避免暴露集合内部的表示方式。这种模式通常用于提供一种方法来访问一个容器对象中各个…

页面跳转的几种方式

目录 1. HTML超链接 ( 标签): 2. JavaScript 方式: 3. Meta 标签: 4. 小程序中页面跳转 (微信小程序为例): 5. 框架内跳转 (Vue Router为例): 6. iframe 内部跳转: 7. AJAX 请求后处理: 1. HTML超链接 (<a> 标签): <!-- 用户点击后跳转 --> <a href&qu…

使用 Docker 部署 Draw.io 在线流程图系统

1&#xff09;介绍 Draw.io GitHub&#xff1a;https://github.com/jgraph/drawio Draw.io 是一款开源的绘制流程图的工具&#xff0c;拥有大量免费素材和模板。程序本身支持中文在内的多国语言&#xff0c;创建的文档可以导出到多种网盘或本地。无论是创建流程图、组织结构图…

安装Python包常用的国内镜像源

示例&#xff1a; pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simplepip install scrapy -i http://mirrors.aliyun.com/pypi/simple/ 镜像源不太稳定时&#xff0c;可以按需切换&#xff1a; 清华&#xff1a;https://pypi.tuna.tsinghua.edu.cn…

跨线程参数传递TransmittableThreadLocal

TransmittableThreadLocal 是阿里巴巴开源的transmittable-thread-local库提供的一个类&#xff0c;它是 ThreadLocal 的一个增强版本&#xff0c;主要用于解决跨线程传递 ThreadLocal 变量值的问题。 通常情况下&#xff0c;ThreadLocal 变量的值只能在当前线程中共享&#x…

第21篇 JSP指令

JSP指令&#xff08;JavaServer Pages Directives&#xff09;是JSP页面中的一种特殊语句&#xff0c;它们以<% %>的形式存在&#xff0c;并且不是发送给浏览器的输出内容&#xff0c;而是由JSP容器&#xff08;如Apache Tomcat&#xff09;在将JSP页面转换为Servlet时解…

如何帮助中小企业建立数字化的能力?

中小企业建立数字化的能力&#xff0c;可以从以下几个方面着手&#xff1a; 1、开展数字化评估&#xff1a;中小企业首先需要对自己的数字化基础水平和企业经营管理现状进行评估&#xff0c;这包括了解企业在数字化方面的现有能力和需求&#xff0c;以及内外部转型资源的可用性…

[创业之路-106] :经济学十大陷阱与核心思想:系统论、社会进化论、周期论、阴阳互转论

目录 前言&#xff1a; 一、流动性陷阱。 二、中等收入陷阱。 三、修昔底德陷阱。 四、塔西佗陷阱。 五、金德尔伯格陷阱。 六、卢梭陷阱。 七、拉美陷阱。 八、阿喀琉斯之踵。 九、布拉德伯里悖论。 十、李约瑟之谜 结论&#xff1a;上述陷阱的…

Oracle-操作【Python-cx_oracle】

一、cx_oracle 1 简介 通过Python扩展模块cx_Oracle访问Oracle数据库cx_Oracle通常使用 pip 安装Oracle 客户端库需要单独安装 2 特点 支持多个 Oracle 客户端和数据库版本执行 SQL 和 PL/SQL 语句广泛的 Oracle 数据类型支持&#xff0c;包括大型对象&#xff08;CLOB 和 …

AI智能客服机器人原来这么好用,企业再不使用就落伍了!

随着人工智能技术的不断成熟&#xff0c;AI智能客服机器人已经变得越来越智能&#xff0c;它们正逐渐成为企业提供客户服务的强大助手。企业若不开始部署这种高效的技术&#xff0c;可能会在竞争中失去先机。下面&#xff0c;让我们来看看AI智能客服机器人为何如此好用&#xf…