Share via


設定診斷記錄傳遞

本文說明如何為您的 Azure Databricks 工作區啟用診斷記錄傳遞。

注意

診斷記錄需要 進階版 計劃

  1. 以 Azure Databricks 工作區的擁有者或參與者身分登入 Azure 入口網站,然後按兩下您的 Azure Databricks 服務資源。

  2. 在提要欄位的 [監視] 區段中,按兩下 [ 診斷設定 ] 索引標籤。

  3. 按兩下 [開啟診斷]。

    Azure Databricks 開啟診斷

  4. 在 [診斷設定] 頁面上,提供下列組態:

    名稱

    輸入要建立之記錄的名稱。

    封存至儲存體帳戶

    若要使用此選項,您需要現有的記憶體帳戶才能連線。 若要在入口網站中建立新的儲存體帳戶,請參閱 建立記憶體帳戶 ,並依照指示建立 Azure Resource Manager 一般用途帳戶。 然後返回入口網站中的此頁面,以選取您的記憶體帳戶。 新建立的記憶體帳戶可能需要幾分鐘的時間才會出現在下拉功能表中。 如需寫入記憶體帳戶所產生的額外成本相關信息,請參閱 Azure 儲存體 定價

    串流至事件中樞

    若要使用此選項,您需要現有的 Azure 事件中樞 命名空間和事件中樞才能連線。 若要建立事件中樞命名空間,請參閱使用 Azure 入口網站 建立事件中樞命名空間和事件中樞。 然後返回入口網站中的此頁面,以選取事件中樞命名空間和原則名稱。 如需寫入事件中樞所產生的額外成本相關信息,請參閱 Azure 事件中樞 定價

    傳送至 Log Analytics

    若要使用此選項,請使用現有的Log Analytics工作區,或遵循在入口網站中建立新工作區的步驟來 建立新的工作區 。 如需將記錄傳送至 Log Analytics 所產生的額外成本相關信息,請參閱 Azure 監視器定價

    Azure Databricks 診斷設定

  5. 選擇您想要診斷記錄的服務。

  6. 選取 [儲存]。

  7. 如果您收到錯誤,指出「無法更新的 <workspace name>診斷。 <subscription id>訂用帳戶未註冊為使用 microsoft.insights,“請遵循疑難解答 Azure 診斷 指示來註冊帳戶,然後重試此程式。

  8. 如果您想要變更診斷記錄在未來的任何時間點儲存方式,請返回此頁面以修改帳戶的診斷記錄設定。

注意

如果您想要設定記憶體保留原則,請設定 Azure 生命週期管理原則

使用 PowerShell 啟用記錄

  1. 啟動 Azure PowerShell 工作階段,並使用下列命令登入您的 Azure 帳戶:

     Connect-AzAccount
    

    若要以使用者身分登入您的 Azure 帳戶,請參閱 使用 Azure Databricks 使用者帳戶登入 PowerShell。 若要以服務主體身分登入 Azure 帳戶,請參閱 使用 Microsoft Entra ID 服務主體登入 PowerShell。

    如果您尚未安裝 Azure Powershell,請使用下列命令來安裝 Azure PowerShell。

     Install-Module -Name Az -AllowClobber
    
  2. 在快顯瀏覽器視窗中,輸入您的 Azure 帳戶使用者名稱與密碼。 Azure PowerShell 會取得與此帳戶相關聯的所有訂用帳戶,且預設會使用第一個訂用帳戶。

    如果您有一個以上的訂用帳戶,您可能必須指定用來建立 Azure 金鑰保存庫 的特定訂用帳戶。 若要查看您帳戶的訂用帳戶,請輸入下列命令:

    Get-AzSubscription
    

    若要指定與您記錄的 Azure Databricks 帳戶相關聯的訂用帳戶,請輸入下列命令:

    Set-AzContext -SubscriptionId <subscription ID>
    
  3. 將Log Analytics資源名稱設定為名為 logAnalytics的變數,其中 ResourceName 是Log Analytics工作區的名稱。

    $logAnalytics = Get-AzResource -ResourceGroupName <resource group name> -ResourceName <resource name> -ResourceType "Microsoft.OperationalInsights/workspaces"
    
  4. 將 Azure Databricks 服務資源名稱設定為名為 databricks的變數,其中 ResourceName 是 Azure Databricks 服務的名稱。

    $databricks = Get-AzResource -ResourceGroupName <your resource group name> -ResourceName <your Azure Databricks service name> -ResourceType "Microsoft.Databricks/workspaces"
    
  5. 若要啟用 Azure Databricks 的記錄功能,請使用 New-AzDiagnosticSetting Cmdlet 搭配新記憶體帳戶、Azure Databricks 服務和類別的變數來啟用記錄。 執行下列命令, -Enabled 並將旗標設定為 $true

    New-AzDiagnosticSetting -ResourceId $databricks.ResourceId -WorkspaceId $logAnalytics.ResourceId -Enabled $true -name "<diagnostic setting name>" -Category <comma separated list>
    

使用 Azure CLI 啟用記錄

  1. 開啟 PowerShell。

  2. 使用下列命令連線到您的 Azure 帳戶:

    az login
    

    若要使用 Microsoft Entra ID 服務主體進行連線,請參閱 使用 Microsoft Entra ID 服務主體的 Azure CLI 登入。

    若要使用 Azure Databricks 使用者帳戶進行連線,請參閱 使用 Azure Databricks 使用者帳戶登入 Azure CLI。

  3. 執行下列診斷設定命令:

    az monitor diagnostic-settings create --name <diagnostic name>
    --resource-group <log analytics workspace resource group>
    --workspace <log analytics name or object ID>
    --resource <target resource object ID>
    --logs '[
    {
     \"category\": <category name>,
      \"enabled\": true
    }
    ]'
    

REST API

使用Log設定 API。

要求

PUT https://management.azure.com/{resourceUri}/providers/microsoft.insights/diagnosticSettings/{name}?api-version=2017-05-01-preview

要求本文

{
    "properties": {
    "workspaceId": "<log analytics resourceId>",
    "logs": [
      {
        "category": "<category name>",
        "enabled": true,
        "retentionPolicy": {
          "enabled": false,
          "days": 0
        }
      }
    ]
  }
}

診斷記錄延遲

針對您的帳戶啟用記錄功能之後,Azure Databricks 會自動將診斷記錄傳送至您的傳遞位置。 記錄通常會在啟用後的15分鐘內提供。 Azure Databricks 可稽核事件通常會在 Azure 商業區域中的 15 分鐘內出現在診斷記錄中。

SSH 登入記錄會以高延遲傳遞。

注意

雖然大部分記錄預期會在 15 分鐘內傳遞,但 Azure Databricks 並不保證記錄傳遞的時間範圍。