
![[8.5.5.6 或更新版本]](../ng_v8556.gif)
檢視 Java 批次工作日誌
在 WebSphere Application Server Liberty 設定檔中執行 Java 批次工作時,會為每一項工作撰寫日誌。
會以下列目錄結構來建立日誌:
log directory/joblogs/job name/date/instance.job instance ID/execution.execution ID
日誌的名稱開頭是 part.1.log,必要時會輪換成新的日誌組件。依預設,工作日誌包含所有訊息,以及執行該工作執行的執行緒在伺服器中所記載的追蹤資訊。不會收集未記載在 java.util.logging 架構內的輸出。
如需使用 REST API 來擷取或刪除工作日誌的相關資訊,請參閱 REST API 管理說明文件。
配置工作記載
您可以使用 <batchJobLogging> 配置元素 <batchJobLogging enabled="true" maxRecords="1000" />,來配置批次工作記載。
maxRecords 屬性指出寫入至工作日誌部分的記錄數目,一旦超過此記錄數目,就會將記錄寫到下一部分中。
批次特性會使用名稱是 com.ibm.ws.batch.JobLogger 的日誌程式,只將特定批次訊息記載到工作日誌中。舉例來說,像是工作生命週期訊息和檢查點訊息。日誌程式不會寫入至伺服器日誌。依預設,會針對 Level.FINE 訊息啟用日誌程式。您可以配置日誌程式的層次,作法是在伺服器的追蹤規格中指定它。例如,<logging traceSpecification="*=info:com.ibm.ws.batch.JobLogger=all" />。
只要是工作執行緒所寫入的日誌訊息,包括執行時期和應用程式碼所寫入的訊息,都會同時寫入至工作日誌和伺服器日誌中。
System.out 和 System.err 檔則只會寫入至伺服器日誌,不會寫入至工作日誌。
分割步驟
分割步驟對於每一個分割具有多個子目錄。execution ID 目錄中的日誌檔含有執行最上層工作之執行緒中的項目。分割的工作日誌會以下列結構儲存:
log directory/joblogs/job name/date/instance.job instance ID/execution.execution ID/name of partitioned step/partition number
分割流程
如果工作中出現分割流程,則會建立更多子目錄,以便擷取每一個流程之執行緒的輸出。直接位於 execution ID 目錄之下的日誌檔會包含執行最上層工作之執行緒中的項目。個別流程執行緒的工作日誌會以下列結構儲存:
log directory/joblogs/job name/date/instance.job instance ID/execution.execution ID/split ID/flow ID