問題判別の手引き

システム・エラー・ログ (syslog) の使用

DB2 は、重大なエラーおよび警告条件をシステム・エラー・ログ (syslog) ファイルに記録します。 これらの項目は通常、db2diag.log にあるデータのサブセットです。 ただし、例外として、DB2 データベース管理プログラムが db2diag.log に書き込むことができなかった重大なエラーは含まれません。 そのようなエラーが生じた場合、syslog ファイルを見ることをお勧めします。

エラーまたは警告条件を引き起こした関数および優先順位に基づいて、 項目が syslog に追加されます。 たとえば、システム・セキュリティー、カーネル、 およびシステム・デーモンによって、項目が記録されることがあります。

優先順位は、メッセージの緊急度を示します。 メッセージ優先順位を、 上位優先順位から下位優先順位の順に以下に示します。

DB2 は、非常に重大な状況 (たとえば、エージェントが強制終了された場合、 またはデータベースのアーキテクチャーに損傷が生じた場合など) についてのみ、 アラート・メッセージをシステム・エラー・ログに追加します。 アラートは、db2diag.log およびアラート・ログ (db2alert.log) の中で参照されます。 詳細については、初期障害データ捕そく機能を参照してください。

システム・エラー・ログのセットアップ

アラートをシステム・エラー・ログに経路指定するには、 次のステップに従ってください。

  1. それぞれのマシンは、 関数および優先順位の種々の組み合わせを記録するように構成できます。 DB2 エラーおよび警告条件の syslog へのログを開始するには、 /etc/syslog.conf ファイルに次の行を追加して、 ログ・ファイルを作成しなければなりません。 そのためには、システム権限が必要です。

           user.warn     fully_qualified_file_name
    
    ここで、
  2. syslog デーモンに対して再始動のシグナルを送信しなければなりません。 syslog.conf ファイルの新しい構成を認識するためです。 次のシグナルを使用します。
  3. 情報が syslog ファイルに記録されたかどうかを確認するには、次のコマンドを発行します。

    ps -fu db2sysc
    kill -36 db2sysc.process.id
    
  4. fully_qualified_file_name でファイルをチェックします (/etc/syslog.conf ファイルに定義されています)。 ファイル内に情報があれば、システム・エラー・ログは情報の取り込みが可能となります。
  5. ログ・ファイルはすぐに情報がいっぱいになりますので、 定期的にサイズを縮小しなければなりません。 次のコマンドを発行した後、kill -1 pid_of_syslog を使用しなければなりません。

    mv logfile logfile.old
    touch logfile
    
    AIX の場合、kill コマンドを使用する代わりに、 正規のシステム保守の一部として実行する crontab に、 次の行を組み込むこともできます。

    refresh -s syslogd
    

システム・エラー・ログの説明

データベース管理プログラムによって生成されるメッセージは、/etc/syslog.conf ファイルの中にあります。

システム・ログ内の項目の例を、以下に示します。 この例では、ページ内に収まるように項目が切り捨てられています。
Jun 18 15:02:53 bluj DB2[46827]: DB2 (db2inst1.000(1)) oper_system_services sqlobeep(2) reports:(3)
Jun 18 15:02:53 (4) bluj (5) DB2[46827(6)]: extra symptom string provided:(7) RIDS/sqlesysc_
Jun 18 15:02:53 bluj DB2[46827]:     data: (8)  54686973  20697320  616e2065  78616d70
Jun 18 15:02:53 bluj DB2[46827]:     data:   6c65206f  66206c6f  67676564  20646174
Jun 18 15:02:53 bluj DB2[46827]:     data:   61
Jun 18 15:02:53 bluj DB2[46827]: 2 piece(s) of dump data provided... to file(9) /u/db2inst1/
Jun 18 15:02:53 bluj DB2[46827]:         1. 'DUMP EXAMPLE #1' has been dumped (10)
Jun 18 15:02:53 bluj DB2[46827]:         2. 'DUMP EXAMPLE #2' has been dumped

凡例:

(1)
インスタンス名、および (DB2 ユニバーサル・データベース エンタープライズ拡張エディション (Solaris 版) および DB2 ユニバーサル・データベース エンタープライズ拡張エディション (Windows NT 版) システムで db2nodes.cfg ファイルを使用する場合) ノード番号。

(2)
報告コンポーネントおよび関数。

(3)
第 1 行には、プローブ ID、エラー番号、およびアラート番号が続きます。

(4)
イベントが起きた時のタイム・スタンプ。

(5)
ホスト名。

(6)
報告プロセスのプロセス ID。

ps コマンドは、 報告プロセスのプロセス ID の情報を表示する時に使用します。 たとえば、コマンド・プロンプトから次のコマンドを実行して、 この例の報告プロセスの情報を入手します。

ps -fu 46827

(7)
問題が起きた場所と理由に関する詳しい情報を含む症状ストリング。

(8)
戻りコードおよび DB2 カスタマー・サポートで解釈されるその他の情報を含むデータの 16 進ダンプ。

(9)
追加ダンプ・ファイルについての情報。 大きな構造および他の 2 進データは、 追加ファイルにダンプすることができます。 通常、これらのファイルは /u/$DB2INSTANCE/sqllib/db2dump にあります。 ファイル名は、syslog ファイルの中で識別されます。

(10)
ダンプ・データの一部を識別するための項目。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]