PostgreSQLメトリクス
データベースメトリクスは、データベースの作業量とリソース使用量を包括的に収集します。 WhaTapモニタリングサービスは、継続的にメトリクスを収集してデータベースのボトルネックを特定し、性能問題の根本原因を特定するのに役立つデータを提供します。
その他のメトリクスに関する詳細については、次のリンクを参照してください。
agent_status_summary
エージェントの状態に関するメトリクスを10秒間隔で収集したカテゴリです。
Fields
| Field | Type | Unit | Description |
|---|---|---|---|
| inActTime | - | ミリ秒(ms) | エージェントが無効になったままの時間 |
| isActive | Boolean | - | 現在のエージェントの活性化状態 |
| isRestart | Boolean | - | エージェントが最近再起動したかどうか (true / false) |
| lastActTime | - | ミリ秒(ms) | 最後にエージェントが活性化された状態の時刻 (0: 非活性化された場合) |
| oid | - | - | プロジェクトに含まれる各エージェントの固有の識別子 |
| startTime | - | ミリ秒(ms) | エージェントが開始された時点でのタイムスタンプ |
db_postgresql_counter
Tags
次はdb_postgresql_counterカテゴリに収集されるタグ値のガイドです。
| Tag | 説明 | 備考 |
|---|---|---|
agentIp | エージェントごとのIPアドレスです。 | - |
dbIsMulti | マルチテナント対応可否です。 | - |
dbName | データベース名です。 | - |
dbType | データベースの種類です。 | - |
dbVersion | 利用中のデータベースのバージョンです。 | - |
oname | エージェント名です。 | 一意の値 |
Field
次はdb_postgresql_counterカテゴリに収集されるフィールド値のガイドです。
| Metrics | Description | Category |
|---|---|---|
active_sessions | 現在、活性化されているセッションの数です。 | Connection |
CPUUtilization | データベースインスタンスで使用中のCPUリソースの比率です。 | Performance |
FreeStorageSpace | インスタンスの使用可能なストレージ空間です。 | I/O |
FreeableMemory | システムですぐに使用できるメモリの量です。 | I/O |
NetworkReceiveThroughput | インスタンスが受信するネットワークデータの速度です。 | Troughput |
NetworkTransmitThroughput | インスタンスから送信するネットワークデータの速度です。 | Troughput |
blk_read_time | バックエンドでデータブロックを読み取るのにかかった時間(milisecond)です。 | I/O |
blk_write_time | バックエンドでデータブロックを書き込むのにかかった時間(milisecond)です。 | I/O |
blks_hit | ディスクブロックがすでにバッファキャッシュで検出され、読み取りが不要な合計回数です。 | I/O |
blks_hit_ratio | 全体照会のうち、キャッシュで照会された割合(%)です。 算出方式:sum( blks_hit)/sum(blks_hit + blks_read) * 100 | I/O |
blks_read | ディスクで直接読み取ったデータブロックの数です。 | I/O |
buffers_checkpoint | チェックポイントの間にフラッシュされたバッファ数です。 | Info |
check_point | データベースのチェックポイントの発生回数です。 | Troughput |
checkpoint_write_time | チェックポイントの間、データを書き込むのにかかった時間(milisecond)です。 | Troughput |
checkpoints_timed | checkpoint_timeoutの環境設定値によって発生したチェックポイントの数です。 | Troughput |
commit_count | トランザクションコミットの回数です。 | Troughput |
confl_bufferpin | バッファピンの衝突によるセッションの衝突回数です。 | Troughput |
confl_deadlock | デッドロックの衝突回数です。 | Troughput |
confl_lock | ロック衝突によるセッション衝突の数です。 | Troughput |
confl_snapshot | スナップショットの衝突によるセッション衝突の回数です。 | Troughput |
confl_tablespace | テーブルスペースの衝突によるセッション衝突の回数です。 | Troughput |
conflicts | データベース復旧作業との競合エラーでキャンセルされたクエリの数です。 | Troughput |
connect_error | データベース接続失敗の回数です。 | Connection |
deadlock_count | 発生したデッドロックの合計回数です。 | Performance |
dml_count | DML(データ操作言語) 作業の合計回数です。 | Troughput |
fatal_count | クリティカルなエラーが発生した回数です。 | Info |
idle_trx | アイドル状態のトランザクションの数です。 | Connection |
idle_trx_time | アイドル状態のトランザクションの累積時間です。 | Connection |
idx_scan | インデックスLeafブロックに保存されているキーを利用してテーブルレコードにアクセスする方式です。 このメトリクスは、1分ごとに表示する値です。 | Performance |
index_hit_ratio | インデックスでキャッシュ照会された比率(%)です。 | Performance |
lock_wait_sessions | ロック待機中のセッションの数です。 | Performance |
long_running_sessions | 長時間実行中のセッションの数です。 | Performance |
max_connections | 許可された最大接続数です。 pg_settingsに設定された値で、この値が不足すると、'FATAL ERROR: too many clients already.' エラーが発生する可能性があります。 | Info |
max_runtime | 最も長く実行されたクエリの実行時間です。 | Performance |
node_state | Replication関係で構成されたデータベースであり、1:Master、2:Slaveを意味します。 | Info |
numbackends | データベースに接続されている現在のバックエンドプロセスの数です。 | Info |
oldest_cur_xid | 最も古い現在のトランザクションIDです。 | Info |
per_to_emergency_autovac | 非常自動vacuumの発生回数です。 | Performance |
per_to_wraparound | トランザクションIDラップアラウンドの防止vacuum作業の回数です。 | Performance |
replication_count | 有効になっているReplicationデータベース(Slave)の数です。 | Performance |
replication_delay | 複製の遅延時間です。 Replication構造の場合、replicationデータベースに反映される遅延時間で、Slave DBで測定される指標です。 | Performance |
replication_lag | 複製されたデータがソースデータに比べて遅れている程度です。 | Performance |
rollback_count | トランザクションのロールバック回数です。 | Performance |
seq_scan | テーブルをFull Scanしながらレコードを読み取る方式です。 インデックスが存在しない、またはインデックスが存在しても読み取り範囲が広い場合に選択します。 このメトリクスは、1分ごとに表示する値です。 | Performance |
table_hit_ratio | テーブルでキャッシュ照会された割合です。 | Performance |
temp_bytes | データベースのクエリによって一時ファイルに記録された合計バイト数です。 | Performance |
temp_files | データベースでクエリとして生成された一時ファイルの数です。 | Performance |
total_runtime | すべてのクエリの合計実行時間です。 | Performance |
total_sessions | 現在接続されているセッションの合計数です。 | Connection |
tps | 1秒当たりのトランザクション処理件数です。 | Performance |
tup_deleted | データベースでクエリによって削除されたタプルの数です。 | Troughput |
tup_fetched | データベースからクエリに読み込まれたタプルの数です。 | Troughput |
tup_inserted | データベースでクエリによって挿入されたタプルの数です。 | Troughput |
tup_returned | データベースのクエリから返されたタプルの数です。 | Troughput |
tup_updated | データベースでクエリによって更新されたタプルの数です。 | Troughput |
uptime | データベースが実行中の時間です。 | Info |
vacuum_running_count | 現在実行中のvacuum作業の数です。 | Performance |
wait_sessions | 待機状態のセッションの数です。 | Performance |
wal_count | 記録されたWAL(Write-Ahead Logging) 項目の数です。 WALファイル数の急増は、一般的に短期間で多数の変更や一時テーブルおよびオブジェクトを生成 するvacuumと類似したメンテナンス作業が原因で発生します。 これはゆっくりと正常レベルに戻る必要があります。 これにより、通常、ディスクI/OとCPUのアクティビティが多くなり、正常に戻るまでアプリケーションクエリの実行速度が遅くなります。 このメトリクスは、1分ごとに表示する値です。 | Performance |
warning_count | 警告が発生した回数です。 | Info |
XOS関連メトリクス
XOSエージェントから収集されるメトリクスについての説明です。
| Metric | Unit | Description |
|---|---|---|
cpu(xos) | pct | CPU使用率cpu_user + cpu_sys + cpu_iowaitの合計 |
cpu_idle(xos) | pct | CPUが遊休状態の時間 |
cpu_iowait(xos) | pct | CPUがI/O作業を待機した時間 |
cpu_sys(xos) | pct | CPUがカーネルコードの実行に使用された時間 |
cpu_user(xos) | pct | CPUがユーザーコードの実行に使用された時間 |
disk_read_bytes(xos) | バイト | ディスクから読み取ったデータ量 |
disk_reads(xos) | block | ディスクで読み取られたブロック数 |
disk_write_bytes(xos) | バイト | ディスクに記録されたデータ量 |
disk_writes(xos) | block | ディスクに記録されたブロック数 |
mem(xos) | pct | メモリ使用率 |
mem_available(xos) | MB | 使用可能なメモリサイズ |
mem_buffcache(xos) | MB | buff/cache用途に使用中のメモリサイズ |
mem_free(xos) | MB | 使用していないメモリサイズ |
mem_swapfree(xos) | MB | 未使用のスワップ領域サイズ スワップはディスク領域を使用するため、使用時に性能が低下する可能性がある |
mem_swaptotal(xos) | MB | 全体スワップ(Swap)サイズ 物理メモリ不足時に使用 |
mem_total(xos) | MB | 全体メモリのサイズ |
mem_used(xos) | MB | 使用中のメモリサイズ |
net_recv_bytes(xos) | バイト | ネットワークから受信したデータ量 |
net_recv_packets(xos) | count | ネットワークから受信したパケット数 |
net_send_bytes(xos) | バイト | ネットワークで送信したデータ量 |
net_send_packets(xos) | count | ネットワークで送信したパケット数 |