Einrichten der Diagnoseprotokollierung

Die Überwachung der Leistung Ihrer Server ist ein wesentlicher Bestandteil jeder Analysis Services-Lösung. Allgemeine Informationen zum Überwachen von Azure Analysis Services finden Sie unter Überwachen von Azure Analysis Services.

In diesem Artikel wird beschrieben, wie Sie Azure Monitor-Ressourcenprotokolle für Ihre Analysis Services-Server einrichten, anzeigen und verwalten. Sie können Ressourcenprotokolle an Azure Storage senden, diese in Azure Event Hubs streamen und in Azure Monitor-Protokolle exportieren.

Resource logging to Storage, Event Hubs, or Azure Monitor logs

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren des Azure Az PowerShell-Moduls. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Protokollierte Daten

Sie können die Protokollkategorien Modul, Dienst und Metriken auswählen. Eine Auflistung der protokollierten Elemente für jede Kategorie finden Sie unter Unterstützte Ressourcenprotokolle für Microsoft.AnalysisServices/Server.

Einrichten der Diagnoseprotokollierung

Azure-Portal

  1. Klicken Sie im Azure-Portal unter „Server“ im linken Navigationsbereich auf Diagnoseeinstellungen und dann auf Diagnose aktivieren.

    Screenshot showing Turn on diagnostics in the Azure portal.

  2. Geben Sie in Diagnoseeinstellungen die folgenden Optionen an:

    • Name: Geben Sie einen Namen für die zu erstellenden Protokolle ein.

    • In einem Speicherkonto archivieren. Sie benötigen ein vorhandenes Speicherkonto, mit dem eine Verbindung hergestellt werden kann, um diese Option verwenden zu können. Siehe Erstellen Sie ein Speicherkonto. Befolgen Sie die Anweisungen zum Erstellen eines allgemeinen Resource Manager-Kontos, und wählen Sie dann Ihr Speicherkonto aus, indem Sie zu dieser Seite im Portal zurückwechseln. Es dauert möglicherweise einige Minuten, bis neu erstellte Speicherkonten im Dropdownmenü angezeigt werden.

    • An einen Event Hub streamen. Sie benötigen einen vorhandenen Event Hub-Namespace und einen Event Hub. mit dem eine Verbindung hergestellt werden kann, um diese Option verwenden zu können. Weitere Informationen finden Sie unter Erstellen eines Event Hubs-Namespace und eines Event Hubs mithilfe des Azure-Portals. Kehren Sie anschließend auf diese Seite im Portal zurück, um den Event Hub-Namespace und den Richtliniennamen auszuwählen.

    • An Azure Monitor senden (Log Analytics-Arbeitsbereich). Für diese Option können Sie entweder einen vorhandenen Arbeitsbereich verwenden oder im Portal eine neue Arbeitsbereichsressource erstellen. Weitere Informationen zum Anzeigen Ihrer Protokolle finden Sie unter Anzeigen von Protokollen im Log Analytics-Arbeitsbereich in diesem Artikel.

    • Modul: Wählen Sie diese Option aus, um xEvents zu protokollieren. Wenn die Archivierung in einem Speicherkonto erfolgt, können Sie die Beibehaltungsdauer für die Ressourcenprotokolle auswählen. Protokolle werden nach Ablauf des Aufbewahrungszeitraums automatisch gelöscht.

    • Dienst. Wählen Sie diese Option aus, um Ereignisse auf Dienstebene zu protokollieren. Wenn Sie auf einem Speicherkonto archivieren, können Sie die Beibehaltungsdauer für die Ressourcenprotokolle auswählen. Protokolle werden nach Ablauf des Aufbewahrungszeitraums automatisch gelöscht.

    • Metriken: Wählen Sie diese Option aus, um ausführliche Daten in Metriken zu speichern. Wenn Sie auf einem Speicherkonto archivieren, können Sie die Beibehaltungsdauer für die Ressourcenprotokolle auswählen. Protokolle werden nach Ablauf des Aufbewahrungszeitraums automatisch gelöscht.

  3. Klicken Sie auf Speichern.

    Sie erhalten die Fehlermeldung: „Fehler beim Aktualisieren der Diagnose für <Arbeitsbereichsname>. Das Abonnement <Abonnement-ID> ist nicht für die Verwendung von microsoft.insights registriert.“ Führen Sie die Anweisungen unter Problembehandlung der Azure-Diagnose aus, um das Konto zu registrieren, und wiederholen Sie dann dieses Verfahren.

    Wenn Sie ändern möchten, wie die Ressourcenprotokolle zu einem zukünftigen Zeitpunkt gespeichert werden, können Sie zum Ändern der Einstellungen zu dieser Seite zurückkehren.

