Need advice about which tool to choose?Ask the StackShare community!
Graphite vs StatsD vs Statsite: What are the differences?
Data Storage Mechanism: Graphite stores data in a Whisper database, which is a fixed-size database optimized for insertion speed. StatsD aggregates data on the fly and sends it to a monitoring system, while Statsite uses in-memory storage for metrics before sending it to a backend system.
Aggregation Methods: Graphite focuses on data storage and graphing, while StatsD and Statsite focus on real-time aggregation and transmission of metrics. StatsD offers a range of aggregation methods, such as counting, gauges, timing, and sets, while Statsite provides a more simplified set of aggregation methods.
Programming Language: Graphite is primarily written in Python and relies on web technologies like Django for its frontend, while StatsD is written in Node.js. Statsite is developed in C for high performance and low resource consumption, making it suitable for environments with limited resources.
Data Sampling: StatsD allows for data sampling by specifying a sample rate, which can help reduce the volume of data transmitted to the monitoring system. Graphite does not natively support data sampling, while Statsite has limited support for data sampling based on configuration settings.
Data Transmission Protocol: StatsD uses UDP for sending metrics, which is a connectionless protocol suitable for low-latency, high-throughput data transmission. Graphite supports different protocols like plaintext and pickle for data submission, while Statsite uses TCP for transmitting metrics to backend systems.
Extensibility and Plugins: StatsD has a rich ecosystem of plugins and integrations, making it easy to extend its functionality with third-party tools. Graphite and Statsite have limited plugin support compared to StatsD, which can limit their flexibility in integrating with other systems.
In Summary, Graphite focuses on data storage and visualization, StatsD specializes in real-time aggregation and transmission of metrics, while Statsite excels in high-performance metric processing with low resource usage.
Looking for a tool which can be used for mainly dashboard purposes, but here are the main requirements:
- Must be able to get custom data from AS400,
- Able to display automation test results,
- System monitoring / Nginx API,
- Able to get data from 3rd parties DB.
Grafana is almost solving all the problems, except AS400 and no database to get automation test results.
You can look out for Prometheus Instrumentation (https://prometheus.io/docs/practices/instrumentation/) Client Library available in various languages https://prometheus.io/docs/instrumenting/clientlibs/ to create the custom metric you need for AS4000 and then Grafana can query the newly instrumented metric to show on the dashboard.
Pros of Graphite
- Render any graph16
- Great functions to apply on timeseries9
- Well supported integrations8
- Includes event tracking6
- Rolling aggregation makes storage managable3
Pros of StatsD
- Open source9
- Single responsibility7
- Efficient wire format5
- Handles aggregation3
- Loads of integrations3
- Many implementations1
- Scales well1
- Simple to use1
- NodeJS1
Pros of Statsite
Sign up to add or upvote prosMake informed product decisions
Cons of Graphite
Cons of StatsD
- No authentication; cannot be used over Internet1