Tarantool dashboard

Dashboard

Dashboard for Tarantool application and database server monitoring, based on grafonnet library.
Last updated: 7 days ago

Start with Grafana Cloud and the new FREE tier. Includes 10K series Prometheus or Graphite Metrics and 50gb Loki Logs

Downloads: 198

Reviews: 0

  • Prometheus_dashboard_3.png
    Prometheus_dashboard_3.png
  • Prometheus_dashboard_2.png
    Prometheus_dashboard_2.png
  • Prometheus_dashboard_1.png
    Prometheus_dashboard_1.png

About project

This dashboard is based on grafonnet library. Sources are available in project's GitHub page.

Configuration

The dashboard is designed to work with Tarantool + Prometheus + Grafana cluster.

Tarantool configuration

The dashboard is designed to work with Tarantool metrics module (v0.13.0 or newer is needed for complete experience). It is recommended to use metrics role (refer to cartridge.roles.metrics role page for instructions). Be sure to set alias for every Tarantool instance (e.g. by environment variable TARANTOOL_ALIAS) so metrics will be splitted and displayed correctly.

Cartridge must be configured to have a prometheus metrics endpoint for Prometheus (refer to cartridge.roles.metrics role page for instructions). For HTTP panels, HTTP routing middleware with summary collector must be enabled. (See more on HTTP middleware in metrics documentation and Cartridge role example.)

To support CRUD statistics, install CRUD 0.11.1 or newer. Call crud.cfg{stats = true, stats_driver='metrics', stats_quantiles=true} on router to enable CRUD statistics collect with latency quantiles.

Dashboard

Metrics used in dashboard are based on Tarantool metrics module. Time series are grouped by alias parameter, so you can use this dashboard to monitor a cluster of Tarantool instances.

Dashboard contains the following sections:

  • Cluster overview
  • Tarantool HTTP statistics
  • Tarantool network activity
  • Tarantool memtx allocation overview
  • Tarantool vinyl statistics
  • Tarantool CPU statistics
  • Tarantool runtime overview
  • Tarantool LuaJit statistics
  • Tarantool operations statistics
  • CRUD module statistics

Cluster overview

Contains several cluster overview panels, providing some aggregated info on cluster instances health, overall load and memory stats. Also contains panels on Cartridge issues count, replication lag and status, read only status and instances clock delta.

Tarantool HTTP statistics

Overview of processed HTTP requests on Tarantool's side, grouped by method, path and response code. There are two lines of panels: one on rps and the other on 99th percentile of latency.

Tarantool network activity

Overview of instances network activity. Displays input and output data load, as well as network connections, detailed requests stats and memory consumption.

Tarantool memtx allocation overview

Overview of Tarantool memtx memory allocation (tuples and indexes). Contains short instruction on memory allocation monitoring. You can read more about slab here.

Tarantool vinyl statistics

Overview of Tarantool vinyl memory and disk allocation, vinyl scheduler process and transaction statistics. You can read more about vinyl engine here.

Tarantool CPU statistics

Contains CPU process time statistics for each instance.

Tarantool runtime overview

Metrics related to runtime. Contains Lua and transaction memory panels, fiber statistics panels and event loop panel.

Tarantool LuaJit statistics

Detailed Lua runtime overview. Contains panels about objects allocation and garbage collect, memory consumption and LuaJit traces info.

Tarantool operations statistics

Overview of operations on Tarantool spaces (select, update, etc.) aggregated over all Tarantool spaces, as well as other operations activity (eval, call, auth, errors and SQL calls).

CRUD module statistics

Overview of CRUD module operations (crud.insert, crud.select, etc) separated by operation, cluster space and execution status. Contains RPS graphs, latency graphs and graphs with SELECT/PAIRS operations detailed info.

Contributing

Project is open-sourced, so you can freely file an issue with suggestion or bug report to our GitHub page.

Get this dashboard:
13054
Dependencies: