Monitoring RethinkDB

This section is all about the tools that you can use to monitor and understand the events that occur in the lifetime of your RethinkDB cluster.

Once you have a web application up and running, how do you know what it's doing? System tables to the rescue!

RethinkDB provides us with some system tables that we can query to learn about the issues that affect the cluster or queries that are running. These tables give you a better picture of what RethinkDB is doing.

Monitoring issues

The issues table is a RethinkDB system table that provides information on problems that are detected within the cluster; when a problem is detected, a document describing it is added to the table, whereas in normal conditions, the table is empty.

You can query the current_issues table by running the following query:

r.db("rethinkdb").table("current_issues").run(conn, callback);

This table can be extremely useful for monitoring purposes, as you can write a Node.js script that uses Changefeeds to receive notifications when documents are added to the current_issues table, triggering an alarm.

Monitoring running jobs

An easy way to find slow queries that are slowing down the database is to see what is running. Any slow query is more likely to show up as it has been running for a longer time. You can view running operations by querying the jobs system table. This table not only contains information about running queries, but it also provides information on index constructions and running jobs.

To get a list of all currently running jobs, run the following query from the web interface or from a Node.js CLI or script:

r.db("rethinkdb").table("jobs").run(conn, callback);

This allows you to see exactly what RethinkDB is doing, which is very helpful when troubleshooting.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.147.69.49