Snap - A powerful open telemetry framework

  •        362

Snap is an open telemetry framework designed to simplify the collection, processing and publishing of system data through a single API. The goals of this project are to Empower systems to expose a consistent set of telemetry data, Simplify telemetry ingestion across ubiquitous storage systems, Provide powerful clustered control of telemetry workflows across small or large clusters and lot more.



Related Projects

Vor - Set of services for gathering metrics by polling systems and delivering them to graphite

Vor is a set of services for gathering metrics by polling systems and delivering them to graphite. Currently there is support for polling metrics from Elasticsearch and Redis.

kube-state-metrics - Add-on agent to generate and expose cluster-level metrics.

kube-state-metrics is a simple service that listens to the Kubernetes API server and generates metrics about the state of the objects. (See examples in the Metrics section below.) It is not focused on the health of the individual Kubernetes components, but rather on the health of the various objects inside, such as deployments, nodes and pods.The metrics are exported through the Prometheus golang client on the HTTP endpoint /metrics on the listening port (default 8080). They are served either as plaintext or protobuf depending on the Accept header. They are designed to be consumed either by Prometheus itself or by a scraper that is compatible with scraping a Prometheus client endpoint. You can also open /metrics in a browser to see the raw metrics.

ember-metrics - Send data to multiple analytics integrations without re-implementing new API

This addon adds a simple metrics service to your app that makes it simple to send data to multiple analytics services without having to implement a new API each time. Writing your own adapters for currently unsupported analytics services is easy too. If you'd like to then share it with the world, submit a pull request and we'll add it to the bundled adapters.

node_exporter - Exporter for machine metrics

Prometheus exporter for hardware and OS metrics exposed by *NIX kernels, written in Go with pluggable metric collectors.The WMI exporter is recommended for Windows users.

folsom - Expose Erlang Events and Metrics

Folsom is an Erlang based metrics system inspired by Coda Hale's metrics ( The metrics API's purpose is to collect realtime metrics from your Erlang applications and publish them via Erlang APIs and output plugins. folsom is not a persistent store. There are 6 types of metrics: counters, gauges, histograms (and timers), histories, meter_readers and meters. Metrics can be created, read and updated via the folsom_metrics module.First, regarding using folsom and folsom_webmachine together. To make sure you have compatible versions of each, make sure you use code from the same version tags, ie 0.5 of folsom is known to work with 0.5 folsom_webmachine. HEAD on each repo may have broken API compatibility.

Panopticode - Gathers, Correlats, and displays code metrics

The Panopticode project provides a set of open source tools for gathering, correlating, and displaying code metrics. It evaluates software quality and ensures coding standards. It installs and configures set of tools like Emma or Cobertura for unit test code coverage, Checkstyle to validate the coding standards, JDepend to check the dependency, JavaNCSS for Cyclomatic Complexity metrics.

browser-perf - Performance Metrics for Web Browsers

Read more on why browser-perf here. Please see the wiki pages for more information. You can find information about supported browsers, getting started, command line usage, reference for the Node API etc.

postgresql-metrics - Tool that extracts and provides metrics on your PostgreSQL database

Service to extract and provide metrics on your PostgreSQL database.This tool is a CLI (command line) tool that can be called to extract statistics and create metrics regarding your PostgreSQL database cluster. CLI is runnable in long running process mode, which will periodically send the gathered metrics forward.

DalmatinerDB - Fast distributed metrics database in Erlang

DalmatinerDB is a metric database written in pure Erlang. It takes advantage of some special properties of metrics to make some tradeoffs. Its goal is to make a store for metric data (time, value of a metric) that is fast, has a low overhead, and is easy to query and manage. DalmatinerDB allows for metric input in second or even sub-second precision. It will interpolate the missing values to the best of it’s abilities. This is usually acceptable for aggregated data.

AppMetrics - App Metrics is an open-source and cross-platform

