SingleStore

Supported OS Linux Windows

Integrationv1.3.1

概要

このチェックでは、Datadog Agent を通じて SingleStore を監視します。SingleStore は、保存されたデータのトランザクション処理と分析処理を提供します。Datadog-SingleStoreDB インテグレーションを有効にすると、以下が可能になります。

  • メトリクスとイベントにより、クラスターとノードの健全性を把握する。
  • ストレージ容量の低下に対応する。
  • リソースの利用効率を高める。

セットアップ

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

インストール

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

コンフィギュレーション

ホスト

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

  2. Agent を再起動します

: デフォルトでは、SingleStore インテグレーションは MV_GLOBAL_STATUSAGGREGATORSLEAVES テーブルからしかメトリクスを収集しません。システムレベルのメトリクス (CPU、ディスク、ネットワーク IO、メモリ) を追加で収集するには、singlestore.d/conf.yaml ファイルで collect_system_metrics: true を設定します。

ログの収集

ログ収集は、このサイトではサポートされていません。

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

    logs_enabled: true
    
  2. SingleStore のログの収集を開始するには、該当のログファイルを singlestore.d/conf.yaml ファイルに追加します。

      logs:
        - type: file
          path: /var/lib/memsql/<NODE_ID>/tracelogs/memsql.log
          source: singlestore
          service: "<SERVICE_NAME>"
    

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

  3. Agent を再起動します

コンテナ化

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

メトリクスの収集

パラメーター
<インテグレーション名>singlestore
<初期コンフィギュレーション>空白または {}
<インスタンスコンフィギュレーション>{"host": "%%host%%", "port": "%%port%%", "username": "<ユーザー>", "password": "<パスワード>"}
ログの収集

ログ収集は、このサイトではサポートされていません。

Datadog Agent で、ログの収集はデフォルトで無効になっています。有効にする方法については、Kubernetes ログ収集を参照してください。

パラメーター
<LOG_CONFIG>{"source": "singlestore", "service": "<SERVICE_NAME>"}

検証

Agent の status サブコマンドを実行し、Checks セクションで singlestore を探します。

収集データ

メトリクス

