設定診斷記錄
在任何 Analysis Services 解決方案中,監視您伺服器的執行方式皆是一大重點功能。 如需監視 Azure Analysis Services 的一般資訊,請參閱 監視 Azure Analysis Services。
本文說明如何設定、檢視及管理 Analysis Services 伺服器的 Azure 監視器資源記錄 。 您可以將資源記錄傳送至 Azure 儲存體、將其串流至 Azure 事件中樞,並將其匯出至 Azure 監視器記錄。
注意
建議您使用 Azure Az PowerShell 模組來與 Azure 互動。 若要開始使用,請參閱 安裝 Azure PowerShell。 若要了解如何移轉至 Az PowerShell 模組,請參閱將 Azure PowerShell 從 AzureRM 移轉至 Az。
記錄的內容?
您可以選取 [引擎]、 [服務] 和 [計量 ] 記錄類別。 如需每個類別所記錄項目的清單,請參閱 Microsoft.AnalysisServices/servers 的支援資源記錄。
設定診斷記錄
Azure 入口網站
在 Azure 入口網站> 伺服器中,在左側瀏覽中按一下 [診斷記錄],然後按一下 [開啟診斷]。
在 [診斷設定] 中,指定下列選項:
名稱. 輸入要建立之記錄的名稱。
封存至儲存體帳戶。 若要使用此選項,您需要可以連接的現有儲存體帳戶。 請參閱建立儲存體帳戶。 請依照指示建立資源管理員、一般用途的帳戶,然後在返回入口網站上的此頁面時,選取您的儲存體帳戶。 新建立的儲存體帳戶可能在數分鐘後才會出現在下拉式功能表中。
串流處理至事件中樞。 若要使用此選項,您需要可以連接的現有事件中樞命名空間和事件中樞。 若想深入了解,請參閱使用 Azure 入口網站來建立事件中樞命名空間和事件中樞。 然後返回入口網站的此頁面選取事件中樞命名空間和原則名稱。
傳送至 Azure 監視器 (Log Analytics 工作區)。 若要使用此選項,請使用現有的工作區,或是在入口網站中建立新的工作區資源。 如需有關如何檢視記錄的詳細資訊,請參閱本文中的檢視 Log Analytics 工作區中的記錄。
引擎。 選取此選項可記錄 xEvents。 如果您要封存至儲存體帳戶,您可以為資源記錄選取保留期間。 保留期限過後,就會自動刪除記錄。
服務。 選取此選項可記錄服務層級事件。 如果您要封存至儲存體帳戶,您可以為資源記錄選取保留期間。 保留期限過後,就會自動刪除記錄。
計量。 選取此選項可儲存計量中的詳細資料。 如果您要封存至儲存體帳戶,您可以為資源記錄選取保留期間。 保留期限過後,就會自動刪除記錄。
按一下 [檔案] 。
如果您收到錯誤,指出「無法更新 <工作區名稱> 的診斷。 訂用帳戶 <訂用帳戶識別碼> 未註冊使用 microsoft.insights。」請遵循針對 Azure 診斷進行疑難排解的指示註冊帳戶,然後重試此程序。
未來無論何時,如果想要變更資源記錄的儲存方式,您可以返回此頁面來修改設定。
PowerShell
以下基本命令將引導您進行後續作業。 如果您需要逐步說明,了解如何使用 PowerShell 將記錄設定到儲存體帳戶,請參閱本文後段中的教學課程。
若要使用 PowerShell 啟用計量和資源記錄,請使用下列命令:
若要將資源記錄儲存在儲存體帳戶中,請使用此命令︰
Set-AzDiagnosticSetting -ResourceId [your resource id] -StorageAccountId [your storage account id] -Enabled $true
儲存體帳戶識別碼是您要傳送記錄之目標儲存體帳戶的資源識別碼。
若要將資源記錄串流至事件中樞,請使用此命令︰
Set-AzDiagnosticSetting -ResourceId [your resource id] -ServiceBusRuleId [your service bus rule id] -Enabled $true
Azure 服務匯流排規則識別碼是此格式的字串︰
{service bus resource ID}/authorizationrules/{key name}
若要將資源記錄傳送至 Log Analytics 工作區,請使用此命令:
Set-AzDiagnosticSetting -ResourceId [your resource id] -WorkspaceId [resource id of the log analytics workspace] -Enabled $true
您可以使用下列命令取得 Log Analytics 工作區的資源識別碼:
(Get-AzOperationalInsightsWorkspace).ResourceId
您可以結合這些參數來啟用多個輸出選項。
REST API
了解如何使用 Azure 監視器 REST API 變更診斷設定。
Resource Manager 範本
了解如何使用 Resource Manager 範本在建立資源時啟用診斷設定。
管理您的記錄
記錄通常會在設定記錄時幾個小時內提供。 儲存體帳戶中的記錄由您全權管理:
- 請使用標準的 Azure 存取控制方法限制可存取記錄的人員,藉此來保護記錄。
- 刪除不想繼續保留在儲存體帳戶中的記錄。
- 請務必設定保留期限,以便從儲存體帳戶刪除舊的記錄。
檢視 Log Analytics 工作區中的記錄
若要檢視診斷資料,請開啟 Log Analytics 工作區左側功能表中的 [記錄]。
在查詢產生器中,展開 [LogManagement]>[AzureDiagnostics]。 AzureDiagnostics 包括「引擎」和「服務」事件。 留意到查詢是即時建立的。 EventClass_s 的欄位包含 xEvent 名稱,如果您曾經使用 xEvents 進行內部部署記錄,這些名稱就可能看起來似曾相似。 按一下 EventClass_s 或其中一個事件名稱,Log Analytics 工作區將會繼續建構查詢。 請務必儲存您的查詢,以供日後重複使用。
如需可與 Analysis Services 搭配使用的更多查詢,請參閱 範例 Kusto 查詢。
使用 PowerShell 開啟記錄
在本快速教學課程中,您可以在與 Analysis Service 伺服器相同的訂用帳戶和資源群組中,建立儲存體帳戶。 接著,您使用 Set-AzDiagnosticSetting 開啟診斷記錄,將輸出傳送至新的儲存體帳戶。
必要條件
若要完成本教學課程,您必須具備下列資源:
- 現有的 Azure Analysis Services 伺服器。 如需建立伺服器資源的指示,請參閱 在 Azure 入口網站中建立伺服器,或使用 PowerShell 建立 Azure Analysis Services 伺服器。
連線到您的訂閱
開始 Azure PowerShell 工作階段,並使用下列命令登入您的 Azure 帳戶:
Connect-AzAccount
在快顯瀏覽器視窗中,輸入您的 Azure 帳戶使用者名稱與密碼。 Azure PowerShell 會取得與此帳戶相關聯的所有訂用帳戶,並依預設使用第一個訂用帳戶。
如果您有多個訂用帳戶,您可能必須指定用來建立 Azure 金鑰保存庫的那一個特定訂用帳戶。 輸入下列命令以查看您帳戶的訂用帳戶:
Get-AzSubscription
然後為了指定已與所要記錄 Azure Analysis Services 帳戶建立關聯的訂用帳戶,輸入:
Set-AzContext -SubscriptionId <subscription ID>
注意
如果您有多個與帳戶相關聯的訂用帳戶,請務必指定訂用帳戶。
為您的記錄建立新的儲存體帳戶
您可以針對您的記錄使用現有的儲存體帳戶,前提是該帳戶與您的伺服器位於相同的訂用帳戶中。 針對此教學課程,您會建立專門用於 Analysis Services 記錄的新儲存體帳戶。 為了方便起見,您可將儲存體帳戶詳細資訊儲存到名為 sa 的變數。
您也可以使用與包含 Analysis Services 伺服器資源群組相同的資源群組。 請將 awsales_resgroup
、awsaleslogs
和 West Central US
的值替代成您自己的值:
$sa = New-AzStorageAccount -ResourceGroupName awsales_resgroup `
-Name awsaleslogs -Type Standard_LRS -Location 'West Central US'
識別記錄的伺服器帳戶
將帳戶名稱設為名為 account 的變數,其中的 ResourceName 是帳戶的名稱。
$account = Get-AzResource -ResourceGroupName awsales_resgroup `
-ResourceName awsales -ResourceType "Microsoft.AnalysisServices/servers"
啟用 記錄
若要啟用記錄,請使用 Set-AzDiagnosticSetting Cmdlet,並搭配新儲存體帳戶、伺服器帳戶和類別的變數一起使用。 執行下列命令,將 -Enabled 旗標設為 $true:
Set-AzDiagnosticSetting -ResourceId $account.ResourceId -StorageAccountId $sa.Id -Enabled $true -Categories Engine
輸出應會如下列範例所示:
StorageAccountId :
/subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourceGroups/awsales_resgroup/providers/Microsoft.Storage/storageAccounts/awsaleslogs
ServiceBusRuleId :
EventHubAuthorizationRuleId :
Metrics
TimeGrain : PT1M
Enabled : False
RetentionPolicy
Enabled : False
Days : 0
Logs
Category : Engine
Enabled : True
RetentionPolicy
Enabled : False
Days : 0
Category : Service
Enabled : False
RetentionPolicy
Enabled : False
Days : 0
WorkspaceId :
Id : /subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourcegroups/awsales_resgroup/providers/microsoft.analysisservic
es/servers/awsales/providers/microsoft.insights/diagnosticSettings/service
Name : service
Type :
Location :
Tags :
這個輸出結果可確認伺服器記錄現已啟用,系統會將資訊儲存到儲存體帳戶中。
您也可以設定記錄的保留原則,以便自動刪除較舊的記錄。 例如,使用 -RetentionEnabled 旗標將保留原則設為 $true 並將 -RetentionInDays 參數設為 90。 系統將自動刪除超過 90 天的舊記錄。
Set-AzDiagnosticSetting -ResourceId $account.ResourceId`
-StorageAccountId $sa.Id -Enabled $true -Categories Engine`
-RetentionEnabled $true -RetentionInDays 90
下一步
- 深入了解 Azure 監視器資源記錄。
- 請參閱 PowerShell 說明中的 Set-AzDiagnosticSetting。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應