使用 Visual Studio 和 IntelliTrace 進行已發佈 Azure 雲端服務的偵錯

注意

本文適用於 Azure 雲端服務 (傳統版),該服務目前針對新客戶已取代,並將於 2024 年 8 月 31 日淘汰。 使用此技術建置的現有服務仍可透過雲端服務 (延伸支援)獲得支援。。 針對新的開發,我們建議您使用專為特定用途設計的較新服務類型,例如 Azure App ServiceAzure FunctionsAzure 容器應用程式。 如需可用服務的最新清單,請參閱 Azure 產品的目錄

有了 IntelliTrace,您可以於角色執行個體在 Azure 中執行時,記錄其廣泛的偵錯資訊。 如果您需要找出問題的原因,您可以從 Visual Studio 使用 IntelliTrace 記錄檔來瀏覽程式碼,如同它是在 Azure 中執行。 實際上,Azure 應用程式在 Azure 中以雲端服務形式執行時,IntelliTrace 會記錄主要執行程式碼和環境資料,並且可讓您從 Visual Studio 重新播放記錄的資料。

如果您有安裝 Visual Studio Enterprise,而您的 Azure 應用程式以 .NET Framework 4 或更新版本為目標,則可以使用 IntelliTrace。 IntelliTrace 會收集 Azure 角色的資訊。 這些角色的虛擬機器一律會執行 64 位元作業系統。

或者,您可以使用遠端偵錯,直接附加到在 Azure 中執行的雲端服務。

重要

IntelliTrace 僅適用於偵錯,並且不應該用於生產環境部署。

必要條件

為 IntelliTrace 設定 Azure 應用程式

若要為 Azure 應用程式啟用 IntelliTrace,您必須從 Visual Studio Azure 專案建立並發佈應用程式。 發佈至 Azure 之前,您必須您的 Azure 應用程式設定 IntelliTrace。 如果您發佈應用程式,但未設定 IntelliTrace,則您必須重新發佈專案。 如需詳細資訊,請參閱使用 Visual Studio 專案發佈 Azure 雲端服務

  1. 準備好要部署 Azure 應用程式時,請確認專案建置目標是設定為 [偵錯]

  2. 在 [方案總管] 中,以滑鼠右鍵按一下專案,然後從操作功能表中選取 [發佈]

  3. 在 [發行 Azure 應用程式] 對話方塊中,選取 Azure 訂閱,然後選取 [下一步]

  4. 在 [設定] 頁面上,選取 [進階設定] 索引標籤。

  5. 開啟 [啟用 IntelliTrace] 選項,以便在將應用程式發佈至雲端時收集該應用程式的 IntelliTrace 記錄檔。

  6. 若要自訂基本的 IntelliTrace 組態,請選取 [啟用 IntelliTrace] 旁的 [設定]

    IntelliTrace 設定連結

  7. 在 [IntelliTrace 設定] 對話方塊中,您可以指定要記錄的事件、是否要收集呼叫資訊、要收集記錄的模組和處理序,以及配置多少空間來存放記錄。 如需有關 IntelliTrace 的詳細資訊,請參閱 使用 IntelliTrace 進行偵錯

    IntelliTrace 設定

IntelliTrace 記錄檔是循環記錄檔,大小上限是在 IntelliTrace 設定中指定 (預設大小為 250 MB)。 IntelliTrace 記錄檔會收集到虛擬機器的檔案系統中的檔案。 要求記錄檔時,會擷取該時間點的快照,並下載到您的本機電腦。

將 Azure 雲端服務發佈至 Azure 之後,您可以從 [伺服器總管] 中的 Azure 節點判斷是否已啟用 IntelliTrace,如下圖所示:

伺服器總管 - 已啟用 IntelliTrace

下載角色執行個體的 IntelliTrace 記錄檔

使用 Visual Studio,您可以依照下列步驟來下載角色執行個體的 IntelliTrace 記錄檔:

  1. 在 [伺服器總管] 中,展開 [雲端服務] 節點,然後找出您要下載其記錄的角色執行個體。

  2. 以滑鼠右鍵按一下角色執行個體,然後從操作功能表中,選取 [檢視 IntelliTrace 記錄檔]

    [檢視 IntelliTrace 記錄檔] 功能表選項

  3. IntelliTrace 記錄檔會下載到本機電腦的目錄中的檔案。 每當您要求 IntelliTrace 記錄檔,即會建立新的快照。 下載記錄檔時,Visual Studio 會在 [Azure 活動記錄] 視窗中顯示作業的進度。 如下圖所示,您可以展開作業的行項目,以查看詳細資料。

VST_IntelliTraceDownloadProgress

下載 IntelliTrace 記錄檔時,您可以繼續使用 Visual Studio。 當記錄檔完成下載時,它會在 Visual Studio 中開啟。

注意

IntelliTrace 記錄檔可能包含架構隨後產生並處理的例外狀況。 內部架構程式碼會在正常啟動角色時產生這些例外狀況,因此您可以放心忽略。