本文へスキップ

MySQL指標

データベース指標(メトリクス)は、データベースの作業量とリソース使用量を包括的に収集します。WhaTapモニタリングサービスは持続的に指標を収集し、データベースのボトルネックを特定し、性能問題の根本原因を特定するのに役立つデータを提供します。

メトリクスに関する詳細については、次の文書を参照してください。

agent_status_summary

エージェントの状態に関するメトリクスを10秒間隔で収集したカテゴリです。

Fields

FieldTypeUnitDescription
inActTime-ミリ秒(ms)エージェントが無効になったままの時間
isActiveBoolean-現在のエージェントの活性化状態
isRestartBoolean-エージェントが最近再起動したかどうか (true / false)
lastActTime-ミリ秒(ms)最後にエージェントが活性化された状態の時刻 (0: 非活性化された場合)
oid--プロジェクトに含まれる各エージェントの固有の識別子
startTime-ミリ秒(ms)エージェントが開始された時点でのタイムスタンプ

db_mysql_counter

Tags

db_mysql_counterカテゴリに収集されるタグ値の案内です。

TagsDescriptionAdditional Info
agentIpエージェント別のIPアドレス-
dbIsMultiMultitenant対応可否-
dbNameデータベース名-
dbTypeデータベース種類-
dbVersion利用中のデータベースのバージョン-
onameエージェント名ユニーク値

Field

db_mysql_counterカテゴリに収集されるフィールド値の案内です。

MetricCategory / UnitDescription
aborted_clientsConnection異常終了したクライアント接続の回数
access_denied_errorsConnectionログイン失敗回数
- 間違ったユーザー名/パスワード使用時に増加
active_sessionsConnectionクエリを実行しているセッションの数
- threads_runningと同一
active_transactionsThroughputActive Transaction数
bytes_receivedThroughput / Byteクライアントから受信した合計バイト数
- 値が高ければ書き込み作業中心サーバーと推定
bytes_sentThroughput / Byteクライアントに送信した合計バイト数
- 値が高ければ読み取りジョブ中心サーバーと推定
- Questions、Uptimeとともに分析に有用
com_commitThroughputCOMMITコマンドを実行した回数
com_deleteThroughputDELETEコマンドを実行した回数
com_insertThroughputINSERTコマンドを実行した回数
com_rollbackThroughputROLLBACKコマンドを実行した回数
com_selectThroughputSELECTコマンドを実行した回数
com_updateThroughputUPDATEコマンドを実行した回数
connectionsConnectionクライアントがMySQLサーバーに接続を試みた回数
created_tmp_disk_tablesPerformanceディスクに作成された一時テーブルの数
- ジョイン/ソート/グルーピング時のメモリ不足で発生
- tmp_table_size、max_heap_table_size調整を考慮
created_tmp_filesPerformance作成された一時ファイル数
created_tmp_tablesPerformanceサーバーによって生成された内部一時テーブル
- UNION ALL、ORDER BY、GROUP BYなどで使用
- ディスク臨時テーブル比率 10%未満を推奨
innodb_buffer_pool_pages_freeInnoDB全体バッファプールの未使用(使用可能な) ページ数
innodb_buffer_pool_pages_totalInnoDB全体バッファプールのページ数
innodb_buffer_pool_read_requestsInnoDBバッファプールで読み込まれたページ数
- Buffer Hit Ratio = (1 - (innodb_buffer_pool_reads / innodb_buffer_pool_read_requests)) * 100
- 90% 以上を推奨、低ければinnodb_buffer_pool_sizeの増設を考慮
innodb_buffer_pool_readsInnoDBディスクから読み取ったページ数
- 値が高いとバッファプール的中率が低い
innodb_buffer_pool_wait_freeInnoDBバッファプールで空のページがないため、ディスクフラッシュを待った回数
innodb_log_waitsInnoDBログバッファがいっぱいでディスクの書き込みを待つ回数
- Redo log 경합 비율 = innodb_log_waits / innodb_log_writes
- 1 未満を推奨し、値が高ければinnodb_log_buffer_sizeの増設を考慮
innodb_rows_deletedInnoDBInnoDBテーブルから削除された行数
innodb_rows_insertedInnoDBInnoDBテーブルに挿入された行数
innodb_rows_readInnoDBSELECTで処理された行数
innodb_rows_updatedInnoDBInnoDBテーブルに更新された行数
innodb_rows_writesInnoDB書き込み処理された行数
- innodb_rows_inserted + innodb_rows_updated + innodb_rows_deleted
innodb_row_lock_timeInnoDB / msrow lockの取得に掛かった合計時間(milliseconds)
innodb_row_lock_waitsInnoDBrow lockを待機した回数
- 値が急増するとクエリーチューニングが必要
lock_wait_sessionsPerformancerow lockを待機中のセッション数
- innodb_row_lock_current_waitsと同一
max_connectionsConnection最大同時クライアント接続回数
- コネクション数の不足時Too Many Connectionエラーが発生可能
queriesThroughput全体実行されたSQL文の数
- Stored program内で実行されたstatement を含む
questionsThroughputMySQLサーバーで実行したコマンドの数
- Stored program内で実行されたstatementを除く
replication_delayPerformance / secreplication遅延時間 (秒)
- Slave DBで測定される
select_full_joinPerformanceインデックスを使用せずにfull joinが発生した回数
- 値が大きい場合はインデックス漏れの検討が必要
select_scanPerformanceインデックスを使用せずにフルテーブルをスキャンした回数
- 実行計画でtype = ALLのクエリの点検が必要
slow_queriesPerformancelong_query_time以上かかったクエリ数
- 値が急増したらslow query log確認が必要
sort_merge_passesPerformancesort merge pass回数
- 値が高ければクエリー索引の改善またはsort_buffer_sizeの増設を考慮
table_locks_waitedPerformance他のロックがすでにそのテーブルを使用しているため、待った回数
- ロック待機率 = table_locks_waited / (table_locks_immediate + table_locks_waited) * 100
- 値が高い場合は、クエリ最適化とテーブル分割/複製を考慮
table_open_cache_missesPerformanceテーブルを開こうと試みたがキャッシュになくて開いた回数
threads_connectedConnection現在接続されているクライアント数
- 急に増加する場合は、コネクション漏れ有無の点検を推奨
threads_runningThroughput現在実行中のスレッド数
- 持続的に高ければボトルネックの可能性がある
trx_rseg_history_lenPerformanceUndoレコードストレージ使用量
- 増加し続けると性能低下の可能性がある
uptimePerformanceMySQLサーバー実行後の経過時間(秒)

XOS関連メトリクス

XOSエージェントから収集されるメトリクスについての説明です。

MetricUnitDescription
cpu(xos)pctCPU使用率
cpu_user + cpu_sys + cpu_iowaitの合計
cpu_idle(xos)pctCPUが遊休状態の時間
cpu_iowait(xos)pctCPUがI/O作業を待機した時間
cpu_sys(xos)pctCPUがカーネルコードの実行に使用された時間
cpu_user(xos)pctCPUがユーザーコードの実行に使用された時間
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)MBbuff/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ネットワークで送信したパケット数