RethinkDB
セキュリティモニタリングが使用可能です セキュリティモニタリングが使用可能です

RethinkDB

Agent Check Agentチェック

Supported OS: Linux Mac OS Windows

概要

RethinkDB は分散型のドキュメント指向 NoSQL データベースです。リアルタイムな変更フィードに対してファーストクラスのサポートを提供します。

このチェックは Datadog Agent を使用して RethinkDB クラスターを監視し、パフォーマンス、データ可用性、クラスター コンフィギュレーションなどのメトリクスを収集します。

: このインテグレーションには、RethinkDB バージョン 2.3.6 以降が必要です。

セットアップ

ホストで実行されている Agent 用にこのチェックをインストールおよび構成する場合は、以下の手順に従ってください。コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照してこの手順を行ってください。

インストール

RethinkDB チェックは Datadog Agent パッケージに含まれています。サーバーに追加でインストールする必要はありません。

コンフィギュレーション

  1. RethinkDB 2.4 以降を使用する場合は、rethinkdb データベースに対して読み取り専用のアクセス許可を持つ datadog-agent ユーザーを追加してください。以下の ReQL コマンドを使用できます。詳しくは、アクセス許可とユーザーアカウントを参照してください。

    r.db('rethinkdb').table('users').insert({'id': 'datadog-agent', 'password': '<PASSWORD>'})
    r.db('rethinkdb').grant('datadog-agent', {'read': True})

    : RethinkDB 2.3.x の場合、rethinkdb データベースに対するアクセス許可の付与はサポートされていません。この手順をスキップし、下記の 管理者アカウント を使用してください。

  2. Agent のコンフィギュレーションディレクトリのルートにある conf.d/ フォルダーの rethinkdb.d/conf.yaml ファイルを編集します。使用可能なすべてのコンフィギュレーションオプションについては、rethinkdb.d/conf.yaml のサンプルを参照してください。

    init_config:
    
    instances:
      - host: localhost
        port: 28015
        user: "<USER>"
        password: "<PASSWORD>"
  3. Agent を再起動します

: このインテグレーションはクラスター内のすべてのサーバーからメトリクスを収集します。したがって、Agent は 1 つしか必要ありません。

ログの収集

Agent バージョン 6.0 以降で利用可能

  1. Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml ファイルでこれを有効にします。

    logs_enabled: true
  2. RethinkDB のログを収集するには、次のコンフィギュレーションブロックを rethinkdb.d/conf.yaml ファイルに追加します。

    logs:
      - type: file
        path: "<LOG_FILE_PATH>"
        source: rethinkdb
        service: "<SERVICE_NAME>"

    path パラメーターと service パラメーターの値を環境に合わせて変更してください。使用可能なすべてのコンフィギュレーションオプションの詳細については、rethinkdb.d/conf.yaml のサンプルを参照してください。

  3. Agent を再起動します

Kubernetes 環境でログを収集する Agent を構成する追加の情報に関しては、Datadog ドキュメントを参照してください。

検証

Agent のステータスサブコマンドを実行し、Checks セクションで rethinkdb を探します。

収集データ

メトリクス

