Skip to main content

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:

SystemData modelHow it worksPush/pull
Prometheusstores data as time seriescollects metrics from targets by scraping metrics endpointspull
StatsHousestores data as aggregatesmonitored 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.

info

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:

PrometheusStatsHouse
counter →
(cumulative)
counter
(an aggregate per time interval)
gauge →value
histogram →histogram (experimental)

Further details about scraping Prometheus metrics will be provided later.