Ottenere lo stato dell'indicizzatore (API REST ricerca intelligenza artificiale di Azure)

L'operazione per ottenere lo stato di un indicizzatore recupera la cronologia di esecuzione e lo stato corrente di un indicizzatore:

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]

Parametri dell'URI

Parametro Descrizione
nome servizio Obbligatorio. Impostare questo valore sul nome univoco definito dall'utente del servizio di ricerca.
nome indicizzatore Obbligatorio. L'URI della richiesta specifica il nome dell'indicizzatore per il quale deve essere restituito lo stato.
api-version Obbligatorio. La versione stabile corrente è api-version=2020-06-30. Per altre versioni, vedere Versioni API .
failIfCannotDecrypt Facoltativo, il valore predefinito è true se non specificato. Se l'indicizzatore è stato creato usando una chiave di crittografia e il servizio di ricerca non ha accesso alla chiave di crittografia , il recupero dello stato dell'indicizzatore ha esito negativo. Se false, lo stato dell'indicizzatore restituito ha proprietà crittografate sostituite con "<encrypted>" segnaposto.

Intestazioni richiesta

La tabella seguente descrive le intestazioni della richiesta obbligatorie e facoltative.

Campi Descrizione
Content-Type Obbligatorio. Impostare il valore su application/json
api-key Facoltativo se si usano ruoli di Azure e viene fornito un token di connessione nella richiesta, altrimenti è necessaria una chiave. Una chiave API è una stringa univoca generata dal sistema che autentica la richiesta al servizio di ricerca. Ottenere le richieste per una definizione dell'oggetto deve includere un campo api-key impostato sulla chiave di amministrazione , anziché una chiave di query. Per informazioni dettagliate, vedere Connettersi a Ricerca intelligenza artificiale di Azure usando l'autenticazione delle chiavi .

Corpo della richiesta

Nessuno.

Risposta

Se la risposta ha esito positivo, viene restituito il codice di stato 200 OK. Il corpo della risposta contiene informazioni sullo stato di integrità generale dell'indicizzatore, sull'ultima chiamata dell'indicizzatore e sulla cronologia delle chiamate dell'indicizzatore recenti (se presente).

Un corpo della risposta di esempio è simile al seguente:

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

Nota

Se l'indicizzatore è stato creato usando una chiave di crittografia, le proprietà crittografate dello stato possono essere recuperate solo se il servizio di ricerca ha accesso alla chiave di crittografia. Se il servizio di ricerca non ha accesso alla chiave di crittografia, per impostazione predefinita viene restituita una richiesta non valida 400. Specificare failIfCannotDecrypt=false per recuperare lo stato con "<encrypted>" segnaposto sostituendo le proprietà crittografate.

Stato dell'indicizzatore

Lo stato dell'indicizzatore può avere uno dei valori seguenti:

  • l'esecuzione indica che l'indicizzatore è in esecuzione normalmente. Alcune esecuzioni dell'indicizzatore potrebbero comunque non riuscire, quindi è consigliabile controllare anche l'ultima proprietàResult .

  • errore indica che l'indicizzatore ha riscontrato un errore che non può essere corretto senza intervento umano. È ad esempio possibile che le credenziali dell'origine dati siano scadute o che lo schema dell'origine dati o dell'indice di destinazione sia cambiato in modo significativo.

Risultato dell'esecuzione dell'indicizzatore

Il risultato dell'esecuzione dell'indicizzatore contiene informazioni su una singola esecuzione dell'indicizzatore. Il risultato più recente viene visualizzato come ultima proprietàResult dello stato dell'indicizzatore. Altri risultati recenti, se presenti, vengono restituiti come proprietà executionHistory dello stato dell'indicizzatore.

Il risultato dell'esecuzione dell'indicizzatore contiene le proprietà seguenti:

  • status: stato di un'esecuzione. Per informazioni dettagliate, vedere Stato di esecuzione dell'indicizzatore seguente.

  • errorMessage: messaggio di errore per un'esecuzione non riuscita.

  • startTime: ora in formato UTC all'avvio dell'esecuzione.

  • endTime: ora in formato UTC al termine dell'esecuzione. Questo valore non è impostato se l'esecuzione è ancora in corso.

  • errori: elenco di errori a livello di elemento, se presenti. Per un esempio, vedere la risposta di esempio precedente. A partire dalla versione 2020-06-30 dell'API ogni errore nell'elenco non includerà più un "status" perché per gli errori a livello di elemento è sempre false. A partire dalla versione 2020-06-30dell'API, ogni errore nell'elenco contiene le nuove proprietà "name", "details"e "documentationLink".

  • avvisi: elenco di avvisi a livello di elemento, se presenti. Per un esempio, vedere la risposta di esempio precedente. A partire dalla versione 2020-06-30dell'API, ogni avviso nell'elenco contiene le nuove proprietà "name", "details"e "documentationLink".

  • itemsProcessed: numero di elementi dell'origine dati ,ad esempio righe di tabella, che l'indicizzatore ha tentato di indicizzare durante questa esecuzione.

  • itemsFailed: numero di elementi non riusciti durante questa esecuzione. L'errore indica l'ID dell'elemento non riuscito.

  • initialTrackingState: Always Null per la prima esecuzione dell'indicizzatore o se i criteri di rilevamento delle modifiche dei dati non sono abilitati nell'origine dati usata. Se i criteri sono abilitati, nelle esecuzioni successive questo valore indica il primo (minimo) valore di rilevamento delle modifiche elaborato da questa esecuzione.

  • finalTrackingState: Sempre Null se i criteri di rilevamento delle modifiche dei dati non sono abilitati nell'origine dati usata. In caso contrario, indica l'ultimo (massimo) valore di rilevamento delle modifiche elaborato correttamente da questa esecuzione.

Stato di esecuzione dell'indicizzatore

Lo stato di esecuzione dell'indicizzatore acquisisce lo stato di una singola esecuzione dell'indicizzatore. I valori possibili sono i seguenti:

  • l'esito positivo indica che l'esecuzione dell'indicizzatore è stata completata correttamente.

  • inProgress indica che l'esecuzione dell'indicizzatore è in corso.

  • transientFailure indica che un'esecuzione dell'indicizzatore non è riuscita. Per informazioni dettagliate, vedere la proprietà errorMessage . È possibile che la correzione dell'errore richieda l'intervento da parte dell'utente. Ad esempio, la correzione di un'incompatibilità dello schema tra l'origine dati e l'indice di destinazione richiede un'azione dell'utente, mentre un tempo di inattività temporaneo dell'origine dati non viene risolto. Le chiamate dell'indicizzatore continuano per pianificazione, se ne viene definito uno. Se un indicizzatore in una pianificazione raggiunge ripetutamente uno stato temporaneoFailure senza apportare progressi, l'indicizzatore inizierà a funzionare su un intervallo meno frequente (fino al massimo di almeno una volta ogni 24 ore) fino a quando non esegue nuovamente lo stato di avanzamento.

  • persistentFailure indica che l'indicizzatore ha avuto esito negativo in modo da richiedere l'intervento umano. Le esecuzioni pianificate dell'indicizzatore vengono arrestate. Dopo aver risolto il problema, usare Reset Indexer (API REST ricerca intelligenza artificiale di Azure) per riavviare le esecuzioni pianificate.

  • reset indica che l'indicizzatore è stato reimpostato da una chiamata a Reset Indexer (API REST ricerca intelligenza artificiale di Azure) .

Vedi anche