Displaying 1 to 20 from 73 results

rpcx - A RPC service framework based on net/rpc like alibaba Dubbo and weibo Motan

  •    Go

go get -u -v github.com/smallnest/rpcx/...rpcx is a distributed RPC framework like Alibaba Dubbo and Weibo Motan. It is based on Go net/rpc and provides extra governance features.

whisper - Whisper is a file-based time-series database format for Graphite.

  •    Python

Whisper is a fixed-size database, similar in design and purpose to RRD (round-robin-database). It provides fast, reliable storage of numeric data over time. Whisper allows for higher resolution (seconds per point) of recent data to degrade into lower resolutions for long-term retention of historical data.Please refer to the instructions at readthedocs.

carbon - Carbon is one of the components of Graphite, and is responsible for receiving metrics over the network and writing them down to disk using a storage backend

  •    Python

Carbon is responsible for receiving metrics over the network, caching them in memory for "hot queries" from the Graphite-Web application, and persisting them to disk using the Whisper time-series library.Please refer to the instructions at readthedocs.

icinga2 - The heart of our monitoring platform with a powerful configuration language and REST API.

  •    C++

Icinga 2 is an open source monitoring system which checks the availability of your network resources, notifies users of outages, and generates performance data for reporting. Scalable and extensible, Icinga 2 can monitor large, complex environments across multiple locations.




facette - Time series data visualization software

  •    Go

Facette is a open source web application to display time series data from various sources — such as collectd, Graphite, InfluxDB or KairosDB — on graphs. To learn more on its architecture, read this page. The source code is available at Github and is licensed under the terms of the BSD license.

Cabot - Self-hosted, easily-deployable monitoring and alerts service - like a lightweight PagerDuty

  •    Javascript

It provides a web interface that allows you to monitor services (e.g. "Stage Redis server", "Production ElasticSearch cluster") and send telephone, sms or hipchat/email alerts to your on-duty team if those services start misbehaving or go down - all without writing a line of code. Best of all, you can use data that you're already pushing to Graphite/statsd to generate alerts, rather than implementing and maintaining a whole new system of data collectors.We built Cabot as a Christmas project at Arachnys because we couldn't wrap our heads around Nagios, and nothing else out there seemed to fit our use case. We're open-sourcing it in the hope that others find it useful.

go-carbon - Golang implementation of Graphite/Carbon server with classic architecture: Agent -> Cache -> Persister

  •    Go

Faster than default carbon. In all conditions :) How much faster depends on server hardware, storage-schemas, etc. There were some efforts to find out maximum possible performance of go-carbon on a hardware (2xE5-2620v3, 128GB RAM, local SSDs).


carbonate - Utilities for managing graphite clusters

  •    Python

Graphite clusters are pretty cool. Here are some primitive tools to help you manage your graphite clusters.All of the tools support two common arguments; the path to a config file, and the name of the cluster. Using these tools alongside a config file that describes your graphite clusters you can build up scripts to manage your metrics. Some of the tools could easily be replaced with one-liners in shell, but exist here for convenience and readability. The goal is to provide fast, predictable utilities that can easily be composed into more advanced tooling.

ceres - Distributable time-series database (not actively maintained)

  •    Python

Ceres is not actively maintained.Ceres is a time-series database format intended to replace Whisper as the default storage format for Graphite. In contrast with Whisper, Ceres is not a fixed-size database and is designed to better support sparse data of arbitrary fixed-size resolutions. This allows Graphite to distribute individual time-series across multiple servers or mounts.

ceph-dash - Flask based api / dashboard for viewing a ceph clusters overall health status

  •    Javascript

This is a small and clean approach of providing the Ceph overall cluster health status via a restful json api as well as via a (hopefully) fancy web gui. There are no dependencies to the existing ceph-rest-api. This wsgi application talks to the cluster directly via librados. You can find a blog entry regarding monitoring a Ceph cluster with ceph-dash on Crapworks.

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

  •    Python

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.

carbon-relay-ng - Fast carbon relay+aggregator with admin interfaces for making changes online - production ready

  •    Go

First: "matching": you can match metrics on one or more of: prefix, substring, or regex. All 3 default to "" (empty string, i.e. allow all). The conditions are AND-ed. Regexes are more resource intensive and hence should - and often can be - avoided. All incoming metrics are validated and go into the table when valid.

carbon-c-relay - Enhanced C implementation of Carbon relay, aggregator and rewriter

  •    C

carbon-c-relay accepts, cleanses, matches, rewrites, forwards and aggregates graphite metrics by listening for incoming connections and relaying the messages to other servers defined in its configuration. The core functionality is to route messages via flexible rules to the desired destinations. carbon-c-relay is a simple program that reads its routing information from a file. The command line arguments allow to set the location for this file, as well as the amount of dispatchers (worker threads) to use for reading the data from incoming connections and passing them onto the right destination(s). The route file supports two main constructs: clusters and matches. The first define groups of hosts data metrics can be sent to, the latter define which metrics should be sent to which cluster. Aggregation rules are seen as matches.

metrictank - Cassandra-backed, metrics2

  •    Go

Metrictank is a multi-tenant timeseries engine for Graphite and friends. It provides long term storage, high availability, efficient storage, retrieval and processing for large scale environments. GrafanaLabs has been running metrictank in production since December 2015. It currently requires an external datastore like Cassandra, and we highly recommend using Kafka to support clustering, as well as a clustering manager like Kubernetes. This makes it non-trivial to operate, though GrafanaLabs has an on-premise product that makes this process much easier.

cernan - telemetry aggregation and shipping, last up the ladder

  •    Rust

Cernan is a telemetry and logging aggregation server. It exposes multiple interfaces for ingestion and can emit to multiple aggregation sources while doing in-flight manipulation of data. Cernan has minimal CPU and memory requirements and is intended to service bursty telemetry without load shedding. Cernan aims to be reliable and convenient to use, both for application engineers and operations staff. If you'd like to learn more, please do have a look in our wiki.

graphite - Development repository for the graphite cookbook

  •    Ruby

See default attributes for platform specific packages installed. You can override the node['graphite']['package_names'][#{name}]['source'] attribute, where #{name} is one of whisper, carbon or graphite_web, to set a custom install path. By default a source install will use the github master branch.

puppet-metrics-viewer - A CLI tool for generating visualizations of your Puppet metrics data

  •    Ruby

This repo contains a CLI tool for generating visualizations of your puppet metrics data. It assumes you have collected the metrics using npwalker/pe_metric_curl_cron_jobs.The json2graphite.rb script can be used to transform data in JSON files into a format that can be fed into Graphite.

funnel - An easy way to fetch aggregate metrics from various sources, and transport them into StatsD

  •    Javascript

An easy way to fetch aggregate metrics from various sources, and transport them into StatsD. Support for additional sources is always welcome.

rust-statsd-server - A statsd server implemented in Rustlang

  •    Rust

This is a statsd server implementation written in rust. It aims to be as compatible as possible with etsy/statsd. After cloning the repository you can run either the unit tests, and or the integration tests. The integration tests require python 2.7 and that port 8125 be free on your system.