Konfigurieren der Diagnoseprotokollierung für die Azure KI-Suche

Hinweis

Azure KI-Suche ist über das Azure Portal, REST-APIs und Azure SDKs verfügbar. Es unterstützt auch Foundry IQ, die verwaltete Wissensschicht, die Unternehmensinhalte in wiederverwendbare, berechtigungsfähige Wissensbasen für Agenten im Microsoft Foundry-Portal transformiert.

Diagnoseprotokolle bieten Einblicke in Vorgänge, die in Ihrer Azure KI-Suche-Ressource auftreten. Im Gegensatz zu Aktivitätsprotokollen, die Vorgänge nachverfolgen, die auf Azure-Ressourcen auf Abonnementebene ausgeführt werden, die als Kontrollebene bezeichnet werden, überwacht die Diagnoseprotokollierung Vorgänge im Suchdienst selbst. Die Diagnoseprotokollierung ist für eine effektive Überwachung von Dienstvorgängen wie Indizierung und Abfragen unerlässlich.

In diesem Artikel wird erläutert, wie Sie die Diagnoseprotokollierung aktivieren und Informationen zu System- und Benutzervorgängen in einer Azure KI-Suche-Ressource finden.

Hinweis

Azure KI-Suche protokolliert nicht die Identität der Person oder App, die auf Inhalte oder Vorgänge im Suchdienst zugreift. Wenn Sie diese Überwachungsebene benötigen, müssen Sie sie in Ihrer Clientanwendung implementieren.

Voraussetzungen

Diagnoseprotokollierung aktivieren

  1. Wechseln Sie im Azure-Portal zu Ihrem Suchdienst.

  2. Wählen Sie unter Überwachung>DiagnoseeinstellungenDiagnoseeinstellung hinzufügen aus.

  3. Geben Sie einen beschreibenden Namen an, der den Dienst und die Protokollierungsebene identifiziert, z. B. "my-search-service-all-logs" oder "my-search-service-audit-logs".

  4. Wählen Sie unter Protokolle eine Kategorie aus:

    • Überwachungsprotokolle erfassen die Interaktionen von Benutzern oder Anwendungen mit Daten oder den Einstellungen des Dienstes, aber nicht die Identitäten von Benutzern oder Gruppen.
    • Vorgangsprotokolle erfassen Informationen über Vorgänge in einem Suchdienst.
    • allLogs erfasst alles.

    Ausführliche Protokollierung kann hohe Kosten für die Speicherung verursachen und komplex zu verwalten sein. Sie könnten mit allLogs beginnen und dann zu einer detaillierteren Protokollierung wechseln, wenn dies Ihren Informationsanforderungen entspricht. Weitere Informationen zu diesen Kategorien finden Sie unter Diagnoseeinstellungen in Azure Monitor.

  5. Als Ziel empfehlen wir An Log Analytics-Arbeitsbereich senden, damit Sie Kusto-Abfragen für die Daten durchführen können. Stellen Sie einen vorhandenen Log Analytics-Arbeitsbereich bereit, um Ihre Protokolle zu speichern.

  6. Speichern Sie die Einstellungen.

Wiederholen Sie diese Schritte, wenn Sie eine umfassendere Datenerfassungsstrategie benötigen.

Jede von Ihnen erstellte Diagnoseeinstellung erfordert einen separaten Speicher. Wenn Sie das Azure-Portal zur Überprüfung der Protokolle verwenden, wird standardmäßig die erste Diagnoseeinstellung verwendet. Sie können zu bestimmten Arbeitsbereichen navigieren, um die Visualisierung zu unterstützen.

Hinweis

Wenn Sie schlüsselbasierte Authentifizierung verwenden, kann die Azure KI-Suche keine einzelnen Benutzerzugriffe auf Inhalte im Suchdienst überwachen. Wenn Sie diese Überwachungsebene benötigen, müssen Sie sie in Ihrer Clientanwendung implementieren.

Anzeigen von Protokollen in Log Analytics

Befolgen Sie diese Anweisungen, um Protokollanalysedaten für Ihren Suchdienst zu untersuchen.

  1. Wählen Sie unter Überwachung die Option Protokolle aus. Der Abfragehub wird standardmäßig geöffnet. Sie können die verfügbaren Abfragen ausprobieren oder den Hub schließen und ein Abfragefenster im KQL-Modus öffnen, um in der Kusto Query Language (KQL) geschriebene Abfragen auszuführen.

    Screenshot der Option KQL-Modus im Abfrageexplorer des Azure-Portals.

  2. In einem Abfragefenster können Sie Kusto-Abfragen gegen Ihre Protokolle ausführen.

    Screenshot einer Abfrage und der Ergebnisse im Azure-Portal.

Kusto-Beispielabfragen

Im Folgenden finden Sie einige grundlegende Kusto-Abfragen, mit denen Sie Ihre Protokolldaten untersuchen können.

Führen Sie diese Abfrage für alle Diagnoseprotokolle der Azure KI-Suche-Dienste über den angegebenen Zeitraum aus:

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.SEARCH"

Führen Sie diese Abfrage aus, um die letzten 10 Protokolle anzuzeigen:

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.SEARCH"
| take 10

Führen Sie diese Abfrage aus, um die Vorgänge nach Ressource zu gruppieren:

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.SEARCH" |
summarize count() by Resource

Führen Sie diese Abfrage aus, um die durchschnittliche Zeit für die Ausführung eines Vorgangs zu ermitteln:

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.SEARCH"
| summarize avg(DurationMs)
by OperationName

Führen Sie diese Abfrage aus, um die Menge der Vorgänge im Laufe der Zeit, aufgeteilt nach OperationName und 10-Sekunden-Fenstern anzuzeigen.

AzureDiagnostics
| where ResourceProvider == "MICROSOFT.SEARCH"
| summarize count()
by bin(TimeGenerated, 10s), OperationName
| render areachart kind=unstacked