Hämta indexerarens status (REST API för Azure AI Search)

Åtgärden Get Indexer Status (Hämta indexeringsstatus ) hämtar den aktuella statusen och körningshistoriken för en indexerare:

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-parametrar

Parameter Beskrivning
tjänstnamn Krävs. Ange det unika, användardefinierade namnet på söktjänsten.
indexerarens namn Krävs. Begärande-URI anger namnet på indexeraren för vilken status ska returneras.
api-version Krävs. Den aktuella stabila versionen är api-version=2020-06-30. Fler versioner finns i API-versioner .
failIfCannotDecrypt Valfritt, standardvärdet är true om det inte anges. Om indexeraren skapades med en krypteringsnyckel och söktjänsten inte har åtkomst till krypteringsnyckeln misslyckas hämtningen av indexerarstatusen. Om det är falskt har den returnerade indexerarens status krypterade egenskaper ersatta med "<encrypted>" platshållare.

Rubriker för begäran

I följande tabell beskrivs de obligatoriska och valfria begärandehuvudena.

Fält Description
Content-Type Krävs. Ange detta till application/json
api-key Valfritt om du använder Azure-roller och en ägartoken anges i begäran, annars krävs en nyckel. En API-nyckel är en unik, systemgenererad sträng som autentiserar begäran till söktjänsten. Hämta begäranden om en objektdefinition måste innehålla ett api-nyckelfält som är inställt på din administratörsnyckel (till skillnad från en frågenyckel). Mer information finns i Ansluta till Azure AI Search med nyckelautentisering .

Begärandetext

Inga.

Svarsåtgärder

Statuskod: 200 OK för ett lyckat svar. Svarstexten innehåller information om övergripande hälsostatus för indexeraren, det senaste anropet till indexeraren och historiken för de senaste anropen av indexerare (om det finns).

Ett exempel på svarstext ser ut så här:

{
    "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
        }
    ]
}

Anteckning

Om indexeraren skapades med hjälp av en krypteringsnyckel kan krypterade egenskaper för statusen endast hämtas om söktjänsten har åtkomst till krypteringsnyckeln. Om söktjänsten inte har åtkomst till krypteringsnyckeln returneras en 400 Felaktig begäran som standard. Ange failIfCannotDecrypt=false för att hämta status med "<encrypted>" platshållare som ersätter krypterade egenskaper.

Indexerarens status

Indexerarens status kan vara något av följande värden:

  • körs anger att indexeraren körs normalt. Vissa av indexerarens körningar kan fortfarande misslyckas, så det är en bra idé att kontrollera egenskapen lastResult också.

  • felet anger att indexeraren har drabbats av ett fel som inte kan korrigeras utan mänsklig inblandning. Autentiseringsuppgifterna för datakällan kan till exempel ha upphört att gälla, eller så har schemat för datakällan eller målindexet ändrats på ett icke-bakåtkompatibelt sätt.

Resultat av indexeringskörning

Ett körningsresultat för en indexerare innehåller information om en enda indexerarekörning. Det senaste resultatet visas som egenskapen lastResult för indexerarens status. Andra senaste resultat, om de finns, returneras som egenskapen executionHistory för indexerarens status.

Indexerarens körningsresultat innehåller följande egenskaper:

  • status: Status för en körning. Mer information finns i Körningsstatus för Indexer nedan.

  • errorMessage: Felmeddelande om misslyckad körning.

  • startTime: Tiden i UTC när den här körningen startade.

  • endTime: Tiden i UTC när den här körningen har avslutats. Det här värdet anges inte om körningen fortfarande pågår.

  • errors( fel): En lista över eventuella fel på objektnivå. Se exempelsvaret ovan för ett exempel. Från och med API-versionen 2020-06-30 kommer varje fel i listan inte längre att innehålla ett "status" eftersom felen på objektnivå alltid var falska för objektnivå. Från och med API-versionen 2020-06-30innehåller varje fel i listan de nya egenskaperna "name", "details"och "documentationLink".

  • varningar: En lista över eventuella varningar på objektnivå. Se exempelsvaret ovan för ett exempel. Från och med API-versionen 2020-06-30innehåller varje varning i listan de nya egenskaperna "name", "details"och "documentationLink".

  • itemsProcessed: Antalet datakällans objekt (till exempel tabellrader) som indexeraren försökte indexeras under den här körningen.

  • itemsFailed: Antalet objekt som misslyckades under den här körningen. Felet anger ID:t för objektet som misslyckades.

  • initialTrackingState: Alltid null för den första indexerarkörningen, eller om principen för spårning av dataändringar inte är aktiverad på den datakälla som används. Om en sådan princip är aktiverad anger det här värdet i efterföljande körningar det första (lägsta) ändringsspårningsvärdet som bearbetas av den här körningen.

  • finalTrackingState: Alltid null om principen för spårning av dataändringar inte är aktiverad på den datakälla som används. Annars anger det senaste (högsta) ändringsspårningsvärdet som bearbetats av den här körningen.

Körningsstatus för indexerare

Indexerarens körningsstatus registrerar statusen för en enskild indexerarekörning. Den kan ha följande värden:

  • success anger att indexerarens körning har slutförts.

  • inProgress anger att indexeringskörningen pågår.

  • transientFailure anger att en indexerarekörning misslyckades. Mer information finns i errorMessage-egenskapen . Felet kan eller kanske inte kräver mänsklig inblandning för att åtgärda det. Att åtgärda ett schemas inkompatibilitet mellan datakällan och målindexet kräver till exempel användaråtgärder, medan ett tillfälligt avbrott i datakällan inte gör det. Indexeringsanrop fortsätter per schema, om ett har definierats. Om en indexerare i ett schema når statusen transientFailure upprepade gånger utan att göra några framsteg, börjar indexeraren köras med ett mindre frekvent intervall (upp till maximalt minst en gång var 24:e timme) tills den lyckas igen.

  • persistentFailure anger att indexeraren har misslyckats på ett sätt som kräver mänsklig inblandning. Schemalagda indexeringskörningar stoppas. När du har åtgärdat problemet använder du Reset Indexer (Azure AI Search REST API) för att starta om de schemalagda körningarna.

  • reset anger att indexeraren har återställts av ett anrop till Reset Indexer (Azure AI Search REST API).

Se även