码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 介绍一个prometheus监控数据生成工具


    prometheus-data-generator

    Prometheus数据模拟工具旨在通过配置文件模拟Prometheus数据,用于测试和开发目的。该工具允许您生成用于测试和开发的合成数据。

    配置

    工具的配置信息存储在一个YAML文件中。以下部分描述了可用的选项:

    template_dir: ./templates
    output_dir: ./output
    template_value_dir: ./template_values
    
    global_config:
      template_value_path: ./template_values_without_unix.json
      days: 1
      resolution_seconds: 15
      endtime_unix: 1698048047
    
    template_without_unix_configs:
      - name: nvidia_gpu_exporter
        template_value_path: gpu_node_2.json
    
    template_with_unix_configs:
      - name: nvidia_gpu_exporter_with_unix
        template_value_path: samples_gpu_node_1.json
    

    全局配置

    全局配置部分包含适用于所有模板的设置,这些设置在global_config键下指定。可用的选项有:

    • template_value_path: 包含模板值的JSON文件的路径。默认情况下,工具在template_values目录中查找此文件。
    • days: 生成数据的天数。默认值为30。
    • resolution_seconds: 生成数据的分辨率(秒)。默认值为15。
    • endtime_unix: 生成数据的结束时间的Unix时间戳。默认值为1698048047。

    模板配置

    模板配置定义了各个模板及其特定设置。有两种类型的模板配置:

    • 无Unix时间戳的模板
      在template_without_unix_configs键下定义无Unix时间戳的模板配置。每个模板配置包括以下选项:

      • name: 模板的名称。
      • template_value_path: 包含此模板特定模板值的JSON文件的路径。默认情况下,工具在template_values目录中查找此文件。
    • 带Unix时间戳的模板
      在template_with_unix_configs键下定义带Unix时间戳的模板配置。每个模板配置包括以下选项:

      • name: 模板的名称。
      • template_value_path: 包含此模板特定模板值的JSON文件的路径。默认情况下,工具在template_values目录中查找此文件。

    模板格式

    格式为golang的text/template格式,具体模板参考 https://github.com/gmodx/prometheus-data-generator/tree/main/templates

    {{ range t := .Timestamps }}{{ range .Items -}}
    DCGM_FI_DEV_FB_FREE{instance="{{.IP}}:9400",gpu="{{.Index}}",UUID="{{.ID}}",device="{{.Vendor}}",modelName="{{.Model}}",Hostname="{{.IP}}"} {{ .RandomInt 501 10000 }} {{t}}
    DCGM_FI_DEV_FB_USED{instance="{{.IP}}:9400",gpu="{{.Index}}",UUID="{{.ID}}",device="{{.Vendor}}",modelName="{{.Model}}",Hostname="{{.IP}}"} {{ .RandomInt 1 500 }} {{t}}
    DCGM_FI_DEV_GPU_UTIL{instance="{{.IP}}:9400",gpu="{{.Index}}",UUID="{{.ID}}",device="{{.Vendor}}",modelName="{{.Model}}",Hostname="{{.IP}}"} {{ .RandomInt 1 100 }} {{t}}
    DCGM_FI_DEV_POWER_USAGE{instance="{{.IP}}:9400",gpu="{{.Index}}",UUID="{{.ID}}",device="{{.Vendor}}",modelName="{{.Model}}",Hostname="{{.IP}}"} {{ .RandomInt 1 500 }} {{t}}
    {{ end -}}{{ end -}}
    

    使用

    ./prometheus-data-generator --config.file=config.yaml
    Dec  1 03:46:22.488 nvidia_gpu_exporter, 2023-10-22T08:00:47Z -> 2023-10-23T08:00:47Z, step: 15s
    Dec  1 03:46:22.488 progress: 0%, 2023-10-22T08:00:47Z -> 2023-10-22T10:00:00Z
    Dec  1 03:46:22.488 process template...
    Dec  1 03:46:22.722 create blocks...
    BLOCK ULID                  MIN TIME                       MAX TIME                       DURATION     NUM SAMPLES  NUM CHUNKS   NUM SERIES   SIZE
    01HGHQR4GFSFXM8Q5SSNW7Y1RJ  2023-10-22 08:00:47 +0000 UTC  2023-10-22 09:59:47 +0000 UTC  1h59m0.001s  30528        256          64           72KiB840B
    Dec  1 03:46:22.950 progress: 8%, 2023-10-22T10:00:00Z -> 2023-10-22T12:00:00Z
    Dec  1 03:46:22.950 process template...
    Dec  1 03:46:23.118 create blocks...
    

    文件下载

    https://github.com/gmodx/prometheus-data-generator/releases/tag/v1.0.1

    源码

    https://github.com/gmodx/prometheus-data-generator

  • 相关阅读:
    如何优雅的实现无侵入性参数校验之spring-boot-starter-validation
    YOLOv5独家原创改进:最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度
    Vuex - 状态管理模式的配置和使用(state、mutations、getters)
    Java多线程(4)----浅谈重入锁
    java智慧工地云平台源码,以物联网、移动互联网技术为基础,结合大数据、云计算等,实现工程管理绿色化、数字化、精细化、智能化的效果
    gitee码云的使用
    pycharm交互式编程 python console
    8+铜死亡+铁死亡+分型生信思路,多热点搭配
    【JavaEE初阶】网络原理|认识协议|协议分层|TCP/IP模型|封装和分用
    (续)SSM整合之spring笔记(声明式事务)(P110-117)(还没完)
  • 原文地址:https://www.cnblogs.com/handsomer/p/17957370
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号