Obter status do indexador (API REST da Pesquisa de IA do Azure)

A operação Obter Status do Indexador recupera o status 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 de URI

Parâmetro Descrição
nome do serviço Obrigatórios. Defina isso como o nome exclusivo definido pelo usuário do serviço de pesquisa.
nome do indexador Obrigatórios. O URI de solicitação especifica o nome do indexador para o qual status deve ser retornado.
api-version Obrigatórios. A versão estável atual é api-version=2020-06-30. Consulte Versões de API para obter mais versões.
failIfCannotDecrypt Opcional, o padrão será true se não for especificado. Se o indexador tiver sido criado usando uma chave de criptografia e o serviço de pesquisa não tiver acesso à chave de criptografia, a recuperação do indexador status falhará. Se false, o indexador status retornado terá propriedades criptografadas substituídas "<encrypted>" por espaços reservados.

Cabeçalhos de solicitação

A tabela a seguir descreve os cabeçalhos de solicitação necessários e opcionais

Campos Descrição
Tipo de conteúdo Obrigatórios. Defina-o como application/json
chave de API Opcional se você estiver usando funções do Azure e um token de portador for fornecido na solicitação, caso contrário, uma chave será necessária. Uma chave de api é uma cadeia de caracteres exclusiva gerada pelo sistema que autentica a solicitação para o serviço de pesquisa. Obter solicitações para uma definição de objeto deve incluir um campo api-key definido como sua chave de administrador (em vez de uma chave de consulta). Confira Conectar-se ao Azure AI Search usando a autenticação de chave para obter detalhes.

Corpo da solicitação

Nenhum.

Resposta

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

Um exemplo de corpo de resposta tem esta aparência:

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

Observação

Se o indexador tiver sido criado usando uma chave de criptografia, as propriedades criptografadas do status só poderão ser recuperadas se o serviço de pesquisa tiver acesso à chave de criptografia. Se o serviço de pesquisa não tiver acesso à chave de criptografia, uma Solicitação 400 Inválida será retornada por padrão. Especifique failIfCannotDecrypt=false para recuperar o status com "<encrypted>" espaços reservados substituindo propriedades criptografadas.

Status do indexador

O status do indexador pode ter um dos seguintes valores:

  • a execução indica que o indexador está em execução normalmente. Algumas das execuções do indexador ainda podem estar falhando, portanto, é uma boa ideia marcar a propriedade lastResult também.

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

Resultado da execução do indexador

Um resultado de execução do indexador contém informações sobre a execução de um único indexador. O resultado mais recente é exibido como a propriedade lastResult do indexador status. Outros resultados recentes, se presentes, são retornados como a propriedade executionHistory do indexador status.

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

  • status: o status de uma execução. Confira a status de execução do indexador abaixo para obter detalhes.

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

  • startTime: a hora em UTC em que essa execução foi iniciada.

  • endTime: a hora em UTC em que essa execução foi encerrada. Esse valor não será definido se a execução ainda estiver em andamento.

  • erros: uma lista de erros no nível do item, se houver. Consulte a resposta de exemplo acima para obter um exemplo. A partir da versão 2020-06-30 da API, cada erro na lista não incluirá mais um "status" porque, para os erros no nível do item, sempre foi 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 no nível do item, se houver. Consulte 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".

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

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

  • initialTrackingState: sempre nulo para a primeira execução do indexador ou se a política de controle de alterações de dados não estiver habilitada na fonte de dados usada. Se essa política estiver habilitada, em execuções subsequentes, esse valor indicará o primeiro valor de controle de alterações (menor) processado por essa execução.

  • finalTrackingState: sempre nulo se a política de controle de alterações de dados não estiver habilitada na fonte de dados usada. Caso contrário, indica o último valor de controle de alterações (mais alto) processado com êxito por essa execução.

Status de execução do indexador

O status de execução do indexador captura o status de uma única execução do indexador. Pode ter um dos valores a seguir:

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

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

  • transientFailure indica que uma execução do indexador falhou. Confira a propriedade errorMessage para obter detalhes. A falha pode ou não exigir intervenção humana para corrigi-la. Por exemplo, corrigir uma incompatibilidade de esquema entre a fonte de dados e o índice de destino requer ação do usuário, enquanto um tempo de inatividade temporário da fonte de dados não. As invocações do indexador continuarão por agendamento, se uma for definida. Se um indexador em um agendamento atingir um status transitóriofailure repetidamente sem fazer progresso, o indexador começará a ser executado em um intervalo menos frequente (até o máximo de pelo menos uma vez a cada 24 horas) até que faça o progresso com êxito novamente.

  • 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, use Redefinir Indexador (API REST da Pesquisa de IA do Azure) para reiniciar as execuções agendadas.

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

Confira também