LoginSignup
2
1

More than 3 years have passed since last update.

DB2DBA: 診断ログファイル

Last updated at Posted at 2017-11-17

診断ログファイルとは

トラブルシューティングのために必要なイベントやエラーに関する情報が記録されるファイルです。IBMサポートが主に利用するものと位置づけられていますが、管理通知ログファイルよりも詳細な情報が記録されており、検索のためのコマンドインターフェースも提供されているため、DBAにとっても有用なログです。

ここでは診断ログファイルの参照方法や設定について解説します。

診断ログファイルの参照

以下のコマンドで診断ログファイルの内容を参照できます。

$ db2diag

db2diagコマンドのオプションにより検索条件を指定することもできます。以下によく使うオプションとその使用例を挙げておきます。各オプションは組み合わせて使用することが出来ます(AND検索)。

オプション 機能
-l 重大度の指定(複数指定可) db2diag -l Info,Warning,Error,Severe,Critical,Event
-e エラーコードの指定(複数指定可) db2diag -e 911,913
-t 開始時刻・終了時刻の指定(一方のみでも可) db2diag -t 2017-11-10:2017-11-10-20.30.00.000000
db2diag -t 2017-11-10:
db2diag -t :2017-11-10-20.30.00.000000
-H 指定範囲での最新のログの出力 db2diag -H 1M
db2diag -H 2d
db2diag -H 6h
db2diag -H 15m
-g 各種項目でのフィルタリング db2diag -g AUTHID=SVC34
db2diag -g DB=SAMPLE,MESSAGE:=ADM1823E

-gオプションでのフィルタリングには様々なパターンが用意されているので、マニュアルを確認してみてください。

出力されるログの各項目の解説はについては、こちらを参考に。

診断ログファイルのアーカイブ

診断ログファイルは放っておくとサイズが増え続けていくため、定期的なアーカイブが必要です。

$ db2diag -A パス名

アーカイブされたログファイルの内容は、以下のようにdb2diagコマンドの入力に指定することで検索出来ます。

$ db2diag アーカイブファイル名 各種オプション

診断ログファイルの出力先

診断ログの出力先は、DBマネージャ構成パラメータDIAGPATHにより設定されます。したがって、インスタンスレベルでの設定となります。また、DIAGPATHに出力できなかった場合の代わりの出力先をALT_DIAGPATHに設定することもできます。

出力先の確認

$ db2 "get dbm cfg" | grep DIAGPATH

デフォルトでは$INSTHOME/sqllib/db2dumpが指定されています。

出力先の変更

$ db2 "update dbm cfg using DIAGPATH パス名"

通知レベル

診断ログの通知レベルは、DBマネージャ構成パラメータDIAGLEVELにより設定されます。DIAGLEVELには0から4までの値を設定可能で、数字が大きいほど詳細な情報が記録されるようになります。

通知レベルの確認

$ db2 "get dbm cfg" | grep DIAGLEVEL

デフォルトは3となっています。

通知レベルの変更

$ db2 "update dbm cfg using DIAGLEVEL 3"

参考資料

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1