aws memo

AWS関連の備忘録 (※本ブログの内容は個人的見解であり、所属組織及び企業の意見を代弁するものではありません。1年以上古いエントリは疑ってかかってください)

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