DataSpiderログガイド
DataSpiderServerのログ
DataSpiderServerでは、以下の7種類のログが出力されます。
名前 |
説明 |
ファイルパス |
補足 |
サーバログ |
DataSpiderServerのログです。カーネルや各マネージャのログが出力されます。 |
${dataspider.home}/server/logs/server.log |
|
サーバ標準エラー出力 |
DataSpiderServerプロセスの標準エラー出力をリダイレクトします。 |
${dataspider.home}/server/logs/server.error.log |
DataSpiderServer.laxで出力先を変更することができます。
DataSpiderServerの起動時に、毎回新規に作成されます。ファイルがすでに存在していた場合には削除後新規に作成されます。
|
実行ログ |
スクリプトの開始/終了時間や成功/失敗など、スクリプト実行のサマリーが出力されます。 |
${dataspider.home}/server/logs/<日付ディレクトリ(yyyyMMdd)>/exec.log |
|
XMLログ |
スクリプト実行時のアダプタやコンバータのログが出力されます。 |
${dataspider.home}/server/logs/<日付ディレクトリ(yyyyMMdd)>/execution/<実行ID>.xml |
Launchログ |
外部アプリケーション起動処理に関するログです。起動時間や起動コマンドなどの情報が出力されます。 |
${dataspider.home}/server/logs/<日付ディレクトリ(yyyyMMdd)>/launch.log |
Launchプロセスログ |
外部アプリケーション起動処理で起動した外部アプリケーションの標準出力、標準エラー出力が出力されます。 |
${dataspider.home}/server/logs/<日付ディレクトリ(yyyyMMdd)>/launch_process.log |
Server CLI Consoleログ |
Server CLI Consoleのログです。コマンド履歴などの情報が出力されます。 |
${dataspider.home}/server/logs/cli.log |
|
DataSpiderServerのログです。カーネルや各マネージャのログが出力されます。
スクリプト実行時の内容はサーバログには出力されず、XMLログに出力されます。
出力される主な内容は以下の通りです。
出力例
10/09 12:00:55|INFO|ds.boot|モジュール[SystemModule Container]のサービスを開始しました。
10/09 12:00:55|INFO|ds.boot|モジュール[ScriptRunner Container]のサービスを開始しています。
10/09 12:00:55|INFO|ds.boot|モジュール[DataProcessingComponent Manager]のサービスを開始しています。
10/09 12:00:55|INFO|ds.boot|モジュール[DataProcessingComponent Manager]のサービスを開始しました。
10/09 12:00:55|INFO|ds.boot|モジュール[ScriptRunner Container]のサービスを開始しました。
10/09 12:00:55|INFO|ds.boot|システムのサービスを開始しました。
10/09 12:00:55|NOTICE|ds.boot|DataSpider Serverを正常に起動しました。
10/09 12:00:55|INFO|ds.boot|*****************************************************************
10/09 12:01:23|INFO|ds.kernel.mgr.callback|START|CALLBACK_THREAD|CLIENT=qm0000rg4dl1i0so2j7b72t8hb0l
10/09 12:01:30|FINFO|ds.kernel.login|SUCCEEDED|LOGIN|USER=root|SESSION_ID=lli947bl3u22oe1cu2ejet71md8lu4tf
10/09 12:03:45|FINFO|ds.kernel.mgr.dpc.pool|GC_START
10/09 12:03:45|FINFO|ds.kernel.mgr.dpc.pool|GC_END
DataSpiderServerプロセスの標準エラー出力をリダイレクトします。
ほとんどのログはサーバログやXMLログに出力されますが、重要な問題が発生してログ出力ができなかったときなどには、標準エラー出力にメッセージが出力される場合があります。
スクリプトの開始/終了時間や成功/失敗など、スクリプト実行のサマリーが出力されます。
スクリプト実行の開始時およびスクリプト実行終了時に、それぞれ1行ずつログ出力されます。
マイログの[ログ検索結果]の一覧画面は、この実行ログを元に表示されます。
出力される内容は以下の通りです。
- 日時
- 成功/失敗(スクリプト実行終了時のみ)
- 実行ID
- 実行ユーザ(スクリプト実行開始時のみ)
- 実行プロジェクト・スクリプト・種別(スクリプト実行開始時のみ)
- 実行時間(スクリプト実行終了時のみ)
- 終了ステータス(スクリプト実行終了時のみ)
また、dslog.propertiesの設定によって、${dataspider.home}/server/logs下(固定)にも出力することができます。運用監視ツールでスクリプトの終了状態を監視したときなどに使用できます。
出力例
|2007/10/10 13:43:19|-|ID=j20000dg6il1i0go0c5iionihb21|OWNER=root|PROJECT=null|SCRIPT=スクリプト|TYPE=default
|2007/10/10 13:43:19|0|ID=j20000dg6il1i0go0c5iionihb21|TOTAL=1969|EXIT_STATUS=0
|2007/10/10 13:48:04|-|ID=be0000dg6il1i0go0c5rb722hb21|OWNER=root|PROJECT=null|SCRIPT=スクリプト|TYPE=default
|2007/10/10 13:48:05|1|ID=be0000dg6il1i0go0c5rb722hb21|TOTAL=547|EXIT_STATUS=-10101
フォーマット例
|日時|終了ステータス|実行ID|プロジェクトオーナー|プロジェクト名|スクリプト名|種別名
|日時|終了ステータス|実行ID|実行時間|終了ステータス
スクリプト実行時のコンポーネントのログが出力されます。XMLログは1つのスクリプトにつき1つのファイルに出力されます。
XMLログファイルはスクリプト実行時に作成され、約8KB単位でログが出力されていきます。ファイル名は、実行スクリプトの実行IDです。
ログビューアは、このXMLログを元に表示されます。
ログの出力内容は実行ツール(デザイナやトリガー、ScriptRunnerなど)で指定したログレベルに依存します。
処理でエラーが発生した際には、スクリプトの実行IDと同一名のディレクトリ下にダンプファイル(dump.xml)が出力される場合があります。
例外監視処理の監視処理内のコンポーネントでエラーが発生した場合、そのコンポーネントのダンプファイルは出力されません。
データベースアダプタのテーブル書き込み処理や更新系SQL実行処理では、より詳細なダンプファイルが出力されます。
出力例:正常終了時
<?xml version="1.0" encoding="UTF-8" ?>
<exec>
<executionStart time="1192189123891" production-version="2.4.0" />
<scriptStart time="1192189124094" id="so0000fg10l1i0co28lhc5gaharl" version="2" name="スクリプト" type="default" enableTypeSwitch="false" repository="/home/root/projects/プロジェクト" supportsLargeData="false" psp="false" />
<start time="1192189124110" id="o20000fg3pl1i0ko50lkhvfghb4e" name="mapping" />
<end time="1192189124251" id="o20000fg3pl1i0ko50lkhvfghb4e" />
<scriptEnd time="1192189124251" status="0" />
<executionEnd time="1192189124266" status="0" />
</exec>
出力例:異常終了時
<?xml version="1.0" encoding="UTF-8" ?>
<exec>
<executionStart time="1262591044666" production-version="2.4.0" />
<scriptStart time="1262591044701" id="va0000bg70l1ie6moi7s2evoib8c" version="1" name="スクリプト" type="default" enableTypeSwitch="false" repository="/home/root/projects/プロジェクト" supportsLargeData="true" psp="false" />
<start time="1262591044708" id="si0000jg20l1ifemqt2klig8ibu2" name="csv_read" />
<end time="1262591044759" id="si0000jg20l1ifemqt2klig8ibu2">
<failure>
<code><![CDATA[SCRIPT0003E]]></code>
<type><![CDATA[com.appresso.ds.script.runtime.ComponentFailedException]]></type>
<message><![CDATA[[csv_read(ファイル/CSV/CSVファイル読み取り)]の処理に失敗しました。原因:[com.appresso.ds.common.dp.InvalidPropertyConfigurationException: ファイルパスが指定されていません。]]]></message>
<detail><![CDATA[com.appresso.ds.script.runtime.ComponentFailedException: [csv_read(ファイル/CSV/CSVファイル読み取り)]の処理に失敗しました。原因:[com.appresso.ds.common.dp.InvalidPropertyConfigurationException: ファイルパスが指定されていません。]
... (省略)
]]></detail>
</failure>
</end>
<scriptEnd time="1262591044768" status="-10101" />
<executionEnd time="1262591044771" status="-10101">
<failure>
<code><![CDATA[SCRIPT0003E]]></code>
<type><![CDATA[com.appresso.ds.script.runtime.ComponentFailedException]]></type>
<message><![CDATA[[csv_read(ファイル/CSV/CSVファイル読み取り)]の処理に失敗しました。原因:[com.appresso.ds.common.dp.InvalidPropertyConfigurationException: ファイルパスが指定されていません。]]]></message>
<detail><![CDATA[com.appresso.ds.script.runtime.ComponentFailedException: [csv_read(ファイル/CSV/CSVファイル読み取り)]の処理に失敗しました。原因:[com.appresso.ds.common.dp.InvalidPropertyConfigurationException: ファイルパスが指定されていません。]
... (省略)
]]></detail>
</failure>
</executionEnd>
</exec>
要素 |
属性 |
説明 |
備考 |
executionStart |
time |
処理実行開始時間 |
|
production-version |
DataSpiderServerのバージョン |
|
scriptStart |
time |
スクリプトの実行開始時間 |
|
id |
スクリプトのエントリのID |
|
version |
実行スクリプトのバージョン |
|
name |
スクリプト名 |
|
type |
種別名 |
|
enableTypeSwitch |
指定種別が見つからない場合にデフォルト種別を使用オプション(「true」または「false」) |
|
repository |
プロジェクトの保存場所 |
|
supportsLargeData |
大容量データ処理設定の有無(「true」または「false」) |
|
psp |
PSPスクリプト設定の有無(「true」または「false」) |
|
var |
id |
スクリプト変数のID |
|
name |
スクリプト変数名 |
|
start |
time |
コンポーネントアイコン単位の処理開始時間 |
|
id |
コンポーネントのID |
|
name |
コンポーネントアイコン名 |
|
end |
time |
コンポーネントアイコン単位の処理終了時間 |
|
id |
コンポーネントのID |
|
log |
level |
ログレベル |
|
msg |
出力されたログメッセージ |
|
loopStart |
time |
コンポーネントアイコン単位の処理開始時間 |
- 繰り返し処理、繰り返し(条件指定)処理、繰り返し(データ件数)処理の開始時に出力されます。
|
id |
コンポーネントのID |
|
name |
コンポーネントアイコン名 |
|
loopEnd |
time |
コンポーネントアイコン単位の処理終了時間 |
- 繰り返し処理、繰り返し(条件指定)処理、繰り返し(データ件数)処理の終了時に出力されます。
|
id |
コンポーネントのID |
|
count |
繰り返し回数 |
|
branchStart |
time |
コンポーネントアイコン単位の処理開始時間 |
|
id |
コンポーネントのID |
|
name |
コンポーネントアイコン名 |
|
branchEnd |
time |
コンポーネントアイコン単位の処理終了時間 |
|
id |
コンポーネントのID |
|
eval |
id |
条件のID |
|
result |
条件の演算結果(「true」または「false」) |
|
transactionStart |
- |
コンポーネントアイコン単位の処理開始時間 |
|
transactionEnd |
time |
コンポーネントアイコン単位の処理終了時間 |
|
type |
トランザクション完了時の動作(「commit」または「rollback」) |
|
tryStart |
time |
コンポーネントアイコン単位の処理開始時間 |
|
id |
コンポーネントのID |
|
name |
コンポーネントアイコン名 |
|
exceptionCaught |
time |
コンポーネントアイコン単位の処理開始時間 |
|
id |
コンポーネントのID |
|
name |
コンポーネントアイコン名 |
|
tryEnd |
time |
コンポーネントアイコン単位の処理終了時間 |
|
id |
コンポーネントのID |
|
failure |
type |
- |
エラーの種類 |
|
message |
- |
エラーメッセージ |
|
detail |
- |
トレース情報 |
|
scriptEnd |
time |
スクリプトの実行終了時間 |
|
status |
スクリプトの終了ステータス |
|
executionEnd |
time |
処理実行終了時間 |
|
status |
スクリプトの終了ステータス |
|
外部アプリケーション起動処理に関するログです。起動時間や起動コマンドなどの情報が出力されます。
出力される主な内容は以下の通りです。
出力例
18:07:12|do0000rg7nl1i108hdf2ecash4qn|INFO|EXEC|COMMAND=/C:/test.bat
18:07:12|do0000rg7nl1i108hdf2ecash4qn|INFO|STARTED
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|PROCESS_MONITOR|STARTED
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|PROCESS_MONITOR|WAIT_FOR
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|STARTED|STREAM=java.io.BufferedInputStream@1f4ff23
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|STARTED|STREAM=java.io.FileInputStream@19a8c41
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|STDERR_MONITOR|ENDED|TOTAL=0
18:07:12|do0000rg7nl1i108hdf2ecash4qn|WARN|ENDED|EXIT_VALUE=0
18:07:12|do0000rg7nl1i108hdf2ecash4qn|DEBUG|STDOUT_MONITOR|ENDED|TOTAL=87
外部アプリケーション起動処理で起動した外部アプリケーションの標準出力、標準エラー出力が出力されます。
スクリプトの実行IDも出力されます。
出力例
--------------------
18:07:12|do0000rg7nl1i108hdf2ecash4qn|INFO
C:\Program Files\DataSpiderServista\server>echo test output
test output
Server CLI Consoleのログです。コマンド履歴などの情報が出力されます。
出力される主な内容は以下の通りです。
- コマンド開始時間
- コマンド終了時間
- 実行ユーザ名
- 実行したコマンド
出力例
10/14 22:58:00|INFO|ds.console.cli|USER=root|START help
10/14 22:58:00|INFO|ds.console.cli|USER=root|END help
10/14 22:58:11|INFO|ds.console.cli|USER=root|START pwd
10/14 22:58:11|INFO|ds.console.cli|USER=root|END pwd
フォーマット例
日時|ログレベル|モジュール名|ユーザ名|実行コマンド
スクリプトの実行に関するログは日付ディレクトリ内に出力されます。
日付ディレクトリは、${dataspider.home}/server/logs下に日付ごとに作成される「yyyyMMdd」形式のディレクトリです。
日付ディレクトリに出力されるログファイルは以下の通りです。
- 実行ログ
- Launchログ
- Launchプロセスログ
- XMLログ
日付ディレクトリは、一定期間を過ぎるとZIP圧縮され、さらに一定期間を過ぎると削除されます。
作成/圧縮/削除のタイミング
日付ディレクトリは、同一日付のディレクトリが存在しない場合、DataSpiderServerの起動時またはスクリプトの実行時に作成されます。
また、圧縮および削除されるタイミングは、DataSpiderServerの起動時または起動から12時間ごとです。
DataSpider Studioのログ
DataSpider Studioでは、以下の3種類のログが出力されます。
DataSpider Studioのログです。
出力例
10/10 09:55:22|INFO|ds.boot|システムのサービスを開始しています。
10/10 09:55:22|INFO|ds.boot|システムのサービスを開始しました。
10/10 09:55:22|NOTICE|ds.boot|DataSpider Studioを正常に起動しました。
10/10 09:55:22|INFO|ds.boot|*****************************************************************
DataSpider Studioプロセスの標準出力をリダイレクトしています。
Studio標準出力に出力される内容はStudioログにも出力されます。
出力例
--- |INFO|システムのサービスを開始しています。
--- |INFO|システムのサービスを開始しました。
--- |NOTICE|DataSpider Studioを正常に起動しました。
--- |INFO|*****************************************************************
Client CLI Consoleのログです。コマンド履歴などの情報が出力されます。
出力される主な内容は以下の通りです。
- コマンド開始時間
- コマンド終了時間
- 実行ユーザ名
- 実行したコマンド
出力例
10/14 22:58:00|INFO|ds.console.cli|USER=root|START help
10/14 22:58:00|INFO|ds.console.cli|USER=root|END help
10/14 22:58:11|INFO|ds.console.cli|USER=root|START pwd
10/14 22:58:11|INFO|ds.console.cli|USER=root|END pwd
フォーマット例
日時|ログレベル|モジュール名|ユーザ名|実行コマンド
DataSpider Studioプロセスの標準エラー出力をリダイレクトしています。
重要な問題が発生したとき以外は情報が出力されることはありません。
アプリケーションログ
スクリプト中にログを出力するコンポーネント(ログ出力処理)を配置することができます。
出力できるログの種類は以下の通りです。
Syslog
遠隔のSyslogデーモンにログを出力します。
NTイベントログ
NTイベントログにログを出力します。DataSpiderServerが稼動している環境がWindows 32bitの場合に利用可能です。
ローテーションファイル
指定したファイルにログを出力します。指定ファイルサイズに達した場合に、ローテーションされます。ローテーションファイル数も指定可能です。
スケジュールファイル
指定したファイルにログを出力します。指定スケジュールに合わせて、ローテーションされます。スケジュールは[毎日]、[毎週]、[毎月]の3つが指定可能です。
出力するログメッセージのレイアウトはLog4jで指定できるすべてのレイアウトを使用することができます。ログレベルは、Log4jで指定できるFATAL、ERROR、WARN、INFO、DEBUGの5つのレベルが指定可能です。
ログレベルには、以下の5種類があります。
ログレベル |
説明 |
NOTICE |
運用上、重要な情報のみを出力します。起動成功や致命的なエラーが発生した場合に出力されます。 |
INFO |
運用時の推奨ログレベルです。処理の結果を出力します。原則的に1つの処理につき1メッセージが出力されます。スクリプト実行の場合、各コンポーネントの処理結果のみ出力されます。 |
FINFO |
開発時の推奨ログレベルです。INFOより詳細な処理結果を出力します。スクリプト実行の場合、各コンポーネント内の詳細な処理結果が出力されます。 |
FINEST |
処理の詳細な状態などを出力します。FINFOよりも詳細な情報を取得したい場合に設定します。 |
DEBUG |
内部状態など、デバッグ用のメッセージを出力します。 |