Share via


Obter o Estado do Indexador (API REST da Pesquisa de IA do Azure)

A operação Obter Estado do Indexador obtém o estado atual e o histórico de execução de um indexador:

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]

Parâmetros do URI

Parâmetro Description
nome do serviço Obrigatório. Defina-o como o nome exclusivo e definido pelo utilizador do seu serviço de pesquisa.
nome do indexador Obrigatório. O URI do pedido especifica o nome do indexador para o qual o estado deve ser devolvido.
api-version Obrigatório. A versão estável atual é api-version=2020-06-30. Veja Versões da API para obter mais versões.
failIfCannotDecrypt Opcional, a predefinição é verdadeira se não for especificada. Se o indexador tiver sido criado com uma chave de encriptação e o serviço de pesquisa não tiver acesso à chave de encriptação, a obtenção do estado do indexador falhará. Se for falso, o estado do indexador devolvido tem propriedades encriptadas substituídas "<encrypted>" por marcadores de posição.

Cabeçalhos do Pedido

A tabela seguinte descreve os cabeçalhos de pedido obrigatórios e opcionais.

Campos Description
Content-Type Obrigatório. Defina esta opção como application/json
api-key Opcional se estiver a utilizar funções do Azure e for fornecido um token de portador no pedido, caso contrário, é necessária uma chave. Uma chave de api é uma cadeia exclusiva gerada pelo sistema que autentica o pedido no seu serviço de pesquisa. Obter pedidos para uma definição de objeto tem de incluir um campo de chave de api definido para a sua chave de administrador (em oposição a uma chave de consulta). Veja Ligar à Pesquisa de IA do Azure com a autenticação de chaves para obter detalhes.

Corpo do Pedido

Nenhum.

Resposta

Código de Estado: 200 OK para uma resposta bem-sucedida. O corpo da resposta contém informações sobre o estado de funcionamento geral do indexador, a última invocação do indexador e o histórico de invocações recentes do indexador (se existirem).

Um corpo de resposta de exemplo tem o seguinte aspeto:

{
    "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 o indexador tiver sido criado com uma chave de encriptação, as propriedades encriptadas do estado só podem ser obtidas se o serviço de pesquisa tiver acesso à chave de encriptação. Se o serviço de pesquisa não tiver acesso à chave de encriptação, é devolvido um Pedido Incorreto 400 por predefinição. Especifique failIfCannotDecrypt=false para obter o estado com "<encrypted>" marcadores de posição que substituem as propriedades encriptadas.

Estado do indexador

O estado do indexador pode ser um dos seguintes valores:

  • A execução indica que o indexador está a ser executado normalmente. Algumas das execuções do indexador podem ainda estar a falhar, pelo que é boa ideia verificar também a propriedade lastResult .

  • o erro indica que o indexador sofreu um erro que não pode ser corrigido sem intervenção humana. Por exemplo, as credenciais da origem de dados podem ter expirado ou o esquema da origem de dados ou do índice de destino foi alterado de forma interrupcional.

Resultado da execução do indexador

Um resultado de execução do indexador contém informações sobre uma execução de indexador único. O resultado mais recente é apresentado como a propriedade lastResult do estado do indexador. Outros resultados recentes, se estiverem presentes, são devolvidos como a propriedade executionHistory do estado do indexador.

O resultado da execução do indexador contém as seguintes propriedades:

  • status: o estado de uma execução. Veja o estado de execução do Indexador abaixo para obter detalhes.

  • errorMessage: mensagem de erro para uma execução falhada.

  • startTime: a hora em UTC em que esta execução começou.

  • endTime: a hora em UTC em que esta execução terminou. Este valor não é definido se a execução ainda estiver em curso.

  • erros: uma lista de erros ao nível do item, se existirem. Veja a resposta de exemplo acima para obter um exemplo. A partir da versão 2020-06-30 da API, cada erro na lista deixará de incluir um "status" porque, para os erros ao nível do item, foi sempre falso. A partir da versão 2020-06-30da API, cada erro na lista contém as novas propriedades "name", "details"e "documentationLink".

  • avisos: uma lista de avisos ao nível do item, se existirem. Veja a resposta de exemplo acima para obter um exemplo. A partir da versão 2020-06-30da API, cada aviso na lista contém as novas propriedades "name", "details"e "documentationLink".

  • itemsProcessed: o número de itens de origem de dados (por exemplo, linhas de tabela) que o indexador tentou indexar durante esta execução.

  • itemsFailed: o número de itens que falharam durante esta execução. O erro fornece o ID do item que falhou.

  • initialTrackingState: sempre nulo para a primeira execução do indexador ou se a política de controlo de alterações de dados não estiver ativada na origem de dados utilizada. Se essa política estiver ativada, em execuções subsequentes este valor indica o primeiro (menor) valor de controlo de alterações processado por esta execução.

  • finalTrackingState: sempre nulo se a política de controlo de alterações de dados não estiver ativada na origem de dados utilizada. Caso contrário, indica o valor mais recente (mais alto) de controlo de alterações processado com êxito por esta execução.

Estado de execução do indexador

O estado de execução do indexador captura o estado de uma execução de indexador único. Pode ter os seguintes valores:

  • o êxito indica que a execução do indexador foi concluída com êxito.

  • inProgress indica que a execução do indexador está em curso.

  • transientFailure indica que uma execução de indexador falhou. Veja errorMessage property (Propriedade errorMessage ) para obter detalhes. A falha pode ou não exigir intervenção humana para a corrigir. Por exemplo, corrigir uma incompatibilidade de esquema entre a origem de dados e o índice de destino requer a ação do utilizador, enquanto um período de indisponibilidade temporário da origem de dados não. As invocações do indexador continuam por agenda, se uma estiver definida. Se um indexador numa agenda atingir um estado transientFailure repetidamente sem fazer progressos, o indexador começará a ser executado num intervalo menos frequente (até ao máximo de, pelo menos, uma vez a cada 24 horas) até que volte a progredir com êxito.

  • persistentFailure indica que o indexador falhou de uma forma que requer intervenção humana. As execuções agendadas do indexador param. Depois de resolver o problema, utilize Repor Indexador (API REST da Pesquisa de IA do Azure) para reiniciar as execuções agendadas.

  • reset indica que o indexador foi reposto por uma chamada para Repor Indexador (API REST da Pesquisa de IA do Azure).

Ver também