a9fa3344da | ||
---|---|---|
.github | ||
agent | ||
conf | ||
config | ||
doc | ||
docker | ||
house | ||
inputs | ||
k8s | ||
logs | ||
parser | ||
pkg | ||
prometheus | ||
traces | ||
types | ||
writer | ||
.gitignore | ||
.goreleaser.yaml | ||
LICENSE | ||
Makefile | ||
README.md | ||
go.mod | ||
go.sum | ||
main.go | ||
main_posix.go | ||
main_windows.go |
README.md
Categraf
Categraf is a monitoring agent for nightingale / prometheus / m3db / victoriametrics / thanos / influxdb / tdengine.
Links
Build
# export GO111MODULE=on
# export GOPROXY=https://goproxy.cn
go build
Pack
tar zcvf categraf.tar.gz categraf conf
Run
# 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 &
Deploy categraf as daemonset
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 k8s/daemonset.yaml
kubectl apply -n monitoring -f k8s/sidecar.yaml
Notice: k8s/sidecar.yaml is a demo, replace mock with your own image.
Plugin
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
- traces
Thanks
Categraf is developed on the basis of Telegraf, Exporters and the OpenTelemetry. Thanks to the great open source community.