PowerShell

Hier sind die grundlegenden Befehle zum Einstieg aufgeführt. Detaillierte Hilfe zum Einrichten der Protokollierung in einem Speicherkonto mithilfe von PowerShell finden Sie im Tutorial weiter unten in diesem Artikel.

Verwenden Sie die folgenden Befehle, um die Metrik- und Ressourcenprotokollierung mit PowerShell zu aktivieren:

  • Verwenden Sie den folgenden Befehl, um das Speichern von Ressourcenprotokollen in einem Speicherkonto zu aktivieren:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -StorageAccountId [your storage account id] -Enabled $true
    

    Die Speicherkonto-ID ist die Ressourcen-ID für das Speicherkonto, an das die Protokolle gesendet werden sollen.

  • Verwenden Sie den folgenden Befehl, um das Streamen von Ressourcenprotokollen an einen Event Hub zu aktivieren:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -ServiceBusRuleId [your service bus rule id] -Enabled $true
    

    Die Azure Service Bus-Regel-ID ist eine Zeichenfolge mit dem folgenden Format:

    {service bus resource ID}/authorizationrules/{key name}
    
  • Verwenden Sie den folgenden Befehl, um das Senden von Ressourcenprotokollen an einen Log Analytics-Arbeitsbereich zu aktivieren:

    Set-AzDiagnosticSetting -ResourceId [your resource id] -WorkspaceId [resource id of the log analytics workspace] -Enabled $true
    
  • Sie können die Ressourcen-ID mit dem folgenden Befehl aus Ihrem Log Analytics-Arbeitsbereich abrufen:

    (Get-AzOperationalInsightsWorkspace).ResourceId
    

Sie können diese Parameter miteinander kombinieren, um mehrere Ausgabeoptionen zu aktivieren.

REST-API

Informieren Sie sich darüber, wie Sie Diagnoseeinstellungen mithilfe der Azure Monitor-REST-API ändern.

Resource Manager: Vorlage

Informieren Sie sich darüber, wie Sie Diagnoseeinstellungen beim Erstellen von Ressourcen mithilfe einer Resource Manager-Vorlage aktivieren.

Verwalten Ihrer Protokolle

Die Protokolle stehen in der Regel einige Stunden nach dem Einrichten der Protokollierung zur Verfügung. Die Verwaltung der Protokolle im Speicherkonto ist Ihre Aufgabe:

  • Verwenden Sie zum Schutz Ihrer Protokolle standardmäßige Azure-Zugriffssteuerungsmethoden, indem Sie den Zugriff auf diese auf bestimmte Benutzer beschränken.
  • Löschen Sie Protokolle, die im Speicherkonto nicht mehr aufbewahrt werden sollen.
  • Legen Sie eine Beibehaltungsdauer fest, sodass ältere Protokolle aus dem Speicherkonto gelöscht werden.

Anzeigen von Protokollen im Log Analytics-Arbeitsbereich

Öffnen Sie zum Anzeigen Ihrer Diagnosedaten im Log Analytics-Arbeitsbereich im linken Menü Protokolle.

Screenshot showing log Search options in the Azure portal.

Erweitern Sie im Abfrage-Generator LogManagement>AzureDiagnostics. AzureDiagnostics umfasst Modul- und Dienstereignisse. Beachten Sie, dass direkt eine Abfrage erstellt wird. Das Feld „EventClass_s“ enthält xEvent-Namen, die Ihnen vertraut vorkommen können, wenn Sie xEvents für die lokale Protokollierung verwendet haben. Wenn Sie auf EventClass_s oder einen der Ereignisnamen klicken, wird im Log Analytics-Arbeitsbereich eine Abfrage erstellt. Speichern Sie die Abfragen, um sie zu einem späteren Zeitpunkt wiederverwenden zu können.

Weitere Abfragen, die Sie mit Analysis Services verwenden können, finden Sie unter Beispielabfragen für Kusto.

