“VictoriaMetrics Just Works - and Uses Fewer Hardware Resources Compared to Other Tools!”

  • Technology
  • Brazil

Sensedia is a leading integration solutions provider with more than +120 enterprise clients across a range of sectors. Its world-class portfolio includes: an API Management Platform, Adaptive Governance, Events Hub, Service Mesh, Cloud Connectors and Strategic Professional Services teams.

Main Benefits of Using VictoriaMetrics

  • Software That Just Works

  • Great Documentation

  • Good Community Support

Challenge

The requirement is that the metrics be stored for 15 days, be scalable and offer high availability of the metrics.

The solution needed to be integrated into Grafana and allow for the use of PromQL when creating/editing dashboards in Grafana to obtain metrics from the Prometheus read_remote API.

The solution also needed to receive data from Prometheus using HTTPS and to request a login and password to write/read the metrics.

Read More From the Sensedia Team Here

Solution

We read the VictoriaMetrics documentation and watched other use cases, including the lecture given by an adidas employee at PromCon 2019 (https://www.youtube.com/watch?v=OsH6gPdxR4s). We presented our first impressions to the Cloud Architects team and together we decided to do a Proof of Concept (PoC) in our testing environment.

We analyzed the performance for one month.

The next step was the implementation of the solution in our production environment days before the start of BlackFriday in 2020 which is the period of highest use of the Sensedia API-Platform by customers in the whole year.

We set a record in the generation of metrics with no instability in the monitoring stack.

Read More From the Sensedia Team Here

Why VictoriaMetrics Was Chosen Over Other Solutions

  • Open Source

  • SaaS & On-Premise Offer

  • Great Documentation

  • Good Community Support in Slack

  • It is efficient and uses fewer hardware resources compared with other tools
  • Installation supported in Docker containers
  • Helm chart available for installation in Kubernetes cluster
  • Compatible with the Prometheus query syntax so we didn't need to redo our dashboards in Grafana
  • Compatibility with the Prometheus write_remote API
  • Support for TLS encryption when writing and reading metrics
  • Authentication for writing or reading metrics using the vmauth module

Technical Stats

  • Active Time Series

    sum(vm_cache_entries{type="storage/hour_metric_ids"})

    N/A

  • Ingestion Rate

    sum(rate(vm_rows_inserted_total[5m]))

    68.684

  • Total Number of Datapoints

    sum(vm_rows{type=~"storage/.+"})

    112.464.000.000

  • Total Number of Entries in Inverted Index

    sum(rate(vm_rows_inserted_total[5m]))

    1.043.263.000

  • Daily Time Series Churn Rate

    sum(increase(vm_new_timeseries_created_total[24h]))

    3.257.900

  • Data Size on Disk

    sum(vm_data_size_bytes{type=~"storage/.+"})

    82.253.000.000

  • Index Size on Disk

    sum(vm_data_size_bytes{type="indexdb"})

    30.725.800.000

  • Average Datapoint Size on Disk

    sum(vm_data_size_bytes) / sum(vm_rows{type=~"storage/.+"})

    1.00461

  • Range Query Rate

    sum(rate(vm_http_requests_total{path=~".*/api/v1/query_range"}[5m]))

    0.0300

  • Instant Query Rate

    sum(rate(vm_http_requests_total{path=~".*/api/v1/query"}[5m]))

    0

  • Range Query Duration Quantiles

    max(vm_request_duration_seconds{path=~".*/api/v1/query_range"}) by (quantile)

    {quantile="1"} 0.492 {quantile="0.5"} 0.265 {quantile="0.9"} 0.430 {quantile="0.97"} 0.492 {quantile="0.99"} 0.492

  • Instant Query Duration Quantiles

    max(vm_request_duration_seconds{path=~".*/api/v1/query"}) by (quantile)

    N/A