@Pushgateway自定义脚本推送数据

文章目录

  • Pushgateway 自定义脚本推送数据
    • 1. 目的
    • 2. 适用范围
    • 3. 前提条件
    • 4. 操作流程
      • 4.1 确定指标类型和格式
      • 4.2 编写推送脚本
        • 方法一:使用 curl 命令行推送
        • 方法二:使用 Python 脚本推送
        • 方法三:使用 Python 客户端库推送
      • 4.3 设置定时任务
      • 4.4 验证数据
    • 5. 高级配置
      • 5.1 使用基本认证
      • 5.2 删除指标
    • 6. 注意事项
    • 7. 完整示例
      • Bash 完整示例
      • Python 完整示例
    • 8. 最佳实践
    • 9. 故障排除
    • 10.注意事项

Pushgateway 自定义脚本推送数据

1. 目的

本文档提供了使用自定义脚本向 Prometheus Pushgateway 推送监控数据的标准操作流程(SOP),包括完整的示例代码。

2. 适用范围

适用于需要将自定义监控数据通过 Pushgateway 推送到 Prometheus 的场景。

3. 前提条件

  • 已部署并运行 Pushgateway 服务
  • 已安装 curl 或编程语言相关 HTTP 客户端库
  • 了解基本的 Prometheus 指标类型和格式

4. 操作流程

4.1 确定指标类型和格式

选择适合的指标类型:

  • Counter: 累计计数,只增不减
  • Gauge: 可增可减的数值
  • Histogram: 直方图
  • Summary: 摘要

4.2 编写推送脚本

选择以下任意一种方法:

方法一:使用 curl 命令行推送
#!/bin/bash# 变量定义
PUSHGATEWAY_URL="http://pushgateway.example.com:9091"
JOB_NAME="custom_script"
INSTANCE_NAME="server01"# 指标数据
cat <<EOF | curl --data-binary @- ${PUSHGATEWAY_URL}/metrics/job/${JOB_NAME}/instance/${INSTANCE_NAME}
# TYPE custom_metric_counter counter
custom_metric_counter{label="value1"} 42
# TYPE custom_metric_gauge gauge
custom_metric_gauge{label="value2"} 3.14
EOF
方法二:使用 Python 脚本推送
#!/usr/bin/env python3
import requests
from datetime import datetime# 配置信息
PUSHGATEWAY_URL = "http://pushgateway.example.com:9091"
JOB_NAME = "custom_script_python"
INSTANCE_NAME = "server01"# 构造指标数据
metrics_data = """# TYPE python_custom_counter counter
python_custom_counter{label="python_value1"} 100
# TYPE python_custom_gauge gauge
python_custom_gauge{label="python_value2"} 2.718
# TYPE last_success_timestamp gauge
last_success_timestamp{} {timestamp}
""".format(timestamp=int(datetime.now().timestamp()))# 推送数据
response = requests.post(f"{PUSHGATEWAY_URL}/metrics/job/{JOB_NAME}/instance/{INSTANCE_NAME}",data=metrics_data
)print

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

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

相关文章

Git 使用规范指南

Learn Git Branching 1Git 基础使用流程 1.1初始化与克隆 # 初始化本地仓库 git init# 克隆远程仓库 git clone <repo_url> 一般拉取代码&#xff0c;直接在文件夹界面打开bash&#xff0c;git clone就行了 1.2日常开发流程 1拉取最新代码 git pull origin <branc…

设计模式——备忘录设计模式(行为型)

摘要 备忘录设计模式是一种行为型设计模式&#xff0c;用于在不破坏封装性的前提下&#xff0c;捕获对象的内部状态并在需要时恢复。它包含三个关键角色&#xff1a;原发器&#xff08;Originator&#xff09;、备忘录&#xff08;Memento&#xff09;和负责人&#xff08;Car…

动态规划十大经典题型状态转移、模版等整理(包括leetcode、洛谷题号)

动态规划十大经典题目整理 0-1 背包问题&#xff08;0-1 Knapsack Problem&#xff09; LeetCode题号&#xff1a;无直接对应洛谷OJ题号&#xff1a;P1048状态转移方程&#xff1a;dp[j] max(dp[j], dp[j - weight[i]] value[i])C代码模板&#xff1a; int dp[capacity 1…

简单transformer运用

通俗易懂解读&#xff1a;hw04.py 文件内容与 Transformer 的应用 这个文件是一个 Python 脚本&#xff08;hw04.py&#xff09;&#xff0c;用于完成 NTU 2021 Spring 机器学习课程的 HW4 作业任务&#xff1a;扬声器分类&#xff08;Speaker Classification&#xff09;。它…

redis的哨兵模式和Redis cluster

目录 一. redis的主从复制 二. 哨兵模式 2.1 定义 2.2 作用 2.3 配置实例 三. Redis cluster 3.1 定义 3.2 作用 3.3 配置实例 1. 新建集群文件目录 2. 准备可执行文件到每个文件夹 3. 开启群集功能 4. 启动redis节点 5. 查看是否启动成功 6. 启动集群 7. 测试…

简述八大排序(Sort)

1.插入排序 1.1直接插入排序 给定一组数据&#xff0c;若数据只有一个肯定是有序的&#xff0c;我们将无序数据一个个插入到已有序的数据中。用i遍历无序数据&#xff0c;j遍历有序数据&#xff0c;找到合适插入位置&#xff0c;用tmp存放目标插入数据&#xff0c;将其与j对应…

xcode 编译运行错误 Sandbox: rsync(29343) deny(1) file-write-create

