This tool is designed to consume aggregate metrics from several different cloud providers into a single Elasticsearch instance for graphing and measurement.
This tool is configured through a
sync.yml file that lives in the working directory. See sync.yml.example for more information.
To invoke a sync, run
bin/metricsync. The tool will go out and fetch the latest metrics, and push them into Elasticsearch. It doesn't particularly matter how often you run the sync - all sources generate an ID that will prevent the records from being duplicated in Elasticsearch.
Alternatively, you can run this application with Docker:
docker run -v ./sync.yml:/app/sync.yml lastcallmedia/metrics-sync
The CircleCI source consumes job information from the CircleCI APIs. Specifically, it requests the last N builds and pushes them into an Elasticsearch index.
The Acquia source consumes some of the Stack Metrics data that Acquia's APIs provide. It aggregates them into hourly chunks, and pushes them into an Elasticsearch index.
The New Relic source consumes hourly aggregates for the HTTPDispatcher metrics on New Relic.
This project is an independent effort of Last Call Media, but it was born out of a high-level monitoring need discovered while working on the Mass.gov project.