All Projects → rchakode → atop-graphite-grafana-monitoring

rchakode / atop-graphite-grafana-monitoring

Licence: Apache-2.0 License
Tools to extract raw system counters from atop, aggregate them to generate high level performance metrics, whose are then injected into a Graphite database and visualize through Grafana dashboards.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to atop-graphite-grafana-monitoring

Appmetrics
App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.
Stars: ✭ 1,986 (+13140%)
Mutual labels:  grafana, graphite, grafana-dashboard
victoriametrics-ru-links
Список постов и видеозаписей об VictoriaMetrics на русском языке
Stars: ✭ 1 (-93.33%)
Mutual labels:  grafana, grafana-dashboard
Prometheus-grafana
Monitor your Kubernetes cluster resources and applications
Stars: ✭ 21 (+40%)
Mutual labels:  grafana, grafana-dashboard
nifi-prometheus-reporter
A reporting task in Nifi which is capable of sending monitoring statistics as prometheus metrics to a prometheus pushgateway.
Stars: ✭ 48 (+220%)
Mutual labels:  grafana, grafana-dashboard
burrow-kafka-dashboard
Kubernetes Kafka Overview, Burrow consumer lag stats, Kafka disk usage
Stars: ✭ 37 (+146.67%)
Mutual labels:  grafana, grafana-dashboard
kafka-consumer-lag-monitoring
Client tool that exports the consumer lag of Kafka consumer groups to Prometheus or your terminal
Stars: ✭ 45 (+200%)
Mutual labels:  grafana, grafana-dashboard
grafana-stack
Tiny docker images for graphite, grafana and statsdly
Stars: ✭ 28 (+86.67%)
Mutual labels:  grafana, graphite
gitana
Gitana is a lightweight dashboard sync
Stars: ✭ 61 (+306.67%)
Mutual labels:  grafana, grafana-dashboard
monitoring-rancher
🤠How to Set up Rancher Server Monitoring with TIG Stack?
Stars: ✭ 22 (+46.67%)
Mutual labels:  grafana, server-monitoring
fronius-to-influx
Collect Fronius inverter data and save in Influxdb for Grafana
Stars: ✭ 31 (+106.67%)
Mutual labels:  grafana, grafana-dashboard
nfCollector
Collects Netflow version 1, 5, 6, 7, 9 & IPFIX & stores them on InfluxData time-series DB (InfluxDB)
Stars: ✭ 30 (+100%)
Mutual labels:  grafana, grafana-dashboard
idrac snmp-grafana
SNMP Based Dashboard to Monitor Dell Hosts via iDRAC
Stars: ✭ 88 (+486.67%)
Mutual labels:  grafana, grafana-dashboard
yearn-exporter
Realtime and historical Yearn metrics
Stars: ✭ 80 (+433.33%)
Mutual labels:  grafana, grafana-dashboard
grafana-aws-cost-explorer-backend
Grafana Backend for AWS Cost Explorer
Stars: ✭ 24 (+60%)
Mutual labels:  grafana, grafana-dashboard
netdata-influx
Netdata ➡️ InfluxDB metrics exporter & Grafana dashboard
Stars: ✭ 29 (+93.33%)
Mutual labels:  grafana, grafana-dashboard
tado-exporter
A Prometheus exporter for tado smart heating solution
Stars: ✭ 32 (+113.33%)
Mutual labels:  grafana, grafana-dashboard
docker-graphite
Run Graphite with Docker
Stars: ✭ 15 (+0%)
Mutual labels:  grafana, graphite
Pagerbeauty
📟✨ PagerDuty on-call widget for monitoring dashboard. Datadog and Grafana compatible
Stars: ✭ 250 (+1566.67%)
Mutual labels:  grafana, grafana-dashboard
Netdata
Real-time performance monitoring, done right! https://www.netdata.cloud
Stars: ✭ 57,056 (+380273.33%)
Mutual labels:  grafana, graphite
grafonnet-playground
Playground for grafanna with jsonnet
Stars: ✭ 25 (+66.67%)
Mutual labels:  grafana, grafana-dashboard

Overview

This toolset enables to extract raw counters from atop, aggregate them to generate high level performance metrics, which are then injected into a Graphite database to be finally visualized through the Graphite Web UI, or even better, through Grafana, the widely-used open source visualization tool.

Before you start

You will need to have:

  • A working Graphite installation. And specifically, the Carbon Cache Daemon (carbon-cache.py) should be reachable through the following environement variables:
    • CARBON_CACHE_SERVER: should be set with the IP address or the hostname of the server hosting Carbon Cache.
    • CARBON_CACHE_PICKLE_PORT: should be set with the port of the pickle receiver of Carbon Cache.
  • A working Grafana installation, if you want to use Grafana instead of the native Graphine UI, for the visualization

Getting Started Collecting Metrics

Log in to the machine where you want to collect performance metrics and run the following command:

$ atop -P NET,MEM,CPU,cpu | \
       collect_atop_counters.sh | \
       push_graphite_formatted_data_live.py

Currently collected counters are related to network, memory and CPU are resources and the aggregated metrics are:

  • CPU Usage: system-wide and per core.
  • Memory Usage: system-wide.
  • Network Bandwidth: send/receive, system-wide and per interface.
  • Network Packets: send/receive, system-wide and per interface.

By default atop counters are collected every second. You can change this interval by setting the environment variable ATOP_UPDATE_INTERVAL with another duration in seconds.

For example to change the interval to 5 seconds, you can use the following command:

$ ATOP_UPDATE_INTERVAL=5 \
       atop -P NET,MEM,CPU,cpu | \
       collect_atop_counters.sh | \
       push_graphite_formatted_data_live.py

Then go to the next step to learn who to visualize collected metrics.

Dashboard & Metric Visualization

The collected metrics can be visualized through Graphite Web UI out-of-the-box.

You can also use Grafana for the visualization by proceeding as follows:

  • Log into Grafana
  • If not yet the case, configure your Graphite installation as data source.
  • Download and import this dashboard template which is already configured to enable the visualization of the collected metrics out-of-the-box.
  • Open the dashboard and enjoy!

Copyrights

This project bas been initiated by Rodrigue Chakode, who also created RealOpInsight.

The software is licensed under the terms of Apache 2.0 License.

Please note that Graphite and Grafana are third-party systems with their respective licenses and terms of use.

Contributions

Contributions are welcome!

  • Give a feedback, report a problem, or give a star are good starting points to start contributing.
  • You can also contribute bug patches or new features. In this case, please can use the Github Pull Request model. It is assumed that code and documentation are contributed under the Apache License 2.0.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].