解决方法 方法一&#xff1a;修改Targets -> Build Settings 中 ENABLE_USER_SCRIPT_SANDBOXING 设置 NO 方法二&#xff1a;项目使用cocoaPods进行三方管理 且 使用了 use_frameworks&#xff0c;把 use_frameworks 注释掉,然后重新自行pod install

linux系统中防火墙的操作

防火墙 开放ssh端口 sudo ufw allow 22/tcp # 允许 SSH 连接 sudo ufw enable开放防火墙端口 sudo ufw allow 80/tcp # HTTP sudo ufw allow 443/tcp # HTTPS&#xff08;如果需要&#xff09; sudo ufw enable查看挡墙防火墙设置 sudo ufw status删除其中一条防火墙规…

[特殊字符] 超强 Web React版 PDF 阅读器!支持分页、缩放、旋转、全屏、懒加载、缩略图!

在现代 Web 项目中&#xff0c;PDF 浏览是一个常见需求&#xff1a;从政务公文到合同协议&#xff0c;PDF 文件无处不在。但很多方案要么体验不佳&#xff0c;要么集成复杂。今天&#xff0c;我给大家带来一个开箱即用、功能全面的 PDF 预览组件 —— [PDFView](https://www.np…

设计模式——策略设计模式(行为型)

摘要 策略设计模式是一种行为型设计模式&#xff0c;它定义了一系列算法并将每个算法封装起来&#xff0c;使它们可以相互替换。该模式让算法的变化独立于使用算法的客户&#xff0c;从而使得算法可以灵活地切换和扩展。其主要角色包括策略接口、具体策略类和环境类。策略模式…

DeepSeek-R1-0528,官方的端午节特别献礼

DeepSeek&#xff1a;端午安康&#xff01;刻在国人骨子里的浪漫 2025 年 05 月 28 日 | DeepSeek 端午特别献礼 当粽叶飘香时&#xff0c;DeepSeek 悄然带来一份节日惊喜 版本号 DeepSeek-R1-0528 正式上线 官方赋予它的灵魂是&#xff1a; 思考更深 推理更强 用户通过官网…

mac安装brew时macos无法信任ruby的解决方法

背景 在使用如下脚本安装brew时&#xff0c;遇到安装ruby&#xff0c;macos不信任外部软件&#xff0c;在安全性点击信任仍然无法安装。 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"如何解决 本地安装好符…

2025音频传输模块全球选购指南:高品质音频体验的品牌之选

随着无线技术的迅猛发展&#xff0c;音频传输模块&#xff08;Audio Transmission Module&#xff09;已成为高品质音频体验的关键技术之一。它们广泛应用于智能家居、无线耳机、会议系统、广播设备以及专业音频领域。面对市场上多样化的产品&#xff0c;如何选择适合自己需求的…

解析楼宇自控系统:分布式结构的核心特点与优势展现

在建筑智能化发展的进程中&#xff0c;楼宇自控系统作为实现建筑高效运行与管理的关键&#xff0c;其系统结构的选择至关重要。传统的集中式楼宇自控系统在面对日益复杂的建筑环境和多样化的管理需求时&#xff0c;逐渐暴露出诸多弊端&#xff0c;如可靠性低、扩展性差、响应速…

Spring Boot对一些技术框架进行了统一版本号管理

这个说法是 正确的。 Spring Boot 对许多常用依赖进行了版本管理&#xff0c;因此在项目中引入这些依赖时&#xff0c;通常不需要指定版本号。 Spring Boot 依赖版本管理 &#x1f6e0;️ spring-boot-starter-parent&#xff1a;当你的项目在 pom.xml (Maven 项目) 中继承自…

关于MySQL的索引

一、索引 1、索引概述 1.1、介绍 索引&#xff08; index &#xff09;是帮助 MySQL 高效获取数据的数据结构 ( 有序 ) 。在数据之外&#xff0c;数据库系统还维护着满足特定查找算法的数据结构&#xff0c;这些数据结构以某种方式引用&#xff08;指向&#xff09;数据&…

微服务常用日志追踪方案:Sleuth + Zipkin + ELK

在微服务架构中&#xff0c;一个用户请求往往需要经过多个服务的协同处理。为了有效追踪请求的完整调用链路&#xff0c;需要一套完整的日志追踪方案。Sleuth Zipkin ELK 组合提供了完整的解决方案 Sleuth&#xff1a;生成和传播追踪IDZipkin&#xff1a;收集、存储和可视化…

R语言基础| 创建数据集

在R语言中&#xff0c;有多种数据类型&#xff0c;用以存储和处理数据。每种数据类型都有其特定的用途和操作函数&#xff0c;使得R语言在处理各种数据分析任务时非常灵活和强大&#xff1a; 向量&#xff08;Vector&#xff09;: 向量是R语言中最基本的数据类型&#xff0c;它…

nssctf第二题[SWPUCTF 2021 新生赛]简简单单的逻辑

这是题目&#xff0c;下载后得到一个python文件,打开 解读代码&#xff1a; for i in range(len(list)):key (list[i]>>4)((list[i] & 0xf)<<4)result str(hex(ord(flag[i])^key))[2:].zfill(2)list[i]>>4&#xff1a;从列表中取数字同时高4位向右位…

mysql(十五)

目录 子查询 1.准备工作 2--创建表格 3--插入数据 2.where 子查询单列单个数据 格式 查询 3.where 子查询单列多个数据(in) 格式 查询 使用子查询 4.from 多行多数据 格式 查询 子查询 将select的查询的返回结果 当成另外一个selet语句的内容去使用。 子查询放在()里面 注意…