Alibaba Cloud PolarDB MySQL¶
Alibaba Cloud PolarDB MySQL のメトリクス表示。CPU 使用率、メモリヒット率、ネットワークトラフィック、接続数、QPS、TPS、読み取り専用ノードの遅延などを含みます。
設定¶
Func のインストール¶
推奨は Guance のインテグレーション - 拡張 - マネージド版 Func を有効化することです
Func をセルフデプロイする場合はFunc のセルフデプロイ を参照してください
スクリプトの有効化¶
ヒント: 事前に要件を満たす Alibaba Cloud AK を用意してください(簡単のため、グローバル読み取り専用権限
ReadOnlyAccessをそのまま付与してもかまいません)
マネージド版の有効化スクリプト¶
- Guance コンソールにログインします
- 【インテグレーション】メニューをクリックし、【クラウドアカウント管理】を選択します
- 【クラウドアカウントを追加】をクリックし、【Alibaba Cloud】を選択して画面に必要な情報を入力します。すでにクラウドアカウント情報を設定済みの場合は、この手順を省略します
- 【テスト】をクリックし、成功したら【保存】をクリックします。失敗した場合は、関連設定が正しいか確認してから再度テストしてください
- 【クラウドアカウント管理】の一覧で追加済みのクラウドアカウントを確認できます。該当するクラウドアカウントをクリックして詳細ページに入ります
- クラウドアカウント詳細ページの【インテグレーション】ボタンをクリックし、
未インストール一覧からAlibaba Cloud PolarDB MYSQLを見つけて【インストール】をクリックすると、インストール画面が表示されます。そのままインストールしてください
手動有効化スクリプト¶
-
Func コンソールにログインし、【スクリプトマーケット】をクリックして Guance スクリプトマーケットに入り、
integration_alibabacloud_polardbを検索します -
【インストール】をクリックし、Alibaba Cloud AK ID、AK Secret、およびアカウント名を入力します
-
【起動スクリプトをデプロイ】をクリックすると、システムが自動的に
Startupスクリプトセットを作成し、対応する起動スクリプトを自動で設定します -
有効化後は「管理 / 自動トリガー設定」で該当の自動トリガー設定を確認できます。【実行】をクリックすると、定期実行を待たずにすぐ 1 回実行できます。少し待つと、実行タスクの記録と対応するログを確認できます。
確認¶
- 「管理/自動トリガー設定」で該当タスクに対応する自動トリガー設定が存在するか確認し、あわせてタスク記録とログを確認して異常がないかチェックします
- Guance の「インフラストラクチャ / カスタム」で資産情報が存在するか確認します
- Guance の「メトリクス」で対応する監視データがあるか確認します
メトリクス¶
Alibaba Cloud CloudMonitor を設定すると、デフォルトのメトリクスセットは次のとおりです。設定により、さらに多くのメトリクスを収集できます Alibaba Cloud CloudMonitor メトリクス詳細
| メトリクス ID | メトリクス名 | ディメンション | 統計 | 単位 |
|---|---|---|---|---|
cluster_active_sessions |
アクティブ接続数 | userId,clusterId,nodeId | Average | count |
cluster_blktag_utilization |
blktag 使用率 | userId,clusterId | Average | % |
cluster_connection_utilization |
接続数使用率 | userId,clusterId,nodeId | Average,Maximum,Minimum | % |
cluster_cpu_utilization |
CPU 使用率 | userId,clusterId,nodeId | Average | % |
cluster_data_io |
ストレージエンジンの 1 秒あたり I/O スループット | userId,clusterId,nodeId | Average | KB |
cluster_data_iops |
ストレージエンジンの 1 秒あたり I/O 回数 | userId,clusterId,nodeId | Average | countSecond |
cluster_direntry_utilization |
direntry 使用率 | userId,clusterId | Average | % |
cluster_disk_utilization |
ディスク使用率 | userId,clusterId | Average | % |
cluster_imci_datasize |
IMCI ノードの列ストアインデックス保存量 | userId,clusterId,nodeId | Average | MB |
cluster_imci_exememusage |
IMCI 実行器の使用メモリ量 | userId,clusterId,nodeId | Average | Byte |
cluster_imci_stmtsexepersec |
IMCI の 1 秒あたりのクエリ SQL 数 | userId,clusterId,nodeId | Average | count/s |
cluster_imci_stmtsinqueue |
IMCI スケジューリングキュー内の SQL 数 | userId,clusterId,nodeId | Average | count |
cluster_imci_tmpfileusedsize |
IMCI 実行器の一時テーブルサイズ | userId,clusterId,nodeId | Average | Byte |
cluster_inode_utilization |
inode 使用率 | userId,clusterId | Average | % |
cluster_input_traffic |
ネットワーク受信トラフィック(1 秒あたり) | userId,clusterId,nodeId | Average,Maximum,Minimum | KByte/s |
cluster_iops |
I/O 回数(1 秒あたり) | userId,clusterId,nodeId | Average | countSecond |
cluster_iops_usage |
IOPS 使用率 | userId,clusterId,nodeId | Average,Maximum,Minimum | % |
cluster_mem_hit_ratio |
メモリヒット率 | userId,clusterId,nodeId | Average | % |
cluster_memory_utilization |
メモリ使用率 | userId,clusterId,nodeId | Average | % |
cluster_mps |
1 秒あたりのデータ操作数 | userId,clusterId,instanceId | Average,Maximum,Minimum | countSecond |
cluster_output_traffic |
ネットワーク送信トラフィック(1 秒あたり) | userId,clusterId,nodeId | Average,Maximum,Minimum | KByte/s |
cluster_proxy_cpu_utilization |
Proxy CPU 使用率 | userId,clusterId | Average,Maximum,Minimum | % |
cluster_qps |
クエリ数(1 秒あたり) | userId,clusterId,nodeId | Average | count |
cluster_redo_write_rate |
redo ログ書き込みレート | userId,clusterId,nodeId | Average | Byte/s |
cluster_replica_lag |
読み取り専用ノードのレプリケーション遅延 | userId,clusterId,instanceId | Average,Minimum,Maximum | seconds |
cluster_slow_queries_ps |
スロークエリ数(1 秒あたり) | userId,clusterId,nodeId | Average | countS |
cluster_total_session |
現在の総接続数 | userId,clusterId,nodeId | Average,Maximum,Minimum | count |
cluster_tps |
トランザクション数(1 秒あたり) | userId,clusterId,nodeId | Average | countS |
オブジェクト¶
収集された Alibaba Cloud PolarDB MySQL オブジェクトデータ構造で、「インフラストラクチャ / カスタム」でオブジェクトデータを確認できます
{
"measurement": "aliyun_polardb",
"tags": {
"name" : "pc-xxxx",
"RegionId" : "cn-hangzhou",
"VpcId" : "vpc-xxxx",
"DBNodeNumber" : "2",
"PayType" : "Postpaid",
"DBType" : "MySQL",
"LockMode" : "Unlock",
"DBVersion" : "8.0",
"DBClusterId" : "pc-xxxx",
"DBClusterNetworkType": "VPC",
"ZoneId" : "cn-hangzhou-i",
"Engine" : "POLARDB",
"Category" : "Normal",
"DBClusterDescription": "pc-xxxx",
"DBNodeClass" : "polar.mysql.x4.medium"
},
"fields": {
"DBNodes" : "{节点列表 JSON 数据}",
"Database" : "[数据库详情 JSON 数据]",
"ExpireTime": "",
"CreateTime": "2022-06-17T06:07:19Z",
"message" : "{实例 JSON 数据}"
}
}
ログ¶
スロークエリ詳細¶
前提条件¶
ヒント: このスクリプトのコード実行は PolarDB インスタンスオブジェクトの収集に依存します。PolarDB のカスタムオブジェクト収集を設定していない場合、スローログスクリプトではスローログデータを収集できません
スクリプトのインストール¶
前提に加えて、対応する PolarDB スロークエリ詳細ログ収集スクリプト をさらにインストールする必要があります
「管理 / スクリプトマーケット」で該当のスクリプトパッケージをクリックしてインストールします。
- 「Guance インテグレーション(Alibaba Cloud-PolarDB スロークエリ詳細ログ収集)」(ID:
integration_alibabacloud_polardb_slowlog_record)
データが正常に同期された後、Guance の「ログ」でデータを確認できます。
送信データの例は次のとおりです。
{
"measurement": "aliyun_polardb_slowlog_record",
"tags": {
"DBName" : "PolarDB_MySQL",
"DBNodeId" : "pi-***************",
"HostAddress": "testdb[testdb] @ [100.**.**.242]"
},
"fields": {
"SQLText" : "select id,name from tb_table",
"ExecutionStartTime": "2021-04-07T03:47Z",
"QueryTimes" : 20,
"ReturnRowCounts" : 0,
"ParseRowCounts" : 0,
"LockTimes" : 0,
"QueryTimeMS" : 100,
"message" : "{日志 JSON 数据}"
}
}
一部のパラメータの説明は次のとおりです。
| フィールド | 型 | 説明 |
|---|---|---|
QueryTimes |
Long | SQL 実行時間、単位は秒 |
QueryTimesMS |
Long | クエリ時間。単位はミリ秒 |
ReturnRowCounts |
Long | 返却行数 |
ParseRowCounts |
Long | 解析行数 |
ExecutionStartTime |
String | SQL の実行開始時刻。形式は YYYY-MM-DDThh:mmZ(UTC 時間) |
LockTimes |
Long | SQL のロック時間、単位は秒 |
注意:
tags、fields内のフィールドは、今後の更新により変更される場合がありますヒント:
fields.messageは JSON シリアライズ後の文字列です