All Projects → m3db → M3

m3db / M3

Licence: apache-2.0
M3 monorepo - Distributed TSDB, Aggregator and Query Engine, Prometheus Sidecar, Graphite Compatible, Metrics Platform

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects
HTML
75241 projects
Makefile
30231 projects
javascript
184084 projects - #8 most used programming language
TLA
29 projects

Projects that are alternatives of or similar to M3

Graphite exporter
Server that accepts metrics via the Graphite protocol and exports them as Prometheus metrics
Stars: ✭ 217 (-94.43%)
Mutual labels:  metrics, prometheus, graphite
Graylog Plugin Metrics Reporter
Graylog Metrics Reporter Plugins
Stars: ✭ 71 (-98.18%)
Mutual labels:  metrics, prometheus, graphite
Appmetrics
App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.
Stars: ✭ 1,986 (-49.05%)
Mutual labels:  metrics, prometheus, graphite
Hastic Server
Hastic data management server for analyzing patterns and anomalies from Grafana
Stars: ✭ 292 (-92.51%)
Mutual labels:  metrics, prometheus, graphite
Victoriametrics
VictoriaMetrics: fast, cost-effective monitoring solution and time series database
Stars: ✭ 5,558 (+42.59%)
Mutual labels:  tsdb, prometheus, graphite
gateway
A proxy to buffer and forward metrics, events, and traces.
Stars: ✭ 94 (-97.59%)
Mutual labels:  metrics, graphite, prometheus
Vulcan
Vulcan extends Prometheus adding horizontal scalability and long-term storage
Stars: ✭ 539 (-86.17%)
Mutual labels:  tsdb, metrics, prometheus
Cernan
telemetry aggregation and shipping, last up the ladder
Stars: ✭ 306 (-92.15%)
Mutual labels:  metrics, prometheus, graphite
chef-prometheus-exporters
No description or website provided.
Stars: ✭ 35 (-99.1%)
Mutual labels:  metrics, prometheus
Metrics
Lightweight alternative to github.com/prometheus/client_golang
Stars: ✭ 254 (-93.48%)
Mutual labels:  metrics, prometheus
Questdb
An open source SQL database designed to process time series data, faster
Stars: ✭ 7,544 (+93.54%)
Mutual labels:  metrics, tsdb
Consul exporter
Exporter for Consul metrics
Stars: ✭ 323 (-91.71%)
Mutual labels:  metrics, prometheus
request log analyzer
Extract some performance metrics from the request.log of a CQ/AEM instance. It can be used as an alternative to or in addition to `rlog.jar`.
Stars: ✭ 27 (-99.31%)
Mutual labels:  graphite, prometheus
Service Level Operator
Manage application's SLI and SLO's easily with the application lifecycle inside a Kubernetes cluster
Stars: ✭ 260 (-93.33%)
Mutual labels:  metrics, prometheus
docker-jmx-prometheus-exporter
Dockerized jmx-exporter for prometheus
Stars: ✭ 24 (-99.38%)
Mutual labels:  metrics, prometheus
Prometheus.erl
Prometheus.io client in Erlang
Stars: ✭ 276 (-92.92%)
Mutual labels:  metrics, prometheus
Opentelemetry Rust
OpenTelemetry API and SDK for Rust
Stars: ✭ 280 (-92.82%)
Mutual labels:  metrics, prometheus
rust-statsd-server
A statsd server implemented in Rustlang
Stars: ✭ 16 (-99.59%)
Mutual labels:  metrics, graphite
Kube State Metrics
Add-on agent to generate and expose cluster-level metrics.
Stars: ✭ 3,433 (-11.93%)
Mutual labels:  metrics, prometheus
Prometheus.ex
Prometheus.io Elixir client
Stars: ✭ 343 (-91.2%)
Mutual labels:  metrics, prometheus

M3

GoDoc Build Status FOSSA Status

M3 Logo

Distributed TSDB and Query Engine, Prometheus Sidecar, Metrics Aggregator, and more such as Graphite storage and query engine.

Table of Contents

More Information

Community Meetings

M3 contributors and maintainers have regular meetings. Join our M3 meetup group to receive notifications on upcoming meetings: https://www.meetup.com/M3-Community/.

You can find recordings of past meetups here: https://vimeo.com/user/120001164/folder/2290331.

Office Hours

Members of the M3 team hold office hours on the third Thursday of every month from 11AM to 1PM Eastern Standard Time (EST). To join, make sure to sign up for a slot here: https://calendly.com/chronosphere-intro/m3-community-office-hours.

Install

Dependencies

The simplest and quickest way to try M3 is to use Docker, read the M3 quickstart section for other options.

This example uses jq to format the output of API calls. It is not essential for using M3DB.

Usage

The below is a simplified version of the M3 quickstart guide, and we suggest you read that for more details.

  1. Start a Container
docker run -p 7201:7201 -p 7203:7203 --name m3db -v $(pwd)/m3db_data:/var/lib/m3db quay.io/m3db/m3dbnode:v1.0.0
  1. Create a Placement and Namespace
#!/bin/bash
curl -X POST http://localhost:7201/api/v1/database/create -d '{
  "type": "local",
  "namespaceName": "default",
  "retentionTime": "12h"
}' | jq .
  1. Ready a Namespace
curl -X POST http://localhost:7201/api/v1/services/m3db/namespace/ready -d '{
  "name": "default"
}' | jq .
  1. Write Metrics
#!/bin/bash
curl -X POST http://localhost:7201/api/v1/json/write -d '{
  "tags": 
    {
      "__name__": "third_avenue",
      "city": "new_york",
      "checkout": "1"
    },
    "timestamp": '\"$(date "+%s")\"',
    "value": 3347.26
}'
  1. Query Results

Linux

curl -X "POST" -G "http://localhost:7201/api/v1/query_range" \
  -d "query=third_avenue" \
  -d "start=$(date "+%s" -d "45 seconds ago")" \
  -d "end=$( date +%s )" \
  -d "step=5s" | jq .  

macOS/BSD

curl -X "POST" -G "http://localhost:7201/api/v1/query_range" \
  -d "query=third_avenue > 6000" \
  -d "start=$(date -v -45S "+%s")" \
  -d "end=$( date +%s )" \
  -d "step=5s" | jq .

Contributing

You can ask questions and give feedback in the following ways:

M3 welcomes pull requests, read contributing guide to help you get setup for building and contributing to M3.


This project is released under the Apache License, Version 2.0.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].