Migrate
Migrate to StatsHouse from the popular monitoring tools such as Grafana and Prometheus.
Learn more about the StatsHouse features.
How to migrate from Grafana
Initially, StatsHouse provided users with the Grafana data source plugin. We discontinued the plugin development—we put our effort to developing StatsHouse visualizing system.
To help our users migrate, we focus on implementing widgets, thresholds, improved table view, support for several metrics on a graph, and more.
To request a feature or to discuss the roadmap, please refer to the support section.
How to migrate from Prometheus
Prometheus and StatsHouse differ so much:
System | Data model | How it works | Push/pull |
---|---|---|---|
Prometheus | stores data as time series | collects metrics from targets by scraping metrics endpoints | pull |
StatsHouse | stores data as aggregates | monitored applications push metric data to the StatsHouse agents, which aggregate it and transfer it further | push |
How can we bring these two systems together? StatsHouse offers a proof of concept for scraping metrics in a Prometheus-like manner.
The user interface for the experimental scraping feature is under development.
See the top-level description below.
Push and pull: how to combine
To bring the "pushing" StatsHouse with the "pulling" Prometheus together, we implemented the following mechanism:
Install a StatsHouse agent on each machine you want to get metrics from, and the agent will scrape metric data from the corresponding machine using the Prometheus configuration file.
Configuration file
A configuration file for scraping metrics in StatsHouse is similar to the common Prometheus configuration file—with the additional fields, such as the namespace to locate the scraped metrics, and some others.
Scraping into the particular namespace
StatsHouse scrapes metrics only into the explicitly specified namespace. StatsHouse never knows the amount of data it can get upon scraping the metrics, so it has to control the budget.
If you try to scrape metrics to a default namespace, you'll get the err_metric_not_found
error (see the
__src_ingestion_status
metric and the status
tag).
How to create metrics (when scraping)
If you specify the namespace in a configuration file, StatsHouse creates the metrics automatically for
this namespace. If you try to scrape metrics to a default namespace, the metrics will not be created (you will get
the err_metric_not_found
error).
How to create tags (when scraping)
For the scraped metrics, tags are extracted automatically. There may be more than 16 tags in each scraped metric, and StatsHouse does not "know" how to map them to the tag IDs.
These extracted tags appear as the draft tags in the Edit section for the metric. Learn how to manually map the draft tag names to the tag IDs.
Metric formats: how to map
The basic Prometheus metric types and StatsHouse metric types differ as well. For migrating purposes, we mapped them so:
Prometheus | StatsHouse |
---|---|
counter → (cumulative) | counter (an aggregate per time interval) |
gauge → | value |
histogram → | histogram (experimental) |
Further details about scraping Prometheus metrics will be provided later.