💽
RDS Aurora MySQL 本番環境運用時に必要なログ出力の設定
この記事は
RDS Aurora MySQL 本番環境運用時に必要なログ出力の設定方法をまとめました。
次の種類の RDS for MySQL ログファイルをモニタリングできます。
・エラーログ
・スロークエリログ
・全般ログ
・監査ログ
パラメータグループを確認
監査ログとスロークエリログに関しては、クラスターレベルのパラメータまたはインスタンスレベルのパラメータの修正が必要になります。
カスタムパラメータグループを作成している場合、クラスターまたはインスタンスに適切に設定されていることを確認してください。
エラーログ
データベースエンジンによって検出されたエラーや警告メッセージが記録されます。
パラメータグループは特に修正する必要はありません。
スロークエリログ
設定した時間よりも長く実行されるクエリが記録されます。パフォーマンスを劣化させるクエリを特定し、最適化を行うことが可能です。
インスタンスのパラメータグループを修正する必要があります。
- slow_query_log
- 1 を設定する
- long_query_time
- 任意の秒数、小数指定も可
- 設定例
- 1
全般ログ
SQLクエリの実行、接続情報、エラーメッセージ、トランザクション情報など、データベースの動作に関する情報を記録します。
インスタンスのパラメータグループを修正する必要があります。
- general_log
- 1 を設定する
監査ログ
データベース上での監査イベント(例:ログイン/ログアウト、クエリ実行、テーブルアクセスなど)の記録をします。
クラスターのパラメータグループを修正する必要があります。
- server_audit_logs_upload
- 1 を設定する
- server_audit_logging
- 1 を設定する
- server_audit_events
- 記録するイベントの種別を設定
- CONNECT - 成功した接続と失敗した接続の両方、および切断を記録します。このイベントにはユーザー情報が含まれています。
- QUERY - すべてのクエリをプレーンテキストで記録します (構文またはアクセス権限エラーで失敗
- QUERY_DCL - QUERY イベントと同様ですが、データ制御言語 (DCL) クエリ (GRANT、REVOKE など) のみ返します。
- QUERY_DDL - QUERY イベントと同様ですが、データ定義言語 (DDL) クエリ (CREATE、ALTER など) のみ返します。
- QUERY_DML - QUERY イベントと同様ですが、データ操作言語 (DML) クエリ (INSERT、UPDATE などと、SELECT) のみ返します。
- TABLE - クエリ実行の影響を受けたテーブルを記録します。
- 設定例
CONNECT,QUERY
- 記録するイベントの種別を設定
Cloudwatchへの転送を有効にする
RDSのクラスターの設定からログの出力を有効にします。
Discussion