singlestore.aborted_clients
(gauge)
The number of aborted connections caused by the client dying without closing the connection properly.
Shown as connection
singlestore.aborted_connects
(gauge)
The number of failed attempts to connect to the server.
Shown as connection
singlestore.active_dedicated_admin_connections
(gauge)
Active admin connections.
Shown as connection
singlestore.aggregators.average_roundtrip_latency
(gauge)
The average ping roundtrip latency for a given aggregator.
Shown as millisecond
singlestore.aggregators.opened_connections
(gauge)
The number of connections opened on a given aggregator.
Shown as connection
singlestore.auto_attach_remaining_seconds
(gauge)
The time remaining until the automatic rebalance triggered by an auto-attach operation will occur. Only applies to aggregators.
Shown as second
singlestore.average_garbage_collection_duration
(gauge)
Average duration of garbage collection.
Shown as second
singlestore.buffer_manager_cached_memory
(gauge)
Tracks memory that was allocated by the Buffer Manager but is now cached and not in use. Limited to 25% of maximum_memory.
Shown as byte
singlestore.buffer_manager_memory
(gauge)
Tracks memory that is allocated by the Buffer Manager for SingleStore DB's built-in memory allocators.
Shown as byte
singlestore.buffer_manager_unrecycled_memory
(gauge)
Number of buffers ready to be recycled which have not yet been reclaimed.
Shown as byte
singlestore.bytes_received
(gauge)
The number of bytes received per second from all clients.
Shown as byte
singlestore.bytes_sent
(gauge)
The number of bytes sent per second sent to clients.
Shown as byte
singlestore.context_switch_misses
(gauge)
The number of times the scheduler tried to switch connections but failed.
Shown as connection
singlestore.context_switches
(gauge)
The number of times any thread has switched connections because it deemed a connection idle.
Shown as connection
singlestore.cpu.guest
(gauge)
Time spent running a virtual CPU for guest operating systems under the control of the Linux kernel.
Shown as percent
singlestore.cpu.guest_nice
(gauge)
Time spent running a nice guest (virtual CPU for guest operating systems under the control of the Linux kernel).
Shown as percent
singlestore.cpu.idle
(gauge)
Time spent in idle.
Shown as percent
singlestore.cpu.iowait
(gauge)
Time spent waiting for I/O.
Shown as percent
singlestore.cpu.irq
(gauge)
Time spent on servicing interrupts.
Shown as percent
singlestore.cpu.memsql_system
(gauge)
CPU usage by the SingleStore DB process, in kernel mode.
Shown as percent
singlestore.cpu.memsql_total
(gauge)
CPU usage by the SingleStore DB process.
Shown as percent
singlestore.cpu.memsql_user
(gauge)
CPU usage by the SingleStore DB process, in user mode.
Shown as percent
singlestore.cpu.nice
(gauge)
CPU usage in nice mode.
Shown as percent
singlestore.cpu.cores_count
(gauge)
The number of cores on host.
Shown as core
singlestore.cpu.soft_irq
(gauge)
Time spent on servicing soft interrupts.
Shown as percent
singlestore.cpu.steal
(gauge)
Stolen time, which is the time spent in other operating systems when running in a virtualized environment.
Shown as percent
singlestore.cpu.system
(gauge)
CPU usage in kernel mode
Shown as percent
singlestore.cpu.total_used
(gauge)
CPU usage in percent. It refers to the whole machine, and not to SingleStore DB cgroup.
Shown as percent
singlestore.cpu.user
(gauge)
CPU usage in user mode.
Shown as percent
singlestore.disk.free
(gauge)
The remaining disk space available.
Shown as byte
singlestore.disk.read_bytes
(gauge)
Number of bytes read per second from the disk across all mount points.
Shown as byte
singlestore.disk.total
(gauge)
The total size of the disk.
Shown as byte
singlestore.disk.used
(gauge)
The amount of bytes used by the disk.
Shown as byte
singlestore.disk.write_bytes
(gauge)
Number of bytes written per second to the disk across all mount points.
Shown as byte
singlestore.disk_space_reserved_for_secondary_index
(gauge)
Disk space reserver for secondary index usage.
Shown as byte
singlestore.execution_time_of_reads_pct
(gauge)
Wall-time percentage of all read queries.
Shown as percent
singlestore.execution_time_of_write_pct
(gauge)
Wall-time percentage of all write queries.
Shown as percent
singlestore.failed_read_queries
(gauge)
Number of read queries per second which have failed.
Shown as query
singlestore.failed_write_queries
(gauge)
Number of write queries per second which have failed.
Shown as query
singlestore.free_io_pool_memory
(gauge)
Size of cached free buffers, which tracks how much memory in the IO pool is currently not in use. The maximum limit applies to each pool per partition on a node and can shrink if memory is reused. This variable can only be used to view the unused IO pool memory.
Shown as byte
singlestore.idle_queue
(gauge)
The number of connections in the idle queue. This is a subset of threads_idle.
Shown as connection
singlestore.inflight_async_compilations
(gauge)
Number of inflight asynchronous compilations currently running.
singlestore.ingest_errors_disk_space_use
(gauge)
Ingest errors disk space usage.
Shown as byte
singlestore.leaves.average_roundtrip_latency
(gauge)
The average ping roundtrip latency in milliseconds for a given leaf node.
Shown as millisecond
singlestore.leaves.opened_connections
(gauge)
The number of connections opened on a given leaf node.
Shown as connection
singlestore.license_capacity
(gauge)
License capacity
Shown as unit
singlestore.maximum_cluster_capacity
(gauge)
The allowed memory capacity in the cluster based on the license. Only on the master aggregator.
Shown as byte
singlestore.mem.cgroup_free
(gauge)
The memory free capacity in percent of all processes of SingleStore DB cgroup.
Shown as percent
singlestore.mem.cgroup_total
(gauge)
The memory limit for the SingleStore DB node_id based on its cgroup membership.
Shown as byte
singlestore.mem.cgroup_used
(gauge)
The memory used by all processes of SingleStore DB cgroup.
Shown as byte
singlestore.mem.free
(gauge)
The remaining free memory capacity on the physical host as a percentage.
Shown as percent
singlestore.mem.singlestore_used_memory
(gauge)
The memory used by SingleStore DB process specified by node_id.
Shown as byte
singlestore.mem.total
(gauge)
The memory available on the physical host.
Shown as byte
singlestore.mem.used
(gauge)
The total memory used on the physical host.
Shown as byte
singlestore.net.bytes_rx
(gauge)
The number of bytes received per second on each interface.
Shown as byte
singlestore.net.bytes_tx
(gauge)
The number of bytes sent per second on each interface.
Shown as byte
singlestore.connections
(gauge)
The number of successful or non-successful connection attempts to the server.
Shown as connection
singlestore.queries
(gauge)
The number of statements executed by the server per second, including statements from clients and statements within stored programs.
Shown as query
singlestore.query_compilation_failures
(gauge)
Number of query compilation failures.
Shown as query
singlestore.query_compilations
(gauge)
Number of query compilations.
Shown as query
singlestore.questions
(gauge)
The number of statements executed by the server per second, excluding statements within stored programs.
Shown as query
singlestore.ready_queue
(gauge)
The number of connections with pending queries not associated with threads.
Shown as connection
singlestore.rows_affected_by_writes
(gauge)
Number of rows affected by write queries.
Shown as row
singlestore.rows_returned_by_reads
(gauge)
Number of rows returned by read queries.
Shown as row
singlestore.seconds_until_expiration
(gauge)
Seconds until expiration of the license.
Shown as second
singlestore.ssl.accept_renegotiates
(gauge)
Returns the number of start renegotiations in server mode.
Shown as connection
singlestore.ssl.accepts
(gauge)
Returns the number of started SSL/TLS handshakes in server mode.
Shown as connection
singlestore.ssl.client_connects
(gauge)
Returns the number of started SSL/TLS handshakes in client mode.
Shown as connection
singlestore.ssl.connect_renegotiates
(gauge)
Returns the number of start renegotiations in client mode.
Shown as connection
singlestore.ssl.finished_accepts
(gauge)
Returns the number of successfully established SSL/TLS sessions in server mode.
Shown as connection
singlestore.ssl.finished_connects
(gauge)
Returns the number of successfully established SSL/TLS sessions in client mode.
Shown as connection
singlestore.successful_read_queries
(gauge)
Number of read queries per second which have successfully run.
Shown as query
singlestore.successful_write_queries
(gauge)
Number of write queries per second which have successfully run.
Shown as query
singlestore.threads.background
(gauge)
Background threads managed by the query scheduler, i.e. replication master queries and the scheduler thread.
Shown as thread
singlestore.threads.cached
(gauge)
Number of kernel threads currently idle waiting for queries.
Shown as thread
singlestore.threads.connected
(gauge)
The number of connections currently open.
Shown as thread
singlestore.threads.created.count
(count)
The number of threads created between check runs to handle connections.
Shown as thread
singlestore.threads.created.total
(gauge)
The number of threads created to handle connections since server started.
Shown as thread
singlestore.threads.idle
(gauge)
The number of idle connections not associated with threads.
Shown as thread
singlestore.threads.running
(gauge)
The number of threads that are currently active.
Shown as thread
singlestore.threads.shutdown.count
(count)
The number of threads shut down between check run.
Shown as thread
singlestore.threads.shutdown.total
(gauge)
The number of threads shut down since the server started.
Shown as thread
singlestore.threads.waiting_for_disk_space
(gauge)
The number of threads currently blocked because the disk is full.
Shown as thread
singlestore.total_io_pool_memory
(gauge)
Total size of all buffers allocated by the IO pool for that partition, including buffers currently in use and free buffers in Freeiopool_memory. The maximum limit applies to each pool per partition on a node and does not shrink from its high value. This variable can only be used to view the total IO pool size.
Shown as byte
singlestore.total_server_memory
(gauge)
Tracks the node's overall memory use. Will not surpass the maximum_memory engine variable.
Shown as byte
singlestore.transaction_buffer_wait_time
(gauge)
Provides a view into transaction buffer log performance. For more information, see the Using Durability and Recovery topic.
Shown as second
singlestore.transaction_log_flush_wait_time
(gauge)
Cumulative amount of time commits have been waiting to flush to disk or across the network, if the database is running with sync durability or sync replication. For async, the value of Transactionlogflushwaittime should always be 0.
Shown as second
singlestore.uptime
(gauge)
The amount of time, in seconds, that the server has been up.
Shown as second
singlestore.used_cluster_capacity
(gauge)
The amount of memory capacity existent in the cluster. This is the sum of maximum_memory from all nodes in the cluster. Only on the master aggregator.
Shown as byte
singlestore.used_instance_license_units
(gauge)
Used license units
Shown as unit
singlestore.workload_management.active_queries
(gauge)
The number of queries currently running on this aggregator.
Shown as query
singlestore.workload_management.active_threads
(gauge)
The number of threads currently running per leaf due to queries originating from this aggregator.
Shown as thread
singlestore.workload_management.queued_queries
(gauge)
The number of queued concurrent columnstore writes.
Shown as query
singlestore.workload_management_active_connections
(gauge)
The number of connections per leaf allocated to queries originating from this aggregator.
Shown as connection

イベント

SingleStore インテグレーションには、イベントは含まれません。

サービスのチェック

singlestore.can_connect
Returns CRITICAL if the Agent is unable to connect to and collect metrics from the monitored SingleStore instance. Returns OK otherwise.
Statuses: ok, critical

トラブルシューティング

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