RDSのログファイルアクセス機能を使ってみました

記事タイトルとURLをコピーする
こんにちは、AWSチームの柳瀬です。 すでにご存知の方もいるかと思いますが、本日RDSに待望の機能が追加されたようです。 【AWS発表】Amazon RDS - より簡単にログファイルにアクセス可能に というわけで簡単に動作確認をしてみたいと思います。

最新版のRDS command Line Toolkitを取得

こちらのページからダウンロードが出来るので、セットアップをして下さい。

ログファイルの一覧を確認する

DBインスタンスのログファイル一覧を確認するためには、rds-describe-db-log-filesコマンドを使います。 ––db-instance-identifierオプションで対象のRDSインスタンスを特定します。
$ rds-describe-db-log-files --db-instance-identifier okochangdb
DBLOGFILES  error/mysql-error-running.log  Tue Mar 05 11:00:00 JST 2013  3370
DBLOGFILES  error/mysql-error.log          Tue Mar 05 11:25:00 JST 2013  0

実際のログファイルの中身を確認する

次に実際のログファイルを確認してみたいと思います。 rds-download-db-logfileまたはrds-watch-db-logfileで取得出来ますので、お好みの方をお使い下さい。 どちらも––db-instance-identifierオプションで対象のRDSインスタスを特定し、––log-file-nameで中身を確認したいログファイルを特定します。 rds-download-db-logfileの場合
$ rds-download-db-logfile --db-instance-identifier okochangdb --log-file-name error/mysql-error-running.log
130305  1:55:41 [Note] Plugin 'FEDERATED' is disabled.
130305  1:55:41 InnoDB: The InnoDB memory heap is disabled
130305  1:55:41 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130305  1:55:41 InnoDB: Compressed tables use zlib 1.2.3
130305  1:55:41 InnoDB: Using Linux native AIO
130305  1:55:41 InnoDB: Initializing buffer pool, size = 311.0M

==中略==

130305  1:57:17 [Note] Server hostname (bind-address): '0.0.0.0'; port: 3306
130305  1:57:17 [Note]   - '0.0.0.0' resolves to '0.0.0.0';
130305  1:57:17 [Note] Server socket created on IP: '0.0.0.0'.
130305  1:57:17 [Note] Event Scheduler: Loaded 0 events
130305  1:57:17 [Note] /rdsdbbin/mysql/bin/mysqld: ready for connections.
Version: '5.5.27-log'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
rds-watch-db-logfileの場合
$ rds-watch-db-logfile --db-instance-identifier okochangdb --log-file-name error/mysql-error-running.log

まとめ

以上のように簡単にログアクセスが出来るようになりました。 RDSを使ってるユーザーからエラーログにアクセスしたいという声を何度も耳にしたので、とても素晴らしい機能追加だと思います。 今回は簡単な使い方の紹介でしたが、詳しい使い方もhelpを見れば簡単に使う事が出来ると思います。