App Metrics is an open-source and cross-platform .NET library used to record metrics within an application. App Metrics can run on .NET Core or on the full .NET framework also supporting .NET 4.5.2. App Metrics abstracts away the underlaying repository of your Metrics for example InfluxDB, Graphite, Elasticsearch etc, by sampling and aggregating in memory and providing extensibility points to flush metrics to a repository at a specified interval.App Metrics provides various metric types to measure things such as the rate of requests, counting the number of user logins over time, measure the time taken to execute a database query, measure the amount of free memory and so on. Metrics types supported are Gauges, Counters, Meters, Histograms and Timers and Application Performance Indexes Apdex.

backstop - HTTP service for submitting metrics to Graphite

Backstop is a simple endpoint for submitting metrics to Graphite. It accepts JSON data via HTTP POST and proxies the data to one or more Carbon/Graphite listeners. Backstop can receive commit data from GitHub post-receive webhooks. Your WebHook URL should consist of the Backstop service URL with the /github endpoint. For example,

PGObserver - A battle-tested, flexible & comprehensive monitoring solution for your PostgreSQL databases

PGObserver is a battle-tested monitoring solution for your PostgreSQL databases. It covers almost all the metrics provided by the database engine's internal statistics collector, and works out of the box with all PostgreSQL versions (beginning with 9.0) as well as AWS RDS. You don’t have to install any non-standard, server-side database extensions to take advantage of its core functionality, nor do you need to register any privileged users.For some metrics you must install data-gathering wrapper functions — also known as stored procedures — on the server being monitored. This will enable you to circumvent the superuser requirements.

mtail - extract whitebox monitoring data from application logs for collection in a timeseries database

mtail is a tool for extracting metrics from application logs to be exported into a timeseries database or timeseries calculator for alerting and dashboarding.It aims to fill a niche between applications that do not export their own internal state, and existing monitoring systems, without patching those applications or rewriting the same framework for custom extraction glue code.

ruby-metrics - Metrics for ruby - a Ruby implementation of metrics inspired by @coda's JVM metrics for those of us in Ruby land

This runs a background thread and enables HTTP access to a local port (8001 by default) for a JSON representation of the current metrics. This will add metrics such as requests (a timer) as well as counters for each class of HTTP status code (1xx, 2xx, etc). Also counts uncaught exceptions before reraising. Provides a configurable path option (:show) to trigger the return of the metrics (as JSON) when the request path matches exactly (a string), as a regular expression, or as any object that responds to call for custom logic (passed the whole env).

go-metrics - A Golang library for exporting performance and runtime metrics to external metrics systems (i

This library provides a metrics package which can be used to instrument code, expose application metrics, and profile runtime performance in a flexible manner. In addition to the sinks, the InmemSignal can be used to catch a signal, and dump a formatted output of recent metrics. For example, when a process gets a SIGUSR1, it can dump to stderr recent performance metrics for debugging.


Stats Collector is an agent-manager system to collect statistics from remote nodes, including standard server metrics as well as any other numerical value. Uses rrdUtils/RRDtool as data backend and to provide visualization capabilities.

zperfmon - zPerfmon

zPerfmon is an app performance analysis suite. It collects production profiles, systems metrics and other data on a periodic basis. It has data visualization and data correlation capabilities which lets you answer questions about performance, health and behavior trends as well. Server - which takes care of ETL-ing, storing and presenting collected data. Data streams can consist of profiles, page hits, system metrics, unqiue user counts or even arbitrary events with timestamps.

pg_view - Get a detailed, real-time view of your PostgreSQL database and system metrics

pg_view is a powerful command-line tool that offers a detailed, real-time view of your PostgreSQL database and system metrics. It combines the indicators commonly displayed by sar or iostat with output from PostgreSQL's process activity view, and presents global and per-process statistics in an easy-to-interpret way.pg_view can be especially helpful when you're monitoring system load, query locks and I/O utilization during lengthy data migrations. It's also useful when you're running servers 24x7 and aiming for zero downtime. Learn more about it at


System Metrics is a Rails 3 Engine that provides a clean web interface to the performance metrics instrumented with ActiveSupport::Notifications