How to use Graphite to monitor your servers
Graphite is an enterprise-ready monitoring tool that runs equally well on cheap hardware or Cloud infrastructure.
Graphite to track the performance of their websites, applications, business services, and networked servers.
The start of a new generation of monitoring tools, making it easier than ever to store, retrieve, share, and visualize time-series data.
We’re using Graphite heavily in our project. Starting from browsers-related numbers, our hosting infrastructure to things linked purely to web applications which seems to be the most common use case.
Graphite is not a collection agent, but it offers the simplest path for getting your measurements into a time-series database.You can reach points where it isn’t working as it should and to diagnose culprit easily proper monitoring needs to be installed with dashboards to spot anomalies right away.
Right know list of collectors used by us to monitor instances of Graphite is as follows:
- FilestatCollector
- CPUCollector
- DiskSpaceCollector
- DiskUsageCollector
- MemoryCollector
- VMStatCollector
- LoadAverageCollector
- NetworkCollector
Metrics come and go. There are things you want to monitor forever like number of users signing in to your application. On the other end site information not needed anymore or purely ephemeral used to debug particular issue.
**** It’s highly recommended that you run Graphite on a server with solid state disks.
**** Enable and configure mod_deflate in Apache to reduce the amount of data that needs to be sent from the server to the client for each request.
**** You can speed up your Grafana site a bit by enabling mod_expires in Apache Drag-and-drop
**** UI Builder to produce modern, responsive user interfaces and portals.
**** Visual Entity Builder to define all application data requirements and relationships.
**** Seamless synchronization mechanism for new content upgrades.
**** Automatic generation of fully documented, standards-based, predictable applications.
**** Integrated graphical testing suite.
Graphite consists of three major components:
carbon – a high-performance service that listens for time-series data
whisper – a simple database library for storing time-series data
graphite-web – Graphite’s user interface & API for rendering graphs and dashboards
Metrics get into the Carbon service, which writes the data out to Whisper databases for long-term storage. Users interact with the Graphite web UI or API, which in turn queries Carbon and Whisper for the data needed to construct the requested graphs.
Graphite’s web platform offers a variety of output styles and formats, including raw images, CSV, XML, and JSON, allowing anyone to easily embed custom graphs in other web pages or dashboards.