3.4.2 ジョブの実行結果をスプールに出力する
環境ファイルに設定されたスプールルートディレクトリに,ジョブごとのディレクトリを作成し,ジョブの実行結果を出力します。ジョブごとのディレクトリには,ジョブ実行ログやジョブステップのプログラムが出力したファイルが出力されます。
スプールディレクトリの構造を次に示します。
スプールルートディレクトリ ├ロックファイル └スプールジョブディレクトリ ├.adshallocfileまたはadshallocfile※1 ├.joborderまたはadsh.joborder※1 ├.sysoutまたはsysout.ini※1 ├EVENTFILE_ROOT_INF_000000_000000_000001 ├EVENTFILE_実行開始日時_ジョブ識別子 : ├EVENTFILE_実行開始日時_ジョブ識別子 ├JOBLOG※2 ├JOBLOG_ジョブ識別子_通番 ├JOBLOG_子孫ジョブ起動順序通し番号※1 ├SCRIPT※2 ├SCRIPT_子孫ジョブ起動順序通し番号※1 ├STDERR※2 ├STDOUT※2 ├ステップ番号_ステップ名_STDOUT※2 ├ステップ番号_ステップ名_STDERR※2 ├0000_ジョブ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名※3 ├C子孫ジョブ起動順序通し番号_0000_ジョブ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名※3 ├ステップ番号_ステップ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名※3 : ├ステップ番号_ステップ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名 └C子孫ジョブ起動順序通し番号_ステップ番号_ステップ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名※3
- 注※1
-
ジョブの実行中に一時的に作成されるファイルです。内容を次に示します。
ファイル名
説明
.adshallocfileまたはadshallocfile
.joborderまたはadsh.joborder
子孫ジョブ起動順序管理ファイル
.sysoutまたはsysout.ini
スプールジョブ管理ファイル
JOBLOG_子孫ジョブ起動順序通し番号
環境ファイルのSPOOLJOB_CHILDJOBパラメーターにMERGEを指定(子孫ジョブのスプールジョブをルートジョブのスプールジョブにマージする)した場合に出力される,マージ用の子孫ジョブのジョブ実行ログ
SCRIPT_子孫ジョブ起動順序通し番号
UNIXのSIGKILLやWindowsのTerminateProcessなどによってジョブが即時終了した場合,これらのファイルがスプールジョブディレクトリ内に残ることがあります。スプールジョブディレクトリが不要になって削除する際は,これらのファイルも一緒に削除してください。
- 注※2
-
このファイルの内容はジョブ実行ログにも出力されます。ジョブ実行ログの出力内容については,「3.5 ジョブ実行ログ」を参照してください。
- 注※3
-
#-adsh_spoolfileコマンドによって割り当てられたプログラム出力データファイルです。プログラム出力データファイルについては,「5.9.3 プログラム出力データファイルの割り当てをする」を参照してください。
- 注意事項
-
-
Windowsの場合,EVENTFILE以外のファイルは,ファイル名の後ろに拡張子「.sysout」が付きます。
-
スプールのディレクトリの下には,JP1/Advanced Shellが作成するファイルやディレクトリではないユーザー独自のファイルは置かないでください。
-
一時ファイル以外のファイルおよびディレクトリについて次に説明します。
(1) スプールルートディレクトリ
ディレクトリ名は環境ファイルのSPOOL_DIRパラメーターで設定します。
(2) ロックファイル
同じイベントファイルが複数のコマンドから同時に使用されないよう,スプールディレクトリ単位で排他制御をするために使用されます。adshevtoutコマンドおよびadshhkコマンドの実行時に生成されます。
ロックファイルのファイル名は次のとおりです。生成されたロックファイルは削除しないでください。
-
UNIXの場合:.spool.lck
-
Windowsの場合:spool.lck
(3) スプールジョブディレクトリ
ジョブ通し番号と同じ名称のディレクトリで,ジョブ単位に作成されます。ジョブ終了時に「ジョブ識別子-ジョブ名」に変更されます。
蓄積されたスプールジョブはadshhkコマンドで削除できます。adshhkコマンドについては「3.9 スプールジョブを削除する」を参照してください。
(4) EVENTFILE_ROOT_INF_000000_000000_000001
ルートジョブ検索イベントファイルです。adshevtoutコマンド(ジョブ定義スクリプトの稼働実績情報の出力)で指定された条件に該当するかを判定するための情報が格納されます。このファイルはルートジョブ単位に作成します。
次の場合,作成しません。
-
JP1/Advanced Shell - Developerの場合
-
デバッガモードで実行する場合
-
KNAX0091-Iメッセージを出力する前に,adshexecコマンドが実行を終了した場合
(5) EVENTFILE_実行開始日時_ジョブ識別子
イベントファイルです。イベントファイルの作成中はファイル名の後ろに「_making」が付きます。このファイルは,ルートジョブ,子孫ジョブ単位に作成します。
- イベントファイル名の例
-
EVENTFILE_20120422_193502_123456
次の場合,作成しません。
-
JP1/Advanced Shell - Developerの場合
-
デバッガモードで実行する場合
-
KNAX0091-Iメッセージを出力する前に,adshexecコマンドが実行を終了した場合
- 実行開始日時
-
ルートジョブまたは子孫ジョブの実行開始日時(UTC)が,次の形式で出力されます。
YYYYMMDD_hhmmss_dddddd
YYYY:西暦年を4桁の10進数(1970〜2038)で出力します。
MM:月を2桁の10進数(01〜12)で出力します。
DD:日を2桁の10進数(01〜31)で出力します。
hh:時を2桁の10進数(00〜23)で出力します。
mm:分を2桁の10進数(00〜59)で出力します。
ss:秒を2桁の10進数(00〜59)で出力します。
dddddd:マイクロ秒を6桁の10進数(000000〜999999)で出力します。
- ジョブ識別子
-
ルートジョブまたは子孫ジョブに付与される6桁の10進数が出力されます。
(6) JOBLOG
コマンドの実行結果やファイルの割り当て結果など,ジョブの動作状況を示すメッセージが出力されます。
(7) JOBLOG_ジョブ識別子_通番
子孫ジョブのジョブ実行ログです。
子孫ジョブ起動時に次のどちらかの方法で,子孫ジョブを簡潔出力モードまたは最小出力モードを指定した場合だけ作成されます。
-
adshexecコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
adshscripttoolコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
OUTPUT_MODE_CHILDパラメーターでSIMPLEまたはMINIMUMを指定する
ただし,SPOOLJOB_CHILDJOBパラメーターにMERGE(子孫ジョブのスプールジョブをルートジョブのスプールジョブにマージする)を指定した場合は作成されません。
(8) SCRIPT
スクリプトイメージファイルです。最初に起動したジョブ定義スクリプトファイルと,#-adsh_scriptコマンドで指定した外部のジョブ定義スクリプトファイルの内容が出力されます。その他の.(ドット)コマンドなどで指定する外部のジョブ定義スクリプトファイルは出力されません。ログとしてジョブ定義スクリプトの内容を出力したい場合は,#-adsh_scriptコマンドを使用します。
なお,SPOOLJOB_CHILDJOBパラメーターでMERGEを指定し,ルートジョブを拡張出力モード,子孫ジョブを最小出力モードで動作する場合は,子孫ジョブのSCRIPTはルートジョブのSCRIPTにマージされません。詳細については,「3.5.1(3)(c) ルートジョブと子孫ジョブで出力モードが異なる場合」を参照してください。
(9) STDERR
ジョブの標準エラー出力です。ルートジョブ起動時に次のどちらかの方法で,ルートジョブを簡潔出力モードまたは最小出力モードを指定した場合は作成されません。
-
adshexecコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
OUTPUT_MODE_ROOTパラメーターにSIMPLEまたはMINIMUMを指定する
ファイルの先頭行には次に示すヘッダが出力されます。
******** JOB SCOPE STDERR ********
(10) STDOUT
ジョブの標準出力です。adshexecコマンドの-sオプションおよび環境ファイルのOUTPUT_STDOUTパラメーターにSPOOLを指定した場合に作成されます。ルートジョブ起動時に次のどちらかの方法で,ルートジョブを簡潔出力モードまたは最小出力モードを指定した場合は作成されません。
-
adshexecコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
OUTPUT_MODE_ROOTパラメーターにSIMPLEまたはMINIMUMを指定する
ファイルの先頭行には次に示すヘッダが出力されます。
******** JOB SCOPE STDOUT ********
(11) ステップ番号_ステップ名_STDOUT
ジョブステップを定義した場合の,該当するジョブステップ中の標準出力です。ジョブステップ名が8バイトを超える場合,ファイル名に含むステップ名は,ジョブステップ名の最初の8バイトになります。
adshexecコマンドの-sオプションおよび環境ファイルのOUTPUT_STDOUTパラメーターにSPOOLを指定した場合に作成されます。ルートジョブ起動時に次のどちらかの方法で,ルートジョブを簡潔出力モードまたは最小出力モードを指定した場合は作成されません。
-
adshexecコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
OUTPUT_MODE_ROOTパラメーターにSIMPLEまたはMINIMUMを指定する
(12) ステップ番号_ステップ名_STDERR
ジョブステップを定義した場合の,該当するジョブステップ中の標準エラー出力です。ジョブステップ名が8バイトを超える場合,ファイル名に含むステップ名は,ジョブステップ名の最初の8バイトになります。
ルートジョブ起動時に次のどちらかの方法で,ルートジョブを簡潔出力モードまたは最小出力モードを指定した場合は作成されません。
-
adshexecコマンドの-mオプションでSIMPLEまたはMINIMUMを指定する
-
OUTPUT_MODE_ROOTパラメーターにSIMPLEまたはMINIMUMを指定する
(13) 0000_ジョブ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名
ジョブステップ外で#-adsh_spoolfileコマンドによって割り当てられたプログラム出力データファイルです。
(14) C子孫ジョブ起動順序通し番号_0000_ジョブ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名
子孫ジョブのジョブステップ外で#-adsh_spoolfileコマンドによって割り当てられたプログラム出力データファイルです。
環境ファイルのSPOOLJOB_CHILDJOBパラメーターにMERGE(子孫ジョブのスプールジョブをルートジョブのスプールジョブにマージ)を指定した場合だけ作成されます。
(15) ステップ番号_ステップ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名
ジョブステップ内で#-adsh_spoolfileコマンドによって割り当てられたプログラム出力データファイルです。
(16) C子孫ジョブ起動順序通し番号_ステップ番号_ステップ名_ファイル環境変数定義名通し番号_ファイル環境変数定義名
子孫ジョブのジョブステップ内で#-adsh_spoolfileコマンドによって割り当てられたプログラム出力データファイルです。
環境ファイルのSPOOLJOB_CHILDJOBパラメーターにMERGE(子孫ジョブのスプールジョブをルートジョブのスプールジョブにマージ)を指定した場合だけ作成されます。