当前位置: 首页 > news >正文

exporter方式监控达梦数据库

蓝鲸监控

  • 随着国产化和信创的深入,开始普遍使用国产化数据库–如达梦数据库,蓝鲸平台默认没有对其进行监控,但是平台了提供监控告警的能力。
  • 比如脚本采集,脚本的是一种灵活和快速的监控采集方式,不同层的监控对象都可以用脚本来完成。当默认的开箱即用的功能不能满足个性化需求时,脚本是一个非常高效的办法。
  • 又比如监控平台兼容 Prometheus Exporter 的导入能力,从 Github 获取源码编译二进制或直接获取 release,按照监控平台的插件规范,可以让监控采集变得非常的简单。

插件实现

基于https://github.com/easy-monitor/dmdb_exporter改写实现

上报地址

promhttp为exporter提供一个http://ip:port/metrics暴露指标,方便Prometheus获取数据;测试代码发现并没有实现metrics暴露指标,遂改写代码实现:

--4e9473510d16dd700aa95f3011465c8b.png

采集指标

  • 目前很多exporter都是将指标文件和采集代码分开,–default-metrics/–custom-metrics的方式使用某一路径的指标toml文件;
  • 如果在监控平台使用该方式的话,在部署具体实例的时候,就会显得有些割裂感,要手动在某一实例主机上传相关toml文件后,才能在监控平台下发采集插件,这样插件就不会报错,正常上报数据;
  • 之前测试社区官网制作蓝鲸采集插件的方式,如打包的时候按照标准编辑config.json、meta.yaml等文件,并将default-metrics.toml/custom-metrics.toml至于插件包内,代码直接引用,在稍后的插件包上传监控平台,重新打包测试的流程中,蓝鲸会重新打包,过滤掉default-metrics.toml/custom-metrics.toml文件,就会在后面测试的时候报错找不到toml文件了;
  • 所以想到了一个笨办法,在采集代码中添加toml文件内容,在main函数中首先创建toml文件后,再解析参数,在每次执行的时候创建该文件用以保证不会缺漏,尽量总结好需要监控的信息,编辑代码编译后,就可以作为通用插件来使用了。

--48f1f89e1baccb4a438f42172ea4be3f.png

--6662f285625bbb4dc8148fbc3f8997d5.png

蓝鲸插件制作

  • 制作插件,上传编译好的二进制文件并配置参数,除了expoter启动的监听地址端口外,多加一个数据库连接信息
    --77821bc717e6ec41d33650b44453c646.png

  • 可以编辑下描述说明信息,已经测试过在环境信息
    --e4bf9e333acacadefb09a7b9d8d8b746.png

  • 配置需要的指标维度信息,监控平台会根据该处在influxdb中创建表结构
    --8e745e84d2054ed45c4aa346e4fcfe63.png

  • 之后添加实例,下发进行采集监控
    --f876fb8977250ec65f4d6008c492c734.png

附件

已经编译好的dmdb-exporter,可以在插件制作的编辑页面上传使用;
指标维度的json文件,可以在插件制作的过程在插件测试后,直接导入使用。

http://www.lryc.cn/news/320914.html

相关文章:

  • 供应链安全之被忽略的软件质量管理平台安全
  • python入门(二)
  • Mysql,MongoDB,Redis的横纵向对比
  • css3 实现html样式蛇形布局
  • 基于消失点的相机自标定
  • Python:filter过滤器
  • Python函数学习
  • IDEA中的Project工程、Module模块的概念及创建导入
  • 如何快速下载并剪辑B站视频
  • 智慧矿山新趋势:大数据解决方案一览
  • Ubuntu使用Docker部署Nginx容器并结合内网穿透实现公网访问本地服务
  • 面试笔记——Redis(使用场景、面临问题、缓存穿透)
  • 电机学(笔记一)
  • 数值分析复习:Newton插值
  • 金融知识分享系列之:出场信号RSI指标
  • 基于Spring Boot的宿舍管理系统
  • 全量知识系统“全基因序列”程序构想及SmartChat的回复
  • 315晚会曝光主板机产业链,如何应对工作室技术更迭
  • Copilot with GPT-4与文心一言4.0:AI技术的未来
  • 注册-前端部分
  • SpringBoot ApplicationListener实现发布订阅模式
  • 嵌入式学习40-数据结构
  • k8s集群部署elk
  • 【Python】清理conda缓存的常用命令
  • 代码随想录算法训练营第46天 | 完全背包,139.单词拆分
  • rust - 将windows剪贴板的截图保存为png
  • pyflink1.18.0 报错 TypeError: cannot pickle ‘_thread.lock‘ object
  • 算法学习系列(四十一):Flood Fill算法
  • Re62:读论文 GPT-2 Language Models are Unsupervised Multitask Learners
  • stm32-编码器测速