Abrufen des Indexerstatus (Azure AI Search-REST-API)

Der Vorgang Indexer-Status abrufen ruft den aktuellen Status und den Ausführungsverlauf eines Indexers ab:

GET https://[service name].search.windows.net/indexers/[indexer name]/status?api-version=[api-version]&failIfCannotDecrypt=[true|false]
  Content-Type: application/json  
  api-key: [admin key]

URI-Parameter

Parameter BESCHREIBUNG
Dienstname Erforderlich. Legen Sie dies auf den eindeutigen, benutzerdefinierten Namen Ihres Suchdiensts fest.
Indexername Erforderlich. Der Anforderungs-URI gibt den Namen des Indexers an, für den status zurückgegeben werden soll.
api-version Erforderlich. Die aktuelle stabile Version ist api-version=2020-06-30. Weitere Versionen finden Sie unter API-Versionen .
failIfCannotDecrypt Optional ist standardmäßig true, wenn nicht angegeben. Wenn der Indexer mithilfe eines Verschlüsselungsschlüssels erstellt wurde und der Suchdienst keinen Zugriff auf den Verschlüsselungsschlüssel hat, schlägt das Abrufen des Indexers status fehl. Wenn false, hat der zurückgegebene Indexer status verschlüsselte Eigenschaften durch "<encrypted>" Platzhalter ersetzt.

Anforderungsheader

Die folgende Tabelle beschreibt die erforderlichen und optionalen Anforderungsheader.

Felder BESCHREIBUNG
Content-Type Erforderlich. Auf application/json
api-key Optional, wenn Sie Azure-Rollen verwenden und ein Bearertoken für die Anforderung bereitgestellt wird, andernfalls ist ein Schlüssel erforderlich. Ein API-Schlüssel ist eine eindeutige, vom System generierte Zeichenfolge, die die Anforderung bei Ihrem Suchdienst authentifiziert. Abrufen von Anforderungen für eine Objektdefinition muss ein API-Schlüsselfeld enthalten, das auf Ihren Administratorschlüssel festgelegt ist (im Gegensatz zu einem Abfrageschlüssel). Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Azure AI Search mithilfe der Schlüsselauthentifizierung .

Anforderungstext

Keine.

Antwort

Statuscode: "200 OK" bei erfolgreicher Antwort. Der Antworttext enthält Informationen über die allgemeine Indexerintegrität status, den letzten Indexeraufruf und den Verlauf der letzten Indexeraufrufe (sofern vorhanden).

Ein Beispiel-Antworttext sieht folgendermaßen aus:

{
    "status" : "running",
    "lastResult" : {
        "status" : "success",
        "errorMessage" : null,
        "startTime" : "2014-11-26T03:37:18.853Z",
        "endTime" : "2014-11-26T03:37:19.012Z",
        "errors" : [],
        "warnings" : [],
        "itemsProcessed" : 11,
        "itemsFailed" : 0,
        "initialTrackingState" : null,
        "finalTrackingState" : null
    },
    "executionHistory" : [
        {
            "status" : "success",
            "errorMessage" : null,
            "startTime" : "2014-11-26T03:37:18.853Z",
            "endTime" : "2014-11-26T03:37:19.012Z",
            "errors" : [],
            "warnings" : [],
            "itemsProcessed" : 11,
            "itemsFailed" : 0,
            "initialTrackingState" : null,
            "finalTrackingState" : null
        },
        {
            "status" : "transientFailure",
            "errorMessage" : null,
            "startTime" : "2014-11-26T03:28:10.125Z",
            "endTime" : "2014-11-26T03:28:12.007Z",
            "errors" : [
                {
                    "key" : "",
                    "name" : "The operation name describing where the error occurred. For example, 'Enrichment.LanguageDetectionSkill.SkillName'",
                    "errorMessage" : "Document key cannot be missing or empty.",
                    "statusCode" : 400,
                    "details" : "Any additional details, such as the WebApi response if executing a custom skill failed.",
                    "documentationLink" : "A link to relevant documentation. For example, 'https://go.microsoft.com/fwlink/?linkid=2099692'""
                }
            ],
            "warnings" : [
                {
                    "key" : "document id",
                    "name" : "The operation name describing where the warning occurred. For example, 'Enrichment.LanguageDetectionSkill.SkillName'",
                    "message" : "A warning doesn't stop indexing, and is intended to inform you of certain interesting situations, like when a blob indexer truncates the amount of text extracted from a blob."
                    "details" : "Any additional details, such as the WebApi response if executing a custom skill failed.",
                    "documentationLink" : "A link to relevant documentation. For example, 'https://go.microsoft.com/fwlink/?linkid=2099692'"
                }
            ],
            "itemsProcessed" : 1,
            "itemsFailed" : 1,
            "initialTrackingState" : null,
            "finalTrackingState" : null
        }
    ]
}

Hinweis

Wenn der Indexer mithilfe eines Verschlüsselungsschlüssels erstellt wurde, können verschlüsselte Eigenschaften des status nur abgerufen werden, wenn der Suchdienst Zugriff auf den Verschlüsselungsschlüssel hat. Wenn der Suchdienst keinen Zugriff auf den Verschlüsselungsschlüssel hat, wird standardmäßig eine 400 ungültige Anforderung zurückgegeben. Geben Sie failIfCannotDecrypt=false an, um die status mit "<encrypted>" Platzhaltern abzurufen, die verschlüsselte Eigenschaften ersetzen.