Aktivieren der Protokollierung mit PowerShell

In diesem kurzen Tutorial erstellen Sie ein Speicherkonto im gleichen Abonnement und der gleichen Ressourcengruppe, in denen sich Ihr Analysis Services-Server befindet. Anschließend verwenden Sie „Set-AzDiagnosticSetting“, um die Diagnoseprotokollierung zu aktivieren, damit Ausgaben an das neue Speicherkonto gesendet werden.

Voraussetzungen

Für dieses Tutorial benötigen Sie die folgenden Ressourcen:

Herstellen von Verbindungen mit Ihren Abonnements

Starten Sie eine Azure PowerShell-Sitzung, und melden Sie sich mit dem folgenden Befehl bei Ihrem Azure-Konto an:

Connect-AzAccount

Geben Sie im Popup-Browserfenster den Benutzernamen und das Kennwort Ihres Azure-Kontos ein. Azure PowerShell ruft alle Abonnements ab, die diesem Konto zugeordnet sind, und verwendet standardmäßig das erste Abonnement.

Wenn Sie über mehrere Abonnements verfügen, müssen Sie unter Umständen ein bestimmtes Abonnement angeben, das zum Erstellen der Azure Key Vault-Instanz verwendet wurde. Geben Sie Folgendes ein, um die Abonnements für Ihr Konto anzuzeigen:

Get-AzSubscription

Geben Sie anschließend Folgendes ein, um das Abonnement anzugeben, das dem protokollierten Azure Analysis Services-Konto zugeordnet ist:

Set-AzContext -SubscriptionId <subscription ID>

Hinweis

Wenn Ihrem Konto mehrere Abonnements zugeordnet sind, müssen Sie unbedingt das Abonnement angeben.

Erstellen eines neuen Speicherkontos für Ihre Protokolle

Sie können ein vorhandenes Speicherkonto für Ihre Protokolle verwenden, sofern es sich im gleichen Abonnement wie der Server befindet. Für dieses Tutorial erstellen Sie ein neues Speicherkonto für Analysis Services-Protokolle. Der Einfachheit halber speichern Sie die Details zum Speicherkonto in einer Variable mit dem Namen sa.

Zudem verwenden Sie dieselbe Ressourcengruppe, in der auch der Analysis Services-Server enthalten ist. Ersetzen Sie die Werte für awsales_resgroup, awsaleslogs und West Central US durch Ihre eigenen Werte:

$sa = New-AzStorageAccount -ResourceGroupName awsales_resgroup `
-Name awsaleslogs -Type Standard_LRS -Location 'West Central US'

Identifizieren des Serverkontos für Ihre Protokolle

Legen Sie den Kontonamen auf die Variable account fest, wobei ResourceName der Name des Kontos ist.

$account = Get-AzResource -ResourceGroupName awsales_resgroup `
-ResourceName awsales -ResourceType "Microsoft.AnalysisServices/servers"

Aktivieren der Protokollierung

Verwenden Sie zum Aktivieren der Protokollierung das Cmdlet „Set-AzDiagnosticSetting“ zusammen mit den Variablen für das neue Speicherkonto, das Serverkonto und die Kategorie. Führen Sie den folgenden Befehl aus, und legen Sie das Flag -Enabled auf $true fest:

Set-AzDiagnosticSetting  -ResourceId $account.ResourceId -StorageAccountId $sa.Id -Enabled $true -Categories Engine

Die Ausgabe sollte in etwa wie das folgende Beispiel aussehen:

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                        :

Diese Ausgabe bestätigt, dass die Protokollierung für den Server jetzt aktiviert ist und Informationen im Speicherkonto gespeichert werden.

Sie können außerdem eine Aufbewahrungsrichtlinie für Ihre Protokolle festlegen, sodass ältere Protokolle automatisch gelöscht werden. Richten Sie beispielsweise eine Aufbewahrungsrichtlinie ein, bei der das Flag -RetentionEnabled auf $true und der Parameter -RetentionInDays auf 90 festgelegt sind. Protokolle, die älter als 90 Tage sind, werden dann automatisch gelöscht.

Set-AzDiagnosticSetting -ResourceId $account.ResourceId`
 -StorageAccountId $sa.Id -Enabled $true -Categories Engine`
  -RetentionEnabled $true -RetentionInDays 90

Nächste Schritte