2017-08-09 71 views
0

我下載了.NET Tutorial示例以開始使用Azure Batch。Azure批處理服務任務退出代碼錯誤

我的目標是自動化(每2分鐘運行一次)web api調用並將我獲得的數據存儲回數據存儲容器。

問題是,我在我的池中的節點(VM)上執行的任務正在返回故障,Exact錯誤是「任務退出,退出代碼表示失敗」。

所以我繼續打印導致失敗的錯誤退出代碼。退出代碼是-1073741819。但是,這告訴我什麼?我在網上找不到任何告訴我這個退出碼代表什麼的?如何解決它?

有時當我再次運行它時,它在另一個退出代碼-532462766上失敗。如何調試天青雲中虛擬機上發生的故障?

回答

1

您可以查看stderr.txtstdout.txt文件以瞭解有關任務的更多信息。查看這些文件的最簡單方法是轉到Azure Portal並導航到您的批量帳戶。您可以點擊Jobs這將擴展作業刀片。點擊相關任務,然後點擊Files on node。您應該看到stderr.txtstdout.txt以供查看。您還可以通過CloudTask.GetNodeFile/GetNodeFileAsync通過.NET SDK以編程方式檢索這些文件。

您也可以將RDP放入您的計算節點並查看Windows事件查看器,以深入瞭解程序崩潰的原因。通過導航到執行任務的計算節點(池 - >選擇池 - >節點 - >選擇節點)並添加遠程用戶,您可以通過Azure門戶生成RDP憑據。

至於退出代碼,-1073741819是C0000005(看起來是Access Violation),-532462766是E0434352(看起來是CLR異常)。您需要對您的代碼爲何產生這些錯誤進行一些研究。一個完整性檢查是確保您將所有必需的DLL和程序集與程序一起打包,作爲應用程序包或任務資源文件的一部分。