失敗したバッチのレコードを取得する方法はありますか?AsyncApexJobは失敗の数だけを教えてくれますが、実際にはそれ以上のものはありません...
質問する
5668 次
1 に答える
2
デフォルトの機能を使用して、必要なすべての詳細を取得する方法はないと思います。これを回避するには、バッチ内で発生したエラーをログに記録できるバッチステータスオブジェクトを作成しました。基本的に、バッチ実行コードをtry / catchブロックでラップし、catch内に、エラーの詳細を含む新しいバッチステータスレコードを追加します。
global void execute(Database.BatchableContext BC, List<sObject> scope) {
List<Batch_Status__c> BatchStatuses = new List<Batch_Status__c>();
try {
// ... batch execute code ...
}
catch(Exception e) {
// exception logging
Batch_Status__c BatchStatus = new Batch_Status__c();
// ... add exception detail to BatchStatus ...
BatchStatuses.add(BatchStatus);
}
insert BatchStatuses;
}
于 2012-06-18T15:52:25.167 に答える