Counter - Collector
About
Metrics collector query and collects metrics in order to be able to send them to a metrics server
Log Collector may also derived, create and load metrics.
The list below may mix metrics and log collector.
List
Instrumentation
In a instrumented application, reporter are a client piece of code which:
- process its internal registry's metrics periodically
- and publish the metrics to be queried or send them
Agent
Agent are daemon that:
- collects system and application performance metrics periodically from instrumented application
- and provides mechanisms to store/send the values in a variety of ways.
Pipeline
Pipeline agent are agent where you can create a pipeline with input and ouput
Name | Language | OS | Description |
---|---|---|---|
Vector (DataDog) | Rust | Linux and Windows | |
MetricBeat (Elastic Metric Oriented Beat Module) | Go | Linux and Windows | Only Elastic Search and Logstash Output |
FileBeat (Elastic Log Oriented Beat Module) | Go | Linux and Windows | Only Elastic Search and Logstash Output |
LogStash (Elastic Log Oriented) | Java / Ruby | Linux and Windows | |
Fluentd (Calyptia) | C | Linux and Windows | |
FluentBit (Calyptia) | C | Linux and Windows | Fluentd successor with smaller memory footprint 1) |
Telegraf (Influx) | Go | Linux and Windows | |
collectd | C | Only Linux |
Server
Server does not query the source but listen to accept metrics from client. Client must run and sends metrics to the daemon.
Name | Language | OS | Description |
---|---|---|---|
Riemann | Clojure | ? | monitors distributed systems. A network event stream processing system |
Loss Agent
Loss agent are agent that collect metrics and are not part of a monitoring platform.
Name | Description |
---|---|
Prometheus Exporter | Export Metrics in a http page. The server scrapes the metrics page (It can forward the metrics instead of storing them) |
Platform Agent
All Monitor platform have agent that will collect metrics.
Example:
- DataDog
- …
Snmp
This collector works mostly via the SNMP protocol to gather metrics.
Name | Language | OS | Description |
---|---|---|---|
Cacti | Php / SNMP | Linux and Windows | Network monitoring: There is only one client called Poller 4) and is run by cron to collect mostly SNMP data, write only to RRD/MySQL database |
Munin | Perl /SNMP | ? | Network Monitoring: Write only to RRD |
Jrds | Java | Linux and Windows | Write only to RRD - See probes (collect, store, graph) config |
Command line Utility
Command line utility can also be used and are OS dependent.
For instance:
- for windows:
- for linux, see the dedicated page: What are the Metrics / Counters of Linux ?
Protocol
Every protocol (language) can be used to query counter but there is some specialized to do that such as:
- Http (for Prometheus Exporter)