使用記錄串流服務,檢視即時應用程式記錄

已完成

在本單元中,您將了解如何檢視即時的應用程式記錄串流,及即時記錄串流如何在開發 Web 應用程式其間提供協助。

即時記錄串流是什麼?

即時記錄串流能讓您透過簡單且有效的方式檢視即時記錄檔,以進行疑難排解。 即時記錄串流為傳送至檔案系統中應用程式記錄的所有訊息提供了一個快速檢視,而無需經過尋找和開啟記錄的過程。 若要使用即時記錄,您可以從命令列連線即時記錄服務,然後您可以即時查看寫入應用程式記錄的文字。

可以串流的記錄有哪些?

記錄串流服務會新增一個來自檔案系統記錄檔的重新導向,所以您看到的資訊會和儲存到這些記錄檔的資訊相同。 例如,如果您啟用 ASP.NET Windows 應用程式的詳細資訊記錄,即時記錄資料流會顯示您所有已記錄的訊息。

Screenshot of Azure portal live log stream pane showing output from the asp logs container.

使用即時記錄的典型案例

即時記錄是進行初始偵錯的實用工具。 即時記錄訊息可針對程式碼或伺服器問題為您提供立即的意見反應。 接著您可以進行變更、重新部署應用程式,並立即查看結果。

即時記錄串流會連線至單一應用程式執行個體,所以它不適合用於多重執行個體的應用程式。 即時記錄也會隨著您擴大應用程式而不敷使用。 在這類案例中,建議您確保將訊息儲存至記錄檔,因為記錄檔可以離線開啟研究。

如何使用即時記錄串流

您可以直接從 Azure 入口網站的 Cloud Shell 工作階段中,啟用命令列的即時記錄串流。 您有兩個選項:Azure CLIcurl 命令。

Azure CLI

若要開啟記錄串流,請執行下列命令。

az webapp log tail --name <app name> --resource-group <resource group name>

若要停止檢視即時記錄,請按 Ctrl+C

Curl

若要使用 Curl,您會需要 FTPS 認證。 有兩種類型的 FTPS 認證:

  • 應用程式範圍。 Azure 會在您部署 Web 應用程式時自動建立使用者名稱/密碼組,且您每個應用程式都會有自己的認證集合。

  • 使用者範圍。 您可以建立自己的認證,以便與任何 Web 應用程式搭配使用。 您可以在 Azure 入口網站中 (只要您已經擁有至少一個 Web 應用程式),或使用 Azure CLI 命令來管理這些認證。

Azure 入口網站 UI

若要檢視並複製 Azure 入口網站的這些詳細資料,請在 [部署] 下的 [App Service] 功能表中,選取 [部署中心],然後選取 [FTPS 認證] 索引標籤。

Screenshot of the App Service Deployment Center pane showing FTPS credentials tab.

重設使用者層級認證

若要建立新的使用者層級認證集合,請在 Cloud Shell 中執行下列命令。

az webapp deployment user set --user-name <name-of-user-to create> --password <new-password>

注意

使用者名稱必須是所有 Azure 中 (而不只在您自己的訂閱或目錄中) 的全域唯一名稱。

在建立了一組認證之後,請執行下列命令以開啟記錄串流。 然後系統會提示您輸入密碼。

curl -u {username} https://{sitename}.scm.azurewebsites.net/api/logstream

若要關閉作用中的記錄串流工作階段,請按 Ctrl+C