Golang 基于Prometheus Node_Exporter 开发自定义脚本监控
Node_Exporter 源码 目录结构
通过collector目录下源码文件名可以看到具体监控项通过单独的代码文件去采集
新建custom_scripts.go 开始编写自定义脚本监控项采集器
- 定义struct
- 定义所要用到的变量
- 定义init函数去注册collector,NewCoustomScriptCollector 返回CoustomScriptCollector 结构体
- 实现*Unix执行脚本函数
- 注册Collector接口Update方法
主要逻辑:遍历目录下的脚本文件,给脚本文件增加执行权限,然后执行脚本,脚本输出格式Key=Value,取key、value生成metrics数据
在脚本目录放入 测试脚本
编译运行
查看metrics数据
最后展示的话可以在grafana中添加图表,也可在alertmanger添加报警规则,具体可以参考