もくじ
CPU
- CPU Utilization
CPU使用率が40%を5分でアラーム
Memory
- Freeable Memory
30%を切ったらアラームなど
SWAP
- 0が望ましい。
SWAP発生時点でアラーム
EBS
Latency
- Write Latency
100msを超えたらアラーム - Read Latency
100msを超えたらアラーム
I/O
- Network Receive Throughput (MB/Second)
受信スループット - Network Transmit Throughput (MB/Second)
送信スループット
IOPS
- [Billed] Volume Read IOPS (Count)
- [Billed] Volume Write IOPS (Count)
Storage Free
- ディスク容量の監視。自動拡張が有効であれば無視できる
Connections
- DB Connections
接続数。1,000を超えたらアラームなど
Network
- Network Throughput (Byte/Second)
スループット
CPU Credit Usage (Count)
- T系のインスタンスを利用している場合
本番では非推奨だけれど、プロジェクトによってはT系で運用しているものはあるでしょう。
Deadlocks
- Deadlocks
デッドロック数
Deadlockで検知できるものは、コンソールのモニターで見れる。
エラーログ出力を有効化していれば「LATEST DETECTED DEADLOCK」に記述される。
ただしinnodb側でDeadlockではない、長時間処理のただの行ロックは検知できない。lock waitが発生していない訳ではない。
検知できない行ロックは、
Aborted connectionでRDS Error ログを見つける
2022-04-11T09:46:03.735342Z 259764 [Note] [MY-010914] [Server] Aborted connection 259764 to db: 'unconnected' user: 'sampleuser' host: '172.xxx.xxx.242' (Got an error writing communication packets). (sql_connect.cc:835)
その日時でアプリケーションログを見る
2022/04/11 17:22:27 [staging.ERROR] App\Exceptions\Handler@report(48) - SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction (SQL: update `xxx_contents` set `name` = "hoge", `items` = [ { "key": "chat", ・・・
Lock waitが記録されている、ことがある。