【備忘録】Aurora for MySQL で Performance Insights を有効化して、Slow Query も出力する

こんにちは

 

今回は完全に備忘録となります

実務で利用している Aurora for MySQL で Performance Insights を有効化して、Slow Query も出力する機会があったので、その手順を残しておきます

※ここでは Performance Insights や Slow Query の説明はしません

 

■前提

Amazon Aurora DB エンジンでは、db.t2 や db.t3 系のインスタンスクラスをサポートしていないので、最低でも db.t4g.medium くらいを利用する必要があります

公式ドキュメント

 

■手順

1. Performance Insights の有効化

Aurora and RDS > データベース > DBクラスター名 > 変更 > Performance Insights を有効にする をチェックして、変更を適用を押下する

 

Aurora and RDS Performance insights > DBインスタンス名 を選択して、各種メトリクスなどが表示されていることを確認する

 

2. Slow Query の有効化

まずはパラメータストアを変更します

Aurora and RDS > パラメータグループ > クラスターパラメータ名 へ画面遷移し、下記へ変更します

slow_query_log を 1

long_query_time を 1以上

 

それではここで一度クエリを実行し、スロークエリが出力されるかどうか確認します

SELECT SLEEP(3);

 

ログとイベント > ログ へ画面遷移し、slowquery/mysql-slowquery.log のようなログファイルが存在する稼働確認し、下記のように出力されていればOKです

/rdsdbbin/oscar/bin/mysqld, Version: 8.0.42 (Source distribution). started with:
Tcp port: 3306  Unix socket: /tmp/mysql.sock
Time                 Id Command    Argument
# Time: 2026-04-25T07:55:04.840549Z
# User@Host: root[root] @  [10.0.10.228]  Id:   141
# Query_time: 3.000233  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 1
use test_db;
SET timestamp=1777103701;
SELECT SLEEP(3);

----------------------- END OF LOG ----------------------

 

3. Slow Query を CloudWatch Logs に出力する

Aurora and RDS > データベース > DBクラスター名 へ画面遷移し、ログのエクスポート欄の スロークエリログ をチェックしたうえで、変更を適用します

 

最後に CloudWatch Logs へ移動し、/aws/rds/cluster/【クラスター名】/slowquery からスロークエリを確認します

※以前に出力したものも転送されます

# Time: 2026-04-25T07:55:04.840549Z
# User@Host: root[root] @  [10.0.10.228]  Id:   141
# Query_time: 3.000233  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 1
use test_db;
SET timestamp=1777103701;
SELECT SLEEP(3);

 

■最後に

いかがでしたでしょうか

今回は自分用の備忘録でしたが、たまにやってみるとどこにスロークエリログが出力されるのか忘れてしまうことがあるので、いい感じにまとめれてよかったです

それではまた

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA