次の方法で共有


Azure Batch タスクが stdout または stderr なしで失敗する

この記事では、stdout または stderr を使用しない Azure Batch タスクの失敗の原因と推奨事項について説明します。

現象

バッチ タスクは終了コードで失敗します。 ただし、標準出力 (stdout) と標準エラー (stderr) はありません。

Note

Azure Batch では、タスクの stdout と stderr が自動的にキャプチャされ、タスク ディレクトリ内の stdout.txt または stderr.txt ファイルに書き込まれます。

原因

タスクがプロセスを実行すると、Batch サービスはタスクの終了コード プロパティにプロセスのリターン コードを設定します。 プロセスから 0 以外の終了コードが返された場合、Batch サービスはタスクを失敗としてマークします。

Batch サービスでは、タスクの終了コードは決定されません。 終了コードは、プロセスまたはそのプロセスを実行したオペレーティング システムによって決定されます。

終了コードに基づいてプロセスが失敗する理由を特定してみてください。

終了コードに基づいて原因を特定するのが難しい場合は、次の手順に従ってさらにデバッグを実行します。

  1. Azure portal を使用して、Windows ノード用のリモート デスクトップ プロトコル (RDP) ファイルをダウンロードするか、Linux ノードの Secure Shell (SSH) 接続情報を取得します。

  2. 失敗したタスクをデバッグのために実行するために使用するコマンドまたはスクリプトを手動で実行します。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。