使用 Azure 容器應用程式 中的 Aspire 儀表板讀取即時應用程式資料

Aspire 儀表板顯示應用程式及其他資源在環境中的即時運行數據。

下圖是 Aspire 儀錶板所產生的追蹤視覺效果螢幕快照。

Aspire 儀表板追蹤視窗的截圖。

儀表板上顯示的資訊來自兩個來源:

  • OpenTelemetry(OTel)是一個開源的可觀察性框架,用於收集您的應用程式中的 追蹤、 指標與 日誌 。

    • 追蹤 追蹤請求的生命週期——請求在應用程式不同部分間的接收與處理方式。 此資訊有助於識別瓶頸和其他問題。
    • 指標 是對基礎設施整體健康狀況與效能的即時測量——例如,佔用了多少 CPU 資源,以及應用程式每秒處理多少交易。 這項資訊有助於了解應用程式的回應性,或識別效能問題的早期警告跡象。
    • 日誌記錄 應用程式執行期間發生的所有事件與錯誤。 這項資訊適用於尋找發生問題的時間和相互關聯的事件。
  • Aspire 資源服務提供應用程式資源模型、狀態、端點及主控台日誌。

欲了解更多資訊,請參閱 Aspire 的遙測 與 探索儀表板功能。

儀表板會受到保護,以防止未經授權的存取和修改。 若要使用儀表板,使用者必須具有「寫入」權限或更高權限,換句話說,他們必須是環境上的參與者或擁有者。

開啟儀表板

提示

對於 Aspire 管理的環境,請使用 Aspire CLI 配置並部署儀表板。 如果你在使用入口網站遇到問題,可以在 Container Apps 的 GitHub 倉庫建立一個問題。

您可以使用下列步驟,在任何現有的容器應用程式上啟用 Aspire 儀錶板。

  1. 前往Azure入口。

  2. 瀏覽至您的容器應用程式。

  3. 在 概覽 頁面,找到 Aspire 儀表板 標籤,選擇 啟用。 此動作會開啟 [Aspire 儀錶板設定] 頁面。

  4. 在設定頁面, Aspire 儀表板 標籤旁,選擇 啟用 勾選框。 您可以忽略此頁面上的其他設定,因為它們與記錄相關,而不是 Aspire 儀錶板。

  5. 在你的容器應用程式的 概覽 頁面中,找到 Aspire 儀表板 標籤。 啟用連結已被開啟儀表板連結取代。 選取此連結。 你可能需要重新載入 概覽 頁面,連結才會出現。

你也可以透過瀏覽容器應用程式環境並選擇 監控>日誌選項,找到 Aspire 儀表板的設定。

備註

存取 Aspire 儀錶板不支援自訂網域。 您必須使用Azure 容器應用程式提供的預設網域名稱,例如:https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io

您可以使用下列命令,在任何現有的容器應用程式環境中啟用 Aspire 儀錶板。 將<PLACEHOLDERS>替換為您的值。

az containerapp env dotnet-component create \
  --environment <ENVIRONMENT_NAME> \
  --name aspire-dashboard \
  --resource-group <RESOURCE_GROUP_NAME>

這個 create 指令會回傳你可以在瀏覽器中開啟的儀表板 URL。

備註

存取 Aspire 儀錶板不支援自訂網域。 您必須使用Azure 容器應用程式提供的預設網域名稱,例如:https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io

Azure 容器應用程式 環境整合預設包含 Aspire 儀表板。 要建立並部署帶有儀表板的 Aspire 應用程式:

  1. 建立一個 Aspire 入門應用程式,並加入 Azure 容器應用程式 整合:

    aspire new aspire-starter --name AspireApp --output AspireApp
    cd AspireApp
    aspire add Aspire.Hosting.Azure.AppContainers
    
  2. 在AppHost.cs中,加入一個Azure 容器應用程式環境:

    builder.AddAzureContainerAppEnvironment("aca-env");
    
  3. 驗證與部署:

    az login
    aspire deploy
    

這個 aspire deploy 指令會回傳你可以在瀏覽器中開啟的儀表板 URL。 若要省略儀表板,請在環境資源上鏈結 .WithDashboard(false)。

欲了解更多資訊,請參閱 Deploy to Azure 容器應用程式 及 WithDashboard。

備註

存取 Aspire 儀錶板不支援自訂網域。 您必須使用Azure 容器應用程式提供的預設網域名稱,例如:https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io

疑難排解

如果您在啟用儀表板時遇到問題,請參閱下列項目:

  • 入口網站最多可能需要兩分鐘的時間啟動儀表板。 如果你在儀表板還沒準備好前嘗試進入,伺服器會回傳 a 404 或 421 錯誤。

  • 如果遇到 421 「誤導請求」錯誤,請關閉瀏覽器視窗,等待幾分鐘後再嘗試。

  • 您在存取儀表板時可能會收到驗證錯誤,訊息為「無法以要求的資源驗證使用者」。

    發生此問題的原因是安全組許可權不會傳播至容器應用程式環境。 要解決這個問題,務必明確在容器應用程式環境中給自己設定貢獻 者 或 擁有者 角色。 這可以透過下列步驟完成:

    • 前往資源:
      • 打開 Azure 入口網站,搜尋你的容器應用程式環境。
    • 存取存取控制 (IAM) 窗格:
      • 點擊 存取控制 (IAM) 即可進入容器應用程式環境。
    • 確認現有角色分配:
      • 請檢查您(或您的帳戶)是否被指派了任何角色。 請注意,許可權目前不會透過安全組傳播。
      • 如果您尚未完成,請依照其餘步驟指派角色。
    • 明確角色指派: - 點擊 新增 > 角色指派。 - 選擇角色:貢獻者或擁有者,視你所需的存取權限而定。 - 明確將角色指派給你的使用者帳號(例如, youremail@domain.com)。
    • 儲存並確認:
      • 儲存變更。 請確定角色會顯示在 [角色指派] 區段底下。
    • 驗證儀表板存取權限:
      • 嘗試存取 Aspire 儀錶板來測試。 如果您繼續收到錯誤,請連絡我們的小組。
  • 存取 Aspire 儀錶板不支援自訂網域。 您必須使用Azure 容器應用程式提供的預設網域名稱,例如:https://<DOTNET_COMPONENT_NAME>.ext.<CLUSTER_NAME>.<REGION>.azurecontainerapps.io

Aspire dashboard overview