Indexerstatus

Der Indexer-Status kann einen der folgenden Werte aufweisen:

  • running gibt an, dass der Indexer normal ausgeführt wird. Einige der Indexerausführungen können weiterhin fehlschlagen, daher ist es ratsam, auch die lastResult-Eigenschaft zu überprüfen.

  • error gibt an, dass beim Indexer ein Fehler aufgetreten ist, der ohne menschliches Eingreifen nicht korrigiert werden kann. Beispiele hierfür sind abgelaufene Anmeldeinformationen für die Datenquelle oder ein geändertes, nun fehlerhaftes Schema der Datenquelle oder des Zielindexes.

Ausführungsergebnis für Indexer

Das Ergebnis der Indexer-Ausführung enthält Informationen über die Ausführung eines einzelnen Indexers. Das neueste Ergebnis wird als lastResult-Eigenschaft des Indexers status angezeigt. Andere aktuelle Ergebnisse werden, sofern vorhanden, als executionHistory-Eigenschaft des Indexers status zurückgegeben.

Das Indexer-Ausführungsergebnis enthält die folgenden Eigenschaften:

  • status: Die status einer Ausführung. Weitere Informationen finden Sie weiter unten unter status Indexerausführung.

  • errorMessage: Fehlermeldung für eine fehlgeschlagene Ausführung.

  • startTime: Die Zeit in UTC, zu der diese Ausführung gestartet wurde.

  • endTime: Der Zeitpunkt in UTC, zu dem diese Ausführung beendet wurde. Dieser Wert wird nicht festgelegt, wenn die Ausführung noch ausgeführt wird.

  • Errors: Eine Liste von Fehlern auf Elementebene, falls vorhanden. Ein Beispiel finden Sie in der obigen Beispielantwort. Ab der API-Version 2020-06-30 enthält "status" jeder Fehler in der Liste keinen mehr, da er für die Fehler auf Elementebene immer false war. Ab API-Version 2020-06-30enthält jeder Fehler in der Liste die neuen Eigenschaften "name", "details"und "documentationLink".

  • Warnungen: Eine Liste von Warnungen auf Elementebene, falls vorhanden. Ein Beispiel finden Sie in der obigen Beispielantwort. Ab der API-Version 2020-06-30enthält jede Warnung in der Liste die neuen Eigenschaften "name", "details"und "documentationLink".

  • itemsProcessed: Die Anzahl der Datenquellenelemente (z. B. Tabellenzeilen), die der Indexer während dieser Ausführung indiziert hat.

  • itemsFailed: Die Anzahl der Elemente, die während dieser Ausführung fehlgeschlagen sind. Der Fehler stellt die ID des fehlgeschlagenen Elements bereit.

  • initialTrackingState: Immer NULL für die erste Indexerausführung, oder wenn die Datenänderungsnachverfolgungsrichtlinie für die verwendete Datenquelle nicht aktiviert ist. Wenn eine solche Richtlinie aktiviert ist, gibt dieser Wert in den nachfolgenden Ausführungen den ersten (niedrigste Priorität) Änderungsnachverfolgungswert an, der bei dieser Ausführung verarbeitet wurde.

  • finalTrackingState: Immer NULL , wenn die Datenänderungsnachverfolgungsrichtlinie für die verwendete Datenquelle nicht aktiviert ist. Andernfalls wird der neueste (höchste Priorität) Änderungsnachverfolgungswert angegeben, der bei dieser Ausführung erfolgreich verarbeitet wurde.

Indexerausführungsstatus

Der Status der Indexer-Ausführung erfasst den Status einer einzelnen Indexer-Ausführung. Die folgenden Werte sind möglich:

  • success gibt an, dass die Indexerausführung erfolgreich abgeschlossen wurde.

  • inProgress gibt an, dass die Indexerausführung ausgeführt wird.

  • transientFailure gibt an, dass bei der Indexerausführung ein Fehler aufgetreten ist. Weitere Informationen finden Sie unter errorMessage-Eigenschaft . Der Fehler kann zum Beheben möglicherweise einen Benutzereingriff erfordern. Beispielsweise erfordert das Beheben einer Schemainkompatibilität zwischen der Datenquelle und dem Zielindex eine Benutzeraktion, während eine temporäre Datenquellenausfallzeit nicht der Fall ist. Indexeraufrufe werden nach Zeitplan fortgesetzt, wenn eine festgelegt ist. Wenn ein Indexer nach einem Zeitplan wiederholt eine transientFailure-status erreicht, ohne fortschritte zu machen, beginnt der Indexer mit der Ausführung in einem weniger häufigen Intervall (bis zum Maximum von mindestens einmal alle 24 Stunden), bis er den Fortschritt wieder erfolgreich macht.

  • persistentFailure gibt an, dass der Indexer auf eine Weise ausgefallen ist, die menschliches Eingreifen erfordert. Die geplanten Indexer-Ausführungen werden gestoppt. Nachdem Sie das Problem behoben haben, verwenden Sie Reset Indexer (Azure AI Search REST API), um die geplanten Ausführungen neu zu starten.

  • reset gibt an, dass der Indexer durch einen Aufruf von Reset Indexer (Azure AI Search REST API) zurückgesetzt wurde.

Weitere Informationen