Integrations
Prometheus
This document is a getting started guide to integrating M3DB with Prometheus. M3 Coordinator configuration To write to a remote M3DB cluster the simplest configuration is to run m3coordinator as a sidecar alongside Prometheus. Start by downloading the config template. Update the namespaces and the client section for a new cluster to match your cluster’s configuration. You’ll need to specify the static IPs or hostnames of your M3DB seed nodes, and the name and retention values of the namespace you set up.
Graphite
This document is a getting started guide to integrating the M3 stack with Graphite. Overview M3 supports ingesting Graphite metrics using the Carbon plaintext protocol. We also support a variety of aggregation and storage policies for the ingestion pathway (similar to storage-schemas.conf when using Graphite Carbon) that are documented below. Finally, on the query side, we support the majority of graphite query functions. Ingestion Setting up the M3 stack to ingest carbon metrics is straightforward.
Grafana
M3 supports a variety of Grafana integrations. Prometheus / Graphite Sources M3Coordinator can function as a datasource for Prometheus as well as Graphite. See the Prometheus integration and Graphite integration documents respectively for more information. Pre-configured Prometheus Dashboards All M3 applications expose Prometheus metrics on port 7203 by default as described in the Prometheus integration guide, so if you’re already monitoring your M3 stack with Prometheus and Grafana you can use our pre-configured dashboards.
InfluxDB
This document is a getting started guide to integrating InfluxDB data pipelines with M3. Writing metrics using InfluxDB line protocol To write metrics to M3 using the InfluxDB line protocol, simply form the request as you typically would line separated and POST the body to /api/v1/influxdb/write on the coordinator. Note that timestamp is in nanoseconds from Unix epoch. This example writes two metrics weather_temperature and weather_wind using the current time in nanoseconds as the timestamp: