Indexelő állapotának és eredményeinek monitorozása az Azure AI Searchben

Az indexelő feldolgozását az Azure Portalon, vagy programozott módon, REST-hívásokkal vagy Azure SDK-val figyelheti. Az indexelő állapotán kívül áttekintheti a kezdési és befejezési időpontokat, valamint egy adott futtatás részletes hibáit és figyelmeztetéseit.

Monitorozás az Azure Portal használatával

A keresési szolgáltatás áttekintési oldalán láthatja az összes indexelő aktuális állapotát. A portáloldalak néhány percenként frissülnek, így nem jelenik meg az új indexelő azonnali futtatásának bizonyítéka. A lap tetején található Frissítés gombra kattintva azonnal lekérheti a legújabb nézetet.

Indexers list

Állapot Leírás
Folyamatban Aktív végrehajtást jelez. A portál részleges információkról fog beszámolni. Az indexelés előrehaladtával megfigyelheti, hogy a Docs sikeres értéke növekszik válaszként. A nagy mennyiségű adatot feldolgozó indexelők futtatása hosszú időt vehet igénybe. A több millió forrásdokumentumot kezelő indexelők például 24 órán át futhatnak, majd szinte azonnal újraindulhatnak, hogy ott folytassanak, ahol abbahagyták. Így a nagy mennyiségű indexelők állapota mindig azt jelentheti, hogy folyamatban van a portálon. Még akkor is, ha egy indexelő fut, részletes információk érhetők el a folyamatban lévő folyamatról és az előző futtatásokról.
Siker Azt jelzi, hogy a futtatás sikeres volt. Az indexelő futtatása akkor is sikeres lehet, ha az egyes dokumentumok hibásak, ha a hibák száma kisebb, mint az indexelő Maximális sikertelen elemek beállítása.
Sikertelen A hibák száma túllépte a sikertelen elemek maximális számát, és az indexelés leállt.
Reset Az indexelő belső változáskövetési állapota alaphelyzetbe állt. Az indexelő teljes mértékben lefut, és frissíti az összes dokumentumot, és nem csak az újabb időbélyegekkel rendelkezőket.

Az indexelő aktuális és legutóbbi futtatásairól további részleteket az indexelők közül választhat ki a listában.

Indexer summary and execution history

Az Indexelő összefoglaló diagramja a legutóbbi futtatások során feldolgozott dokumentumok számának grafikonját jeleníti meg.

A Végrehajtási részletek lista legfeljebb 50 legutóbbi végrehajtási eredményt jelenít meg. Válassza ki a végrehajtás eredményét a listában a futtatással kapcsolatos konkrétumok megtekintéséhez. Ez magában foglalja a kezdési és befejezési időpontokat, valamint a felmerülő hibákat és figyelmeztetéseket.

Indexer execution details

Ha a futtatás során dokumentumspecifikus problémák jártak, azok a Hibák és figyelmeztetések mezőkben jelennek meg.

Indexer details with errors

Egyes indexelőknél gyakoriak a figyelmeztetések, és nem mindig jeleznek problémát. Az Azure AI-szolgáltatásokat használó indexelők például figyelmeztetéseket jelenthetnek, ha a kép- vagy PDF-fájlok nem tartalmaznak feldolgozandó szöveget.

Az indexelő hibáinak és figyelmeztetéseinek vizsgálatával kapcsolatos további információkért tekintse meg az Indexelő hibaelhárítási útmutatóját.

Monitorozás az Azure Monitorozási metrikákkal

Az Azure AI Search egy figyelt erőforrás az Azure Monitorban, ami azt jelenti, hogy a Metrics Explorer használatával megtekintheti az indexelő által feldolgozott dokumentumok és készséghívások számával kapcsolatos alapvető metrikákat. Ezek a metrikák az indexelők előrehaladásának figyelésére és riasztások beállítására használhatók.

A metrikanézetek szűrhetők vagy feloszthatók előre definiált dimenziók alapján.

Metrika neve Leírás Dimenziók Használati példák
A dokumentum feldolgozott száma Az indexelő által feldolgozott dokumentumok számát jeleníti meg. Adatforrás neve, sikertelen, indexnév, indexelő neve, képességkészlet neve
- Az átviteli sebesség hozzávetőleges mértékeként hivatkozható (az indexelő által feldolgozott dokumentumok száma az idő függvényében)
– Riasztás beállítása sikertelen dokumentumok esetén
Képesség-végrehajtás hívásainak száma A képesség-meghívások számát jeleníti meg. Adatforrás neve, sikertelen, index neve, indexelő neve, képesség neve, készségtípus, képességkészlet neve
- A készségek elvárt meghívásának biztosítására való hivatkozás a készségek és a készséghívások száma közötti relatív meghívási számok és a dokumentumok számának összehasonlításával.
– Riasztás beállítása sikertelen készséghívások esetén

Az alábbi képernyőképen az indexelők által egy órán belül feldolgozott dokumentumok száma látható, az indexelő neve szerint felosztva.

Indexer documents processed metric

A gráfot úgy is konfigurálhatja, hogy azonos óraintervallumon belül megtekintse a készséghívások számát.

