Grid Engine ソフトウェアは、特定のファイルにメッセージを記録するか、電子メールを送信する (または両方の手段) でエラーや警告を報告します。ログファイルには、メッセージ ファイルとジョブ STDERR 出力が含まれます。
ジョブが開始されるとただちに、ジョブスクリプトの標準的なエラー (STDERR ) 出力がファイルにリダイレクトされます。デフォルトのファイル名と位置が使用されますが、qsub コマンドのある種のオプションを使用してファイル名と位置を指定することもできます。詳細については、Grid Engine システムのマニュアルページを参照してください。
sge_qmaster、sge_schedd、および sge_execd のそれぞれに messages ファイルがあります。各ファイルには同じファイル名、 messages が付けられています。sge_qmaster ログファイルは、マスタースプールディレクトリに存在します。sge_schedd メッセージ ファイルは、スケジューラスプールディレクトリに存在します。実行デーモンのログファイルは、実行デーモンのスプールディレクトリに存在します。スプールディレクトリの詳細については、『Sun N1 Grid Engine 6.1 インストールガイド』の「ルートディレクトリの下のスプールディレクトリ」を参照してください。
各メッセージは、ファイル内の 1 行を使用します。各メッセージは、縦線記号 (|) で区切られた 5 つのコンポーネントに再分割されます。
最初のコンポーネントは、メッセージのタイムスタンプです。
2 つ目のコンポーネントは、メッセージを生成するデーモンを指定します。
3 つ目のコンポーネントは、デーモンが動作しているホスト名です。
4 つ目はメッセージの種類です。メッセージの種類は、次のいずれかです。
通知の N (情報提供が目的)
情報の I (情報提供が目的)
警告の W
エラーの E (エラー状態の検出)
重大の C (プログラムの異常終了になる可能性あり)
クラスタ構成で loglevel パラメータを使用して、グローバルまたはローカルにどのメッセージの種類を記録するかを指定します。
5 つ目のコンポーネントは、メッセージのテキストです。
何らかの理由でエラーログファイルにアクセスできない場合、Grid Engine システムは、対応するホストのファイル /tmp/sge_qmaster_messages 、/tmp/sge_schedd_messages、または /tmp/sge_execd_messages にエラーメッセージを記録しようとします。
状況によっては、Grid Engine システムは電子メールでユーザーか管理者、またはその両方にエラーイベントを通知します。Grid Engine システムにより送信される電子メールメッセージには、メッセージ本文は含まれません。メッセージテキストは、メールの件名フィールドにすべて含まれます。
次の表に、ジョブ関連のさまざまエラーコードまたは終了コードの意味を示します。これらのコードは、あらゆる種類のジョブに該当します。
表 9–1 ジョブ関連のエラーまたは終了コード
スクリプト/方法 |
終了/エラーコード |
意味 |
---|---|---|
Job スクリプト |
0 |
正常終了 |
|
99 |
再度キューに入れる |
|
Rest |
成功。アカウンティングファイルの終了コード |
|
|
|
プロローグ/エピローグ |
0 |
正常終了 |
|
99 |
再度キューに入れる |
|
Rest |
キューのエラー状態。ジョブは再度キューに入れられる |
次の表に、並列環境 (PE) 構成関連のジョブのエラーコードまたは終了コードの意味を示します。
表 9–2 並列環境関連のエラーまたは終了コード
スクリプト/方法 |
終了/エラーコード |
意味 |
---|---|---|
pe_start |
0 |
成功 |
|
Rest |
キューをエラー状態に設定。ジョブは再度キューに入れられる |
|
|
|
pe_stop |
0 |
成功 |
|
Rest |
キューをエラー状態に設定。ジョブは再度キューには入れられない |
次の表に、キュー構成関連のジョブのエラーコードまたは終了コードの意味を示します。これらのコードは、対応する方法が書き換えられた場合にのみ該当します。
表 9–3 キュー関連のエラーまたは終了コード
スクリプト/方法 |
終了/エラーコード |
意味 |
---|---|---|
ジョブ開始 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
|
|
|
一時停止 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
|
|
|
再開 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
|
|
|
終了 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
次の表に、チェックポイント設定関連のジョブのエラーコードまたは終了コードの意味を示します。
表 9–4 チェックポイント設定関連のエラーまたは終了コード
スクリプト/方法 |
終了/エラーコード |
意味 |
---|---|---|
チェックポイント |
0 |
成功 |
|
Rest |
成功。ただし、カーネルチェックポイントの場合は、チェックポイントが失敗したことを意味する。 |
|
|
|
移行 |
0 |
成功 |
|
Rest |
成功。ただし、カーネルチェックポイントの場合は、チェックポイントが成功しなかったことを意味する。移行は行われる。 |
|
|
|
再起動 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
|
|
|
後処理 |
0 |
成功 |
|
Rest |
成功。ほかの意味は特になし |
重大なエラー状態が発生した場合に、問題の特定に十分な情報がエラー記録機構によって生成されないことがあります。このため、Grid Engine システムには、ほぼすべての補助プログラムとデーモンをデバッグモードで実行する機能が用意されています。デバッグのレベルは、提供される情報の量および深さに応じて異なります。デバッグのレベルは、0 から10 の範囲で、10 はもっとも詳細な情報を提供するレベル、0 はデバッグ無効です。
デバッグレベルを設定するため、Grid Engine システムの配布には、ユーザーの .cshrc または .profile リソースファイルに対する拡張が用意されています。csh または tcsh のユーザーには、ファイル sge-root/util/dl.csh が含まれています。sh または ksh のユーザーに対応するファイルの名前は sge-root/ util/dl.sh です。標準のリソースファイルに、これらのファイルを取り込む必要があります。csh または tcsh のユーザーの場合は、.cshrc ファイルに次の行を含めます。
source sge-root/util/dl.csh |
sh または ksh のユーザーの場合は、.profile ファイルに次の行を含めます。
. sge-root/util/dl.sh |
いったんログアウトして、ログインし直すと、次のコマンドを使用してデバッグレベルの level を設定できるようになります。
% dl level |
level が 0 より大きい場合、Grid Engine システムのコマンドを開始すると、トレース出力が STDOUT に書き込むようコマンドに強制します。このトレース出力には、警告メッセージ、ステータスメッセージ、エラーメッセージばかりでなく、内部的に呼び出されたプログラムモジュール名が含まれます。メッセージには、ユーザーが指定するデバッグレベルに応じて、エラーの報告に役立つ行番号情報も含まれます。
デバッグトレースを監視するには、大きなサイズのスクロール行バッファーを持つウィンドウを使用する必要があります。たとえば、1000 行のスクロール行バッファーを使用します。
ウィンドウが xterm の場合、 xterm のログ記録機構を使用してあとでトレース出力を調べることができます。
デバッグモードで Grid Engine システムデーモンの 1 つを実行すると、デーモンが端末接続を維持して、トレース出力を書き出します。こうした端末接続は、使用している端末エミュレーションの割り込み文字を入力することによって打ち切ることができます。たとえば、Control-C などを使用します。
デバッグモードを無効にするには、デバッグレベルを 0 に戻します。
sgedbwriter スクリプトは、dbwriter プログラムを開始します。このスクリプトの位置は、sge_root /dbwriter/bin/sgedbwriter です。sgedbwriter スクリプトは、dbwriter の構成ファイルである dbwriter.conf を読み取ります。この構成ファイルの位置は、sge_root/cell /common/dbwriter.conf です。この構成ファイルは、dbwriter のデバッグレベルを設定します。たとえば、次のように指定します。
# # Debug level # Valid values: WARNING、INFO、CONFIG、FINE、FINER、FINEST、ALL # DBWRITER_DEBUG=INFO |
dbwriter コマンドの –debug オプションを使用すると、dbwriter により作成されるメッセージの数を変更できます。通常は、デフォルトのデバッグレベル info を使用する必要があります。より詳細なデバッグレベルを使用する場合は、dbwriter により出力されるデータ量を大幅に増やします。
次のデバッグレベルを指定できます。
重大なエラーと警告のみが表示されます。
情報メッセージの数が追加されます。info はデフォルトのデバッグレベルです。
たとえば規則の処理に関する、dbwriter 構成に関連する追加の情報が得られます。
さらに多くの情報が作成されます。このデバッグレベルを選択すると、dbwriter により実行されるすべての SQL 文が出力されます。
デバッグ用に使用します。
デバッグ用に使用します。
すべてのレベルの情報を表示します。デバッグ用に使用します。