2011年7月13日水曜日

"Oracle RDS"でトレースファイルを取得

スズキです。

下記で、アラートログとリスナーログの取得を紹介したので、
"Oracle RDS"のアラートログとリスナーログを確認
今回はトレースファイルの内容の取得です。
(トレースファイルは、エラーなどの発生状況をより詳細に記録したファイルです)

まずは下記のように準備します。

SQL> exec rdsadmin.manage_tracefiles.refresh_tracefile_listing;
PL/SQLプロシージャが正常に完了しました。

こんなビューができて、

SQL> desc rdsadmin.tracefile_listing;
名前      型                                       
--------  -------------
FILENAME  VARCHAR2(400)
TYPE      VARCHAR2(12)
FILESIZE  NUMBER
MTIME     VARCHAR2(400)

内容はこんな感じです。

SQL> select FILENAME from rdsadmin.tracefile_listing; 
FILENAME
----------------------------
...
alert_SUZLAB.log.2011-07-09
SUZLAB_m000_30430.trc
SUZLAB_j000_19395.trm
...

トレースファイルの内容は、上記でリスティングしたトレースファイル名を、
下記のように指定してPL/SQLプロシージャを実行し、"tracefile_table"をSELECTすることで確認できます。

SQL> exec rdsadmin.manage_tracefiles.set_tracefile_table_location('SUZLAB_m000_30430.trc');
PL/SQLプロシージャが正常に完了しました。
SQL> select * from tracefile_table;
TEXT
--------------------------------------------------------------------------------
Trace file /rdsdbdata/log/diag/rdbms/suzlab_a/SUZLAB/trace/SUZLAB_m000_30430.trc
Oracle Database 11g Release 11.2.0.2.0 - 64bit Production
ORACLE_HOME = /rdsdbbin/oracle
System name: Linux
Node name: ip-10-146-1-184
Release: 2.6.18-238.el5xen
Version: #1 SMP Sun Dec 19 14:42:02 EST 2010
Machine: x86_64
VM name: Xen Version: 3.4 (PVM)
Instance name: SUZLAB
Redo thread mounted by this instance: 1
Oracle process number: 28
Unix process pid: 30430, image: oracle@ip-10-146-1-184 (M000)
...

"hanganalyze"情報が欲しい場合は下記のようにします。

SQL> exec rdsadmin.manage_tracefiles.hanganalyze;
PL/SQLプロシージャが正常に完了しました。
SQL> exec rdsadmin.manage_tracefiles.set_tracefile_table_location('SUZLAB_ora_18585_HANGANALZE.trc');
PL/SQLプロシージャが正常に完了しました。
SQL> select * from tracefile_table;
TEXT
--------------------------------------------------------------------------------
...

"systemstate"情報が欲しい場合は下記のようにします。

SQL> exec rdsadmin.manage_tracefiles.dump_systemstate;
PL/SQLプロシージャが正常に完了しました。
SQL> exec rdsadmin.manage_tracefiles.set_tracefile_table_location('SUZLAB_ora_18810_SYSTEMSTATE.trc');
PL/SQLプロシージャが正常に完了しました。
SQL> select * from tracefile_table;
TEXT
--------------------------------------------------------------------------------
...

@kaz_gotoさん、使えるところは使ってください。
--------
http://www.suz-lab.com

0 コメント: