前言
github仓库文档中对Categraf有很详细的介绍,简单重复一下就是:支持多种数据格式的remote_write;All-in-one的设计理念,指标采集只需要一个agent完成,也计划支持日志和调用链路的数据采集;Go编写,依赖少,容易分发和安装;内置一些监控大盘和告警规则,用户可以直接导入使用;开源项目并由快猫研发团队持续迭代。
特殊目录结构说明
input
采集插件基本都位于input目录下,并且有些采集器提供了通用的大盘(alters-xxx.json)和告警(dashbord.json) 配置可以导入n9e直接使用(例如监控仪表盘中更多操作的批量导入),不过例如mtail插件(轻量的日志提取工具,将日志内容,转换为metrics),此类大盘或告警不通用,需要自行实现;k8s的插件不在input而是在根目录。
conf
除了全局主配置config.toml,每个采集器插件也都有各自的配置,位于input.xxx目录下的xxx.toml,需要注意一个instance一般对应一个采集对象,多个采集对象需要配置多个instance(可以通过 --test 对采集器配置测试 ./categraf --test --debug --inputs xxx, 此时采集数据会被打印出来,不会真正上报给n9e)。
官方文档片段摘抄,主配置文件config.toml说明:
[global]
# 启动的时候是否在stdout中打印配置内容
pr