Categraf is a monitoring agent for nightingale / prometheus / m3db / victoriametrics / thanos / influxdb / tdengine.
# export GO111MODULE=on
# export GOPROXY=https://goproxy.cn
go build
tar zcvf categraf.tar.gz categraf conf
# test mode: just print metrics to stdout
./categraf --test
# test system and mem plugins
./categraf --test --inputs system:mem
# print usage message
./categraf --help
# run
./categraf
# run with specified config directory
./categraf --configs /path/to/conf-directory
# only enable system and mem plugins
./categraf --inputs system:mem
# use nohup to start categraf
nohup ./categraf &> stdout.log &
edit k8s/daemonset.yaml, replace NSERVER_SERVICE_WITH_PORT with service ip:port of nserver in your cluster, replace CATEGRAF_NAMESPACE with namespace value, then run:
kubectl apply -n monitoring -f ks8/daemonset.yaml
kubectl apply -n monitoring -f ks8/sidecar.yaml
Notice: k8s/sidecar.yaml is a demo, replace mock with your own image.
Click on the links to see the README of each plugin.
- system
- kernel
- kernel_vmstat
- linux_sysctl_fs
- cpu
- mem
- net
- netstat
- disk
- diskio
- conntrack
- ntp
- processes
- exec
- ping
- http_response
- net_response
- procstat
- mysql
- redis
- oracle
- rabbitmq
- prometheus
- tomcat
- nvidia_smi
- nginx_upstream_check
- kubernetes(read metrics from kubelet api)
- kube_state_metrics
- nginx_vts
- mongodb
- rocketmq
- activemq
- kafka
- elasticsearch
- windows
- mssql
- iis
- weblogic
- was
- hadoop
- ad
- zookeeper
- statsd
- snmp
- switch_legacy
- ipmi
- smartctl
- logging
- trace
Categraf is developed on the basis of Telegraf and Exporters. Thanks to the great open source community.