rethinkdb.config.servers
(gauge)
Number of connected servers in the cluster.
Shown as node
rethinkdb.config.databases
(gauge)
Number of databases in the cluster.
rethinkdb.config.tables_per_database
(gauge)
Number of tables in a given database.
Shown as table
rethinkdb.config.secondary_indexes_per_table
(gauge)
Number of secondary indexes in a given table.
Shown as index
rethinkdb.stats.cluster.query_engine.queries_per_sec
(gauge)
Number of queries executed in a cluster per second.
Shown as query
rethinkdb.stats.cluster.query_engine.read_docs_per_sec
(gauge)
Number of documents read in a cluster per second.
Shown as document
rethinkdb.stats.cluster.query_engine.written_docs_per_sec
(gauge)
Number of documents written in a cluster per second.
Shown as document
rethinkdb.stats.server.query_engine.queries_per_sec
(gauge)
Number of queries executed on a server per second.
Shown as query
rethinkdb.stats.server.query_engine.queries_total
(count)
Total number of queries executed on a server.
Shown as query
rethinkdb.stats.server.query_engine.read_docs_per_sec
(gauge)
Number of documents read from a server per second.
Shown as document
rethinkdb.stats.server.query_engine.read_docs_total
(count)
Total number of documents read from a server.
Shown as document
rethinkdb.stats.server.query_engine.written_docs_per_sec
(gauge)
Number of documents written to a server per second.
Shown as document
rethinkdb.stats.server.query_engine.written_docs_total
(count)
Total number of documents written to a server.
Shown as document
rethinkdb.stats.server.query_engine.client_connections
(gauge)
Current total number of connections to a server.
Shown as connection
rethinkdb.stats.server.query_engine.clients_active
(gauge)
Current number of individual clients connected to a server (a client may hold multiple connections).
Shown as host
rethinkdb.stats.table.query_engine.read_docs_per_sec
(gauge)
Number of documents read from a table per second.
Shown as document
rethinkdb.stats.table.query_engine.written_docs_per_sec
(gauge)
Number of documents written to a table per second.
Shown as document
rethinkdb.stats.table_server.query_engine.read_docs_per_sec
(gauge)
Number of documents read from a replica per second.
Shown as document
rethinkdb.stats.table_server.query_engine.read_docs_total
(count)
Total number of documents read from a replica.
Shown as document
rethinkdb.stats.table_server.query_engine.written_docs_per_sec
(gauge)
Number of documents written to a replica per second.
Shown as document
rethinkdb.stats.table_server.query_engine.written_docs_total
(count)
Total number of documents written to a replica.
Shown as document
rethinkdb.stats.table_server.storage_engine.cache.in_use_bytes
(gauge)
Current amount of memory used by the cache on a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.read_bytes_per_sec
(gauge)
Number of bytes read from the disk of a replica per second.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.read_bytes_total
(count)
Total number of bytes read from the disk of a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.written_bytes_per_sec
(gauge)
Number of bytes written to the disk of a replica per second.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.written_bytes_total
(count)
Total number of bytes written to the disk of a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.space_usage.metadata_bytes
(gauge)
Current disk space used by metadata on a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.space_usage.data_bytes
(gauge)
Current disk space used by data on a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.space_usage.garbage_bytes
(gauge)
Current disk space used by the garbage collector on a replica.
Shown as byte
rethinkdb.stats.table_server.storage_engine.disk.space_usage.preallocated_bytes
(gauge)
Current disk space preallocated on a replica.
Shown as byte
rethinkdb.table_status.shards
(gauge)
Total number of shards for a table.
Shown as shard
rethinkdb.table_status.shards.replicas
(gauge)
Total number of replicas for a table shard.
Shown as node
rethinkdb.table_status.shards.primary_replicas
(gauge)
Total number of primary replicas for a table shard.
Shown as node
rethinkdb.server_status.network.time_connected
(gauge)
Current total time a server has been connected to the network.
Shown as second
rethinkdb.server_status.network.connected_to
(gauge)
Number of other RethinkDB servers a server is currently connected to.
Shown as node
rethinkdb.server_status.process.time_started
(gauge)
Time when the RethinkDB server process started.
Shown as second
rethinkdb.system_jobs.jobs
(gauge)
Total number of currently running system jobs, tagged by `job_type`.
Shown as job
rethinkdb.current_issues.issues
(gauge)
Total number of current issues of a given issue_type.
rethinkdb.current_issues.critical_issues
(gauge)
Total number of critical current issues of a given issue_type.

サービスのチェック

  • rethinkdb.can_connect: 構成された RethinkDB サーバーに Agent が到達できない場合は CRITICAL を返します。それ以外の場合は、OK を返します。
  • rethinkdb.table_status.status.ready_for_outdated_reads: テーブルのすべてのシャードで旧バージョンの読み取りクエリの処理が可能であれば OK を、それ以外の場合は WARNING を返します。
  • rethinkdb.table_status.status.ready_for_outdated_reads: テーブルのすべてのシャードで読み取りクエリの処理が可能であれば OK を、それ以外の場合は WARNING を返します。
  • rethinkdb.table_status.status.ready_for_writes: テーブルのすべてのシャードで書き込みクエリの処理が可能であれば OK を、それ以外の場合は WARNING を返します。
  • rethinkdb.table_status.status.all_replicas_ready: すべてのレプリカで読み取りと書き込みの処理が可能であれば OK を、それ以外の場合(バックフィルが進行中であるなど)は WARNING を返します。

イベント

RethinkDB には、イベントは含まれません。

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。