Indexer skills invoked metric

Monitorozás az Indexelő állapotának lekérése (REST API) használatával

Az indexelőzmények állapotát és végrehajtási előzményeit az Indexelő állapotának lekérése paranccsal kérdezheti le:

GET https://[service name].search.windows.net/indexers/[indexer name]/status?api-version=2020-06-30
api-key: [Search service admin key]

A válasz tartalmazza az indexelő általános állapotát, az utolsó (vagy folyamatban lévő) indexelőhívást, valamint a legutóbbi indexelőhívások előzményeit.

{
    "status":"running",
    "lastResult": {
        "status":"success",
        "errorMessage":null,
        "startTime":"2018-11-26T03:37:18.853Z",
        "endTime":"2018-11-26T03:37:19.012Z",
        "errors":[],
        "itemsProcessed":11,
        "itemsFailed":0,
        "initialTrackingState":null,
        "finalTrackingState":null
     },
    "executionHistory":[ {
        "status":"success",
         "errorMessage":null,
        "startTime":"2018-11-26T03:37:18.853Z",
        "endTime":"2018-11-26T03:37:19.012Z",
        "errors":[],
        "itemsProcessed":11,
        "itemsFailed":0,
        "initialTrackingState":null,
        "finalTrackingState":null
    }]
}

A végrehajtási előzmények legfeljebb az 50 legutóbbi futtatást tartalmazzák, amelyek fordított időrendi sorrendben vannak rendezve (a legutóbbi első).

Vegye figyelembe, hogy két különböző állapotérték van. A legfelső szintű állapot maga az indexelő. Az indexelő futási állapota azt jelenti, hogy az indexelő megfelelően van beállítva, és futtatható, de jelenleg nem fut.

Az indexelő minden futtatása saját állapottal is rendelkezik, amely azt jelzi, hogy az adott végrehajtás folyamatban van-e (fut), vagy már befejeződött-e sikeres, átmenetiFailure vagy persistentFailure állapottal.

Amikor egy indexelőt visszaállít a változáskövetési állapot frissítésére, a rendszer egy külön végrehajtási előzménybejegyzést ad hozzá alaphelyzetbe állítási állapottal.

Az állapotkódokkal és az indexelő monitorozási adataival kapcsolatos további információkért tekintse meg az Indexelő állapotának lekérése című témakört.

Monitorozás a .NET használatával

Az alábbi C#-példa információkat ír az indexelő állapotáról és a legutóbbi (vagy folyamatban lévő) futtatás eredményeiről a konzolon.

static void CheckIndexerStatus(SearchIndexerClient indexerClient, SearchIndexer indexer)
{
    try
    {
        string indexerName = "hotels-sql-idxr";
        SearchIndexerStatus execInfo = indexerClient.GetIndexerStatus(indexerName);

        Console.WriteLine("Indexer has run {0} times.", execInfo.ExecutionHistory.Count);
        Console.WriteLine("Indexer Status: " + execInfo.Status.ToString());

        IndexerExecutionResult result = execInfo.LastResult;

        Console.WriteLine("Latest run");
        Console.WriteLine("Run Status: {0}", result.Status.ToString());
        Console.WriteLine("Total Documents: {0}, Failed: {1}", result.ItemCount, result.FailedItemCount);

        TimeSpan elapsed = result.EndTime.Value - result.StartTime.Value;
        Console.WriteLine("StartTime: {0:T}, EndTime: {1:T}, Elapsed: {2:t}", result.StartTime.Value, result.EndTime.Value, elapsed);

        string errorMsg = (result.ErrorMessage == null) ? "none" : result.ErrorMessage;
        Console.WriteLine("ErrorMessage: {0}", errorMsg);
        Console.WriteLine(" Document Errors: {0}, Warnings: {1}\n", result.Errors.Count, result.Warnings.Count);
    }
    catch (Exception e)
    {
        // Handle exception
    }
}

A konzol kimenete a következőképpen fog kinézni:

Indexer has run 18 times.
Indexer Status: Running
Latest run
  Run Status: Success
  Total Documents: 7, Failed: 0
  StartTime: 11:29:31 PM, EndTime: 11:29:31 PM, Elapsed: 00:00:00.2560000
  ErrorMessage: none
  Document Errors: 0, Warnings: 0

Vegye figyelembe, hogy két különböző állapotérték van. A legfelső szintű állapot maga az indexelő állapota. A Futtatás indexelő állapota azt jelenti, hogy az indexelő megfelelően van beállítva, és végrehajtásra elérhető, de jelenleg nem futtatható.

Az indexelő minden futtatása saját állapottal is rendelkezik ahhoz, hogy az adott végrehajtás folyamatban van-e (Fut), vagy már sikeresen befejeződött vagy TransientError állapotú.

Amikor egy indexelő visszaállítja a változáskövetési állapot frissítését, a rendszer egy külön előzménybejegyzést ad hozzá alaphelyzetbe állítási állapottal.

Következő lépések

Az állapotkódokkal és az indexelők monitorozásával kapcsolatos további információkért tekintse meg az alábbi API-referenciát: