Tendril

From Wikitech

Tendril is a tool for analytics and performance tuning of the MariaDB servers, developed by Springle (with features added in an ad-hoc fashion as required) and used by the DBA team. For security reasons it is only accessible to people with NDA.

Service

  • Front end (vanilla PHP) runs on neon.
  • Backend database presently on db1044.eqiad.wmnet using MariaDB event scheduler and FEDERATEDX engine.
  • Uses a pull method for monitoring with one watchdog database client connection to each host.
  • Entirely and intentionally separate from ganglia and mediawiki-config to allow sanity checks both ways.
  • Complements Ishmael for query tuning.
  • Uses Labs LDAP for authentication (restricted to people with NDA).

Features

It houses a lot of functionality, but here are a few highlighted features:

Reports

https://tendril.wikimedia.org/report

There are many different report views, such as:

  • Slow queries. E.g. Slow queries from MediaWiki requests
  • An ad-hoc cluster-wide INFORMATION SCHEMA view (mostly standard schema plus server_id field).
  • Cluster-wide query process list close to real time (10s intervals).

Replication tree

Based on actual reported configuration (no dependence on coredb or wmf-config/db-eqiad.php)

Host viewer

https://tendril.wikimedia.org/host

Information about each database host (e.g. IP, RAM, uptime) and interactive graphs and charts indicating their recent query activity and various InnoDB statistics.

Also linked to from most other reports.

External link