Loading
Salesforce から送信されるメールは、承認済ドメインからのみとなります続きを読む

実行時間が長いジョブのトラブルシューティング方法

公開日: Apr 11, 2025
説明
目的:ジョブの実行時間が想定よりも長いように思われる状態や、ジョブが途中で停止していると思われる状態を解決します。

環境:すべて
解決策
ジョブが通常より長い間実行されていることを確認します。
  1. ジョブのカスタムログファイルを見つけます。
  2. カスタムジョブログファイルの最後のログエントリのタイムスタンプを確認します。
  3. 上記のタイムスタンプと現在の時刻の間に隔たりがある場合、ジョブは長時間実行されていると考えられます。

長時間実行されているジョブと関連性のあるエラーを特定します。WebDAV またはログセンターからアプリケーションのエラーログを確認します。エラーが特定のブレードと関連しているか確認します。

この特定のジョブを完了させる一度限りの変更を模索するよりも、エラーの根本原因を解決することをお勧めします。根本原因を解決することで、同じ問題が後続のスケジュール済みジョブで再発する可能性が低くなります。
  • 原因となるエラーがわかり、修正できる場合は、(1) ジョブが完了するまで待つか、(2) アプリケーションを再起動してジョブを強制終了できます。再起動後、ジョブのステータスが依然として実行中になっている場合があります。その場合、その時点で Business Manager のインスタンス管理者は [ジョブ履歴] ページから実行を削除できます。
 
  • 原因となるエラーがわからない場合や、修正できない場合は、Commerce Cloud Support 宛てにケースを作成します。サポートがジョブの問題に即座に対処し、情報を収集して原因となっているエラーを修正できるように、次の情報を提供してください。
    • インスタンスの URL
    • ジョブ名
    • カスタムログ
    • ジョブで使用されているカスタマイズ (パイプライン、スクリプトなど)
    • アプリケーションエラーログ

ジョブの実行中に未対応の例外が発生した場合、ジョブは失敗するということを理解しておくことが重要です。これは、try/catch ブロックを含むカスタムコードなどによって例外が処理された場合、ジョブは失敗せず、引き続き実行されるということでもあります。そのため、ジョブの実装内で try/catch ブロックを使用している場合、try ブロック内で発生した例外は、一連の catch 命令に従ってログに記録されます。また、例外はブロック内で処理されるため、ジョブに影響を及ぼしません。フローを停止させない例外やブロック内で処理された例外に遭遇しても、ジョブフレームワークのジョブ失敗ルールのメカニズムがトリガーされないのはそのためです。throw ステートメントによって伝播されない例外は、基本的にジョブフレームワークには到達しません。
ナレッジ記事番号

000391640

 
読み込み中
Salesforce Help | Article