PostgreSQLメトリクス
データベース指標は、データベースの作業量とリソース使用量を包括的に収集します。 WhaTapモニタリングサービスは、継続的にメトリクスを収集してデータベースのボトルネックを特定し、性能問題の根本原因を特定するのに役立つデータを提供します。
その他のメトリクスに関する詳細については、次のリンクを参照してください。
agent_status_summary
エージェントの状態に関するメトリクスを10秒間隔で収集したカテゴリです。
Fields
フィールド名 | 単位 | 説明 | 備考 |
---|---|---|---|
inActTime | ミリ秒(ms) | エージェントが無効になったままの時間 | - |
isActive | - | 現在のエージェントの活性化状態 | true / false |
isRestart | - | エージェントの再起動可否 | true / false |
lastActTime | ミリ秒(ms) | 最後にエージェントが活性化された状態の時刻 | 0 : 無効化された場合 |
oid | - | プロジェクトに含まれる各エージェントの固有の識別子 | - |
startTime | ミリ秒(ms) | エージェントが開始された時点でのタイムスタンプ | - |
db_postgresql_counter
Tags
次はdb_postgresql_counter
カテゴリに収集されるタグ値のガイドです。
タグ名 | 説明 | 備考 |
---|---|---|
agentIp | エージェントごとのIPアドレスです。 | - |
dbIsMulti | Multitenant対応可否です。 | - |
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_user(xos) | pct | CPUがユーザーコードを実行する際にかかった時間です。 |
cpu_sys(xos) | pct | CPUがKernel codeを実行した時間です。 |
cpu_iowait(xos) | pct | CPUがIOを待機した時間です。 |
cpu_idle(xos) | pct | CPUプロセッサのアイドルタイムです。 |
disk_reads(xos) | block | ディスクから読み取ったデータの量です。 |
disk_read_bytes(xos) | バイト | ディスクから読み取ったデータの量です。 |
disk_writes(xos) | block | ディスクに書き込んだデータの量です。 |
disk_write_bytes(xos) | バイト | ディスクに書き込んだデータの量です。 |
mem(xos) | pct | メモリ使用率です。 |
mem_total(xos) | MB | 全体のメモリ量です。 |
mem_free(xos) | MB | システムで使用していないメモリの量です。 |
mem_used(xos) | MB | システムで使用しているメモリ量です。 |
mem_buffcache(xos) | MB | buff/cacheで使用中のメモリ量です。 |
mem_swaptotal(xos) | MB | Swap全体サイズ、物理メモリが不足している場合に備えて設定します。 |
mem_swapfree(xos) | MB | Swapの未使用領域、Swap領域はディスク領域が解放されるため、Swapを使用している場合は、システム性能が大幅に低下する可能性があります。 |
mem_available(xos) | MB | メモリの可用領域です。 |
net_recv_bytes(xos) | バイト | ネットワークで受信されたデータの量です。 |
net_recv_packets(xos) | - | ネットワークで受信されたデータパケットの数です。 |
net_send_bytes(xos) | バイト | ネットワークで送信したデータの量です。 |
net_send_packets(xos) | - | ネットワークに送信したデータパケットの数です。 |