RDS: MySQLのログを取得する
RDSのログファイルを取得出来るようになった
Amazon Web Services ブログ: 【AWS発表】Amazon RDS - より簡単にログファイルにアクセス可能に
ということで、RDS( MySQL )のログを取得する手順。
注意点として、RDS(MySQL)では4種類のログ(エラーログ、エラーランニングログ、ジェネラルログ、スローログ)にアクセスできるが、デフォルトではエラーログのみ有効となっている。
Working with MySQL Database Log Files - Amazon Relational Database Service
他のログを有効にするためには、Parameter Groupの以下を設定変更する必要がある。
パラメータ名デフォルト値変更値
general_log | (null) | 1 |
log_output | TABLE | FILE |
slow_query_log | (null) | 1 |
long_query_time | (null) | 1 |
Parameter Groupに設定した後、DBインスタンスをrebootさせておく。
うまく行っていれば、ログ一覧に以下の4種類のログがみえるはず。
- error/mysql-error.log
- error/mysql-error-running.log
- general/mysql-general.log
- slowquery/mysql-slowquery.log
コマンドラインでの確認方法(リファレンス)
$ rds-describe-db-log-files test DBLOGFILES error/mysql-error-running.log Thu Apr 11 07:20:00 UTC 2013 1034 DBLOGFILES error/mysql-error-running.log.0 Wed Apr 10 23:00:00 UTC 2013 0 DBLOGFILES error/mysql-error-running.log.1 Thu Apr 11 00:00:00 UTC 2013 0 ---snip--- DBLOGFILES error/mysql-error.log Thu Apr 11 07:45:00 UTC 2013 0 DBLOGFILES general/mysql-general.log Thu Apr 11 07:49:45 UTC 2013 41278 DBLOGFILES slowquery/mysql-slowquery.log Thu Apr 11 07:45:00 UTC 2013 1477
コマンドラインでのtail -f的なwatchの方法(リファレンス)
$ rds-watch-db-logfile test --log-file-name slowquery/mysql-slowquery.log /rdsdbbin/mysql/bin/mysqld, Version: 5.5.27-log (Source distribution). started with:
コマンドラインでのファイル取得方法(リファレンス)
$ rds-download-db-logfile test --log-file-name slowquery/mysql-slowquery.log > aa.log
こちらも参考に
RDSのログファイルアクセス機能を使ってみました - サーバーワークス エンジニアブログ
EC2: RDS: Amazon LinuxでRDSのCLIを使う - aws memo