Amazon RDS での MySQLの監視を強化するためにやったこと

拡張モニタリングを有効化します。

この設定を有効にすることでプロセスリストが表示されるようになります。ここでいうプロセスリストは mysql の show processlist ではなく top コマンドの結果に近いものになります。

あとはload averageやCPU使用率など、RDSのMySQLプロセスに関する情報だけでなくOSレベルの情報も把握できるようになります。

http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html

インスタンスを選択して「変更」→

  • 「拡張モニタリングを有効にする」:はい
  • 「モニタリングロール」:rds-monitoring-role(ロールがまだ無い場合は「デフォルト」を選択)
  • 「詳細度」:60 second(s)

設定変更によるインスタンスの再起動は発生しません。

MariaDB 監査プラグインの追加

データベースへのユーザーのログオンやデータベースに対して実行されたクエリなどのデータベースログを残せるようになります。

http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/Appendix.MySQL.Options.AuditPlugin.html#Appendix.MySQL.Options.AuditPlugin

オプショングループを新たに作成

インスタンスを選択して「変更」→

  • 「オプショングループ」:新たに作成したオプショングループを選択します。

設定変更によるインスタンスの再起動は発生しません。

スロークエリログやエラーログなどが出力されているのと同じへんに実際に発行されたSQLのログが残っていくようになります。

実際のクエリは残さなくてもコネクションのログだけ残すのでもいいかもしれません。