共用方式為


教學課程:使用 Azure 受控 Grafana 建置 Java 計量儀錶板

在本教學課程中,您將瞭解如何使用 Azure 受控 Grafana 設定計量儀錶板,以監視在 Azure Container Apps 中執行的 Java 應用程式。

Grafana 是集中式計量視覺效果和可觀察性產業中監視的熱門工具。 Azure 受控 Grafana 是完全受控的 Azure 服務,可讓您使用順暢的 Azure 整合來部署和管理 Grafana 儀錶板。 您可以使用 Azure Managed Grafana 將 Azure Container Apps 公開的 Java 計量可視化,或將 Java 計量整合到現有的 Grafana 儀錶板中。

在本教學課程中,您已:

  • 建立 Azure 受控 Grafana 執行個體。
  • 在 Grafana 中建立 Java 計量儀錶板。
  • 使用 Grafana 將 Azure Container Apps 的 Java 計量可視化。

必要條件

設定環境

使用下列步驟來定義環境變數,並確定您的 Azure 受控 Grafana 擴充功能是最新的。

  1. 建立變數以支援 Grafana 設定。

    export LOCATION=eastus
    export SUBSCRIPTION_ID={subscription-id}
    export RESOURCE_GROUP=grafana-resource-group
    export GRAFANA_INSTANCE_NAME=grafana-name
    
    變數 描述
    LOCATION 您建立 Azure 受控 Grafana 實例的 Azure 區域位置。
    SUBSCRIPTION_ID 您用來建立 Azure Container Apps 和 Azure 受控 Grafana 實例的訂用帳戶標識碼。
    RESOURCE_GROUP Azure 受控 Grafana 實例的 Azure 資源組名。
    GRAFANA_INSTANCE_NAME Azure 受控 Grafana 實例的實例名稱。
  2. 使用 Azure CLI 登入 Azure。

    az login
    
  3. 建立資源群組。

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  4. 使用下列命令,以確保您有適用於 Azure 受控 Grafana 的最新版 Azure CLI 擴充功能。

    az extension add --name amg --upgrade
    

設定 Azure 受控 Grafana 實例

首先,建立 Azure 受控 Grafana 實例,並授與必要的角色指派。

  1. 建立 Azure 受控 Grafana 執行個體。

    az grafana create \
        --name $GRAFANA_INSTANCE_NAME \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION
    
  2. 授與 Azure 受控 Grafana 實例「監視讀取者」角色,以從 Azure 監視器讀取計量。 深入瞭解 Azure 受控 Grafana驗證和許可權。

    GRAFA_IDDENTITY=$(az grafana show --name $GRAFANA_INSTANCE_NAME --resource-group $RESOURCE_GROUP --query "identity.principalId" --output tsv)
    
    az role assignment create --assignee $GRAFA_IDDENTITY --role "Monitoring Reader" --scope /subscriptions/$SUBSCRIPTION_ID
    

建立Java計量儀錶板

重要

若要在 Grafana 中新增儀錶板,您必須擁有 Grafana AdminGrafana Editor角色,請參閱 Azure 受控 Grafana 角色

  1. Grafana Admin 角色指派給 Azure 受控 Grafana 資源上的帳戶。

    取得 Azure 受控 Grafana 實例的資源識別碼。

    GRAFANA_RESOURCE_ID=$(az grafana show --resource-group $RESOURCE_GROUP --name $GRAFANA_INSTANCE_NAME --query id --output tsv)
    

    執行此命令之前,請將 <USER_OR_SERVICE_PRINCIPAL_ID> 佔位元取代為您的使用者或服務主體標識碼。

    az role assignment create \
        --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \
        --role "Grafana Admin" \
        --scope $GRAFANA_RESOURCE_ID
    
  2. 下載適用於 Azure Container Apps json 檔案的 Java 計量儀錶板範例。

  3. 取得 Azure 受控 Grafana 資源的端點。

    az grafana show --resource-group $RESOURCE_GROUP \
       --name $GRAFANA_INSTANCE_NAME \
       --query "properties.endpoint" \
       --output tsv
    

    此命令會傳回可用來存取 Azure Managed Grafana 儀錶板的 URL。 使用 URL 和登入來開啟瀏覽器。

  4. 移至 Dashboard>New -.>Import 上傳上述範例儀錶板 JSON 檔案,然後選擇預設的內 Azure Monitor 建數據源,然後按下 Import 按鈕。

    匯入 Azure Container Apps Java 計量儀錶板的螢幕快照。

使用 Grafana 將 Azure Container Apps 的 Java 計量可視化

  1. 在 Azure Container Apps 篩選條件中輸入您的資源資訊。 現在,您可以在儀錶板內檢視 Azure Container Apps 中所有支援的 Java 計量。 範例儀錶板提供即時計量數據,包括

    • 容器應用程式概觀
    • JVM 記憶體使用量
    • JVM 記憶體緩衝區
    • JVM GC JVM GC
    • 詳細的 JVM 記憶體使用量分析

    Grafana 中 [概觀] 索引標籤的螢幕快照。

    Grafana 中 JVM 記憶體索引標籤的螢幕快照。

    Grafana 中 JVM 緩衝區內存索引標籤的螢幕快照。

    Grafana 中 JVM GC 索引標籤的螢幕快照。

    Grafana 中 JVM 記憶體分析索引標籤的螢幕快照。

您可以使用此儀錶板作為起點,以建立您自己的自定義計量視覺效果和監視解決方案。

清除資源

本教學課程中建立的資源會影響您的 Azure 帳單。 如果您不會長期使用這些服務,請執行下列命令來刪除本教學課程中建立的所有內容。

az group delete --resource-group $RESOURCE_GROUP