Compartilhar via


Monitorar os pontos de extremidade online

O Azure Machine Learning usa a integração com o Azure Monitor para acompanhar e monitorar métricas e logs de pontos de extremidade online. Você pode exibir métricas em gráficos, comparar métricas entre pontos de extremidade e implantações, fixar métricas nos painéis do portal do Azure, configurar alertas, consultar tabelas de log e efetuar push de logs para destinos com suporte. Você também pode usar o Application Insights para analisar eventos de contêineres de usuário.

  • Métricas: para métricas no nível do ponto de extremidade, como latência de solicitação, solicitações por minuto, novas conexões por segundo e bytes de rede, você pode fazer drill down para ver informações detalhadas no nível de implantação ou de status. Você também pode fazer drill down de métricas no nível de implantação, como uso de CPU/GPU e uso de memória ou disco no nível da instância. No Monitor, você pode acompanhar essas métricas em gráficos e configurar painéis e alertas para análise posterior.

  • Logs: você pode enviar métricas para um workspace do Log Analytics, onde pode usar a sintaxe de consulta Kusto para consultar os logs. Você também pode enviar métricas para as contas de Armazenamento do Azure ou para os Hubs de Eventos do Azure para processamento adicional. Para tráfego, logs de console (contêiner) e eventos relacionados a pontos de extremidade online, você pode usar as tabelas de log dedicadas. As consultas Kusto dão suporte a recursos de análise complexos e à junção de várias tabelas.

  • Application Insights: os ambientes selecionados incluem integração com o Application Insights. Você pode ativar ou desativar essa integração ao criar uma implantação online. Quando você o ativa, as métricas internas e os logs são enviados para o Application Insights. Assim, você pode usar os recursos internos do Application Insights para análise adicional. Os exemplos desses recursos incluem métricas dinâmicas, a pesquisa de transações, a exibição de falhas e a exibição de desempenho.

Neste artigo, você verá como:

  • Escolher o método certo para exibir e acompanhar as métricas e os logs.
  • Ver as métricas do ponto de extremidade online gerenciado.
  • Criar um painel para suas métricas.
  • Criar um alerta de métrica.
  • Ver os logs do ponto de extremidade online.
  • Use o Application Insights para acompanhar as métricas e os logs.

Pré-requisitos

  • Um ponto de extremidade online do Azure Machine Learning
  • Pelo menos Acesso ao Leitor no ponto de extremidade

Usar métricas

No portal do Azure, você pode exibir páginas de métricas para os pontos de extremidade e implantações online.

Acessar métricas do Estúdio do Azure Machine Learning

Uma maneira fácil de acessar as páginas de métricas é por meio de links que estão disponíveis na interface do usuário do Estúdio do Azure Machine Learning. Você pode encontrar esses links na guia Detalhes da página de um ponto de extremidade. Esses links levam à página de métricas no portal do Azure para o ponto de extremidade ou implantação.

Para acessar as páginas de métricas por meio de links disponíveis no estúdio, siga as seguintes etapas:

  1. No Estúdio do Azure Machine Learning, vá para o workspace.

  2. Em Ativos, selecione Pontos de extremidade.

  3. Selecione o nome de um ponto de extremidade.

  4. Em Atributos de ponto de extremidade, selecione Exibir métricas.

    Captura de tela de uma página de ponto de extremidade no estúdio que mostra os atributos do ponto de extremidade. Os ativos, pontos de extremidade, atributos de ponto de extremidade e métricas de exibição estão realçados.

    A página de métricas do ponto de extremidade é aberta no portal do Azure.

  5. No Estúdio do Azure Machine Learning, em uma página do ponto de extremidade, vá para a seção para uma implantação e selecione Exibir métricas.

    Captura de tela de uma página de ponto de extremidade no estúdio que mostra as informações da implantação. As implantação em azul e Exibir métricas estão realçadas.

    A página de métricas da implantação é aberta no portal do Azure.

Acessar as métricas do portal do Azure

Outra maneira de exibir a página de métricas de um ponto de extremidade ou implantação é ir diretamente para o portal do Azure:

  1. Acesse o portal do Azure.

  2. Acesse o recurso de ponto de extremidade e implantação online.

    Os pontos de extremidade e implantações online são recursos do Azure Resource Manager. Você pode encontrá-los acessando o grupo de recursos e procurando os tipos de recursos Ponto de extremidade online do Machine Learning e Implantação online do Machine Learning.

  3. Na página de recursos, em Monitoramento, selecione Métricas.

    Captura de tela do portal do Azure que mostra a página Métricas para uma implantação. O monitoramento e as métricas estão realçados.

Métricas disponíveis

As métricas que você vê dependem do recurso selecionado. As métricas dos pontos de extremidade online e implantações online têm escopo diferente.

Métricas no escopo do ponto de extremidade

Para obter informações sobre as métricas disponíveis no escopo do ponto de extremidade online, confira Métricas com suporte para Microsoft.MachineLearningServices/workspaces/onlineEndpoints.

Limitação de largura de banda

A largura de banda será limitada se os limites de cota forem excedidos para os pontos de extremidade online gerenciados. Para obter mais informações sobre os limites dos pontos de extremidade online, confira Pontos de extremidade online do Azure Machine Learning e pontos de extremidade em lote no artigo sobre cotas e limites no Azure Machine Learning. Para determinar se as solicitações são limitadas:

  • Monitore a métrica de bytes da rede.
  • Verifique os seguintes campos nos trailers de resposta: ms-azureml-bandwidth-request-delay-ms e ms-azureml-bandwidth-response-delay-ms. Os valores dos campos são os atrasos de limitação da largura de banda, em milissegundos.

Para obter mais informações, confira Problemas de limite de largura de banda.

Métricas no escopo da implantação

Para obter informações sobre as métricas disponíveis no escopo de implantação, confira Métricas com suporte para Microsoft.MachineLearningServices/workspaces/onlineEndpoints/deployments.

Criar painéis e alertas

No Monitor, você pode criar painéis e alertas baseados em métricas.

Criar painéis e visualizar consultas

Você pode criar painéis personalizados para visualizar métricas de várias fontes no portal do Azure, incluindo as métricas do ponto de extremidade online. Para obter mais informações sobre como criar painéis e visualizar consultas, confira Criar e compartilhar painéis de dados do Log Analytics e Criar painéis de KPI personalizados usando o Application Insights.

Criar alertas

Você também pode criar alertas personalizados para receber notificações sobre atualizações de status importantes para seu ponto de extremidade online:

  1. No portal do Azure, vá para uma página de métricas e selecione Nova regra de alerta.

    Captura de tela do portal do Azure que mostra a página Métricas para uma implantação. A nova regra de alerta está realçada.

  2. Na janela Selecionar um sinal, selecione o sinal para o qual deseja criar um alerta e selecione Aplicar.

  3. Na página Criar uma regra de alerta, insira um limite e edite as outras configurações que você quer ajustar. Para obter mais informações sobre as configurações da regra de alerta, confira Configurar as condições da regra de alerta. Em seguida, selecione Avançar: Ações.

    Captura de tela da página Criar uma regra de alerta no portal do Azure. A caixa Limite e as Próximas Ações estão realçadas.

  4. Na janela Selecionar grupos de ações, crie ou selecione um grupo de ações para especificar o que acontece quando o alerta é disparado. Para obter mais informações, confira Configurar os detalhes da regra de alerta.

  5. Selecione Revisar + Criar para concluir a criação do alerta.

Dimensionar automaticamente com base nas métricas

Você pode configurar as implantações para dimensionar automaticamente com base nas métricas. Para ativar o recurso de dimensionamento automático, você pode usar a interface do usuário ou o código.

As opções de código são a CLI do Azure Machine Learning e o SDK do Azure Machine Learning para Python. Ao usar o código, você configurará as condições para disparar o dimensionamento automático fornecendo o nome da API REST das métricas.

Para mais informações, confira dimensionamento automático de pontos de extremidade online no Azure Machine Learning.

Usar logs

Há três logs que você pode ativar para os pontos de extremidade online:

  • AmlOnlineEndpointTrafficLog: esse log de tráfego fornece uma maneira de verificar as informações das solicitações para o ponto de extremidade. Esse log é útil nos seguintes casos:

    • Uma resposta de solicitação não é 200 e você quer mais informações. A coluna ResponseCodeReason no log lista o motivo. Para obter descrições de códigos de status e motivos, confira Códigos de status HTTPS no artigo sobre como solucionar problemas de pontos de extremidade online.
    • Você quer pesquisar o código de resposta e o motivo da resposta do modelo para uma solicitação. As colunas ModelStatusCode e ModelStatusReason fornecem essas informações.
    • Você quer saber a duração de uma solicitação. Os logs fornecem um detalhamento da latência. Esse detalhamento mostra a duração total, a duração da solicitação, a duração da resposta e o atraso causado pela limitação da rede.
    • Você quer verificar o número de solicitações recentes que foram bem-sucedidas e com falha. Os logs fornecem essas informações.
  • AmlOnlineEndpointConsoleLog: esse log contém instruções que os contêineres gravam como saída para o console. Esse log é útil nos seguintes casos:

    • Falha ao iniciar um contêiner. O log do console pode ser útil para depuração.
    • Você quer monitorar o comportamento do contêiner e garantir que todas as solicitações sejam tratadas corretamente.
    • Você quer rastrear uma solicitação do ponto de entrada de rede de um ponto de extremidade online para o contêiner. Você pode usar uma consulta do Log Analytics que une a ID da solicitação com informações dos logs AmlOnlineEndpointConsoleLog e AmlOnlineEndpointTrafficLog.
    • Você deseja executar uma análise de desempenho, por exemplo, para determinar o tempo que o modelo leva para processar cada solicitação.
  • AmlOnlineEndpointEventLog: esse log contém informações de evento sobre o ciclo de vida do contêiner. Atualmente, o log fornece informações sobre os seguintes tipos de eventos:

    Nome Mensagem
    BackOff Retirar a reinicialização do contêiner com falha
    Pull efetuado Imagem de contêiner "<IMAGE_NAME>" já presente no computador
    Encerrando A investigação de atividade com falha no servidor de inferência do contêiner será reiniciada
    Criado Buscador de imagens de contêiner criado
    Criado Servidor de inferência de contêiner criado
    Criado Montagem de modelo de contêiner criado
    LivenessProbeFailed Falha na investigação de atividade: <FAILURE_CONTENT>
    ReadinessProbeFailed Falha na investigação de preparação: <FAILURE_CONTENT>
    Iniciado Buscador de imagens de contêiner iniciado
    Iniciado Servidor de inferência de contêiner iniciado
    Iniciado Montagem de modelo de contêiner iniciado
    Encerrando Servidor de inferência de contêiner interrompido
    Encerrando Montagem de modelo de contêiner interrompido

Ativar logs

Importante

O registro em log usa o recurso Log Analytics do Monitor. Se você não tiver um workspace do Log Analytics no momento, poderá criar um seguindo as etapas em Criar um workspace.

  1. No portal do Azure, acesse o grupo de recursos que contém o ponto de extremidade e selecione o ponto de extremidade.

  2. EmMonitoramento, selecione Configurações de diagnóstico e, em seguida, selecione Adicionar configuração de diagnóstico.

  3. Na janela Configuração de diagnóstico, insira as seguintes informações:

    • Ao lado de Nome da configuração de diagnóstico, insira um nome para sua configuração.
    • Em Logs, selecione as categorias de log que você quer ativar.
    • Em Detalhes de destino, selecione Enviar para o workspace do Log Analytics e selecione a assinatura e o workspace do Log Analytics a ser usado.

    Captura de tela da janela Configuração de diagnóstico. Todos os logs e Enviar para o workspace do Log Analytics estão selecionados. Uma assinatura e um workspace estão visíveis.

  4. Selecione Salvar.

    Importante

    Pode levar até uma hora para que a conexão com o workspace do Log Analytics esteja disponível. Aguarde uma hora antes de continuar com as etapas na próxima seção.

Logs de consulta

  1. Envie solicitações de pontuação para o ponto de extremidade para criar entradas nos logs.

  2. Acesse o portal do Azure. Para abrir os logs, use uma das seguintes opções:

    • Vá para a página de propriedades do ponto de extremidade online. Em Monitoramento, selecione Logs.
    • Acesse o workspace do Log Analytics. À esquerda, selecione Logs.
  3. Feche a janela Hub de consultas que é aberta por padrão.

  4. Em Outros, clique duas vezes em AmlOnlineEndpointConsoleLog. Se você não vir AmlOnlineEndpointConsoleLog, insira esse valor no campo de pesquisa.

    Captura de tela da página Logs do portal do Azure para um ponto de extremidade. AmlOnlineEndpointConsoleLog está realçado na caixa de pesquisa e nos resultados.

  5. Selecione Executar.

    Captura de tela da página Logs do portal do Azure para um ponto de extremidade. A execução está realçada e os resultados da consulta AmlOnlineEndpointConsoleLog estão visíveis.

Consultas de exemplo

As consultas de exemplo estão disponíveis para uso. Para exibir as consultas, execute as seguintes etapas:

  1. Na página Logs, selecione Consultas.

  2. Na caixa de pesquisa, insira Ponto de extremidade online.

    Captura de tela da guia Consultas da página Logs do portal do Azure. Duas consultas de exemplo estão visíveis e a guia Consultas e a caixa de pesquisa estão realçadas.

Detalhes da coluna de log

As tabelas a seguir fornecem informações detalhadas sobre os dados armazenados em cada log:

AmlOnlineEndpointTrafficLog

Propriedade Descrição
Método O método que o cliente solicita.
Caminho O caminho que o cliente solicita.
SubscriptionId A ID da assinatura de machine learning do ponto de extremidade online.
AzureMLWorkspaceId A ID do workspace de machine learning do ponto de extremidade online.
AzureMLWorkspaceName O nome do espaço de trabalho de machine learning do ponto de extremidade online.
EndpointName O nome do ponto de extremidade online.
DeploymentName O nome da implantação online.
Protocolo O protocolo da solicitação.
ResponseCode O código de resposta final que é retornado ao cliente.
ResponseCodeReason O motivo final do código de resposta que é retornado ao cliente.
ModelStatusCode O código de status de resposta do modelo.
ModelStatusReason O motivo do status da resposta do modelo.
RequestPayloadSize O total de bytes recebidos do cliente.
ResponsePayloadSize O total de bytes enviados de volta ao cliente.
UserAgent O cabeçalho usuário-agente da solicitação, incluindo os comentários, mas truncado para um máximo de 70 caracteres.
XRequestId A ID de solicitação gerada pelo Azure Machine Learning para rastreamento interno.
XMSClientRequestId A ID de rastreamento gerada pelo cliente.
TotalDurationMs A duração em milissegundos da hora de início da solicitação até o momento em que o último byte de resposta é enviado de volta ao cliente. Se o cliente se desconectar, a duração será obtida da hora de início para o tempo de desconexão do cliente.
RequestDurationMs A duração em milissegundos da hora de início da solicitação até a hora em que o último byte da solicitação é recebido do cliente.
ResponseDurationMs A duração em milissegundos da hora de início da solicitação até o momento em que o primeiro byte de resposta é lido do modelo.
RequestThrottlingDelayMs O atraso em milissegundos na transferência de dados da solicitação devido à limitação de rede.
ResponseThrottlingDelayMs O atraso em milissegundos na transferência de dados de resposta devido à limitação de rede.

AmlOnlineEndpointConsoleLog

Propriedade Descrição
TimeGenerated O carimbo de data/hora UTC da hora em que o log é gerado
OperationName A operação associada ao registro de log
InstanceId A ID da instância que gera o registro de log
DeploymentName O nome da implantação associada ao registro de log
ContainerName O nome do contêiner onde o log é gerado
Mensagem O conteúdo do log

AmlOnlineEndpointEventLog

Propriedade Descrição
TimeGenerated O carimbo de data/hora UTC da hora em que o log é gerado
OperationName A operação associada ao registro de log
InstanceId A ID da instância que gera o registro de log
DeploymentName O nome da implantação associada ao registro de log
Nome O nome do evento
Mensagem O conteúdo do evento

Usar o Application insights

Os ambientes coletados incluem a integração com o Application Insights. Por meio dessa integração, as métricas internas e os logs são enviados para o Application Insights. Como resultado, você pode usar recursos internos do Application Insights para análise posterior. Os exemplos desses recursos incluem métricas dinâmicas, a pesquisa de transações, a exibição de falhas e a exibição de desempenho.

Para obter mais informações, consulte visão geral do Application Insights.

Você pode ativar a integração com o Application Insights ao criar uma implantação online no estúdio. Na página Implantação, em Diagnóstico do Application Insights, selecione Habilitado.

Captura de tela da página Implantação do estúdio quando um usuário cria um ponto de extremidade online. A configuração de diagnóstico do Application Insights está realçada.

Ao ativar o Application Insights, você pode ver os gráficos de monitoramento de atividades de alto nível para um ponto de extremidade online gerenciado. No estúdio, vá para a página do ponto de extremidade e selecione a guia Monitoramento.

Captura de tela da guia Monitoramento em uma página do ponto de extremidade do estúdio. A guia Monitoramento está realçada. Um gráfico mostra as solicitações por minuto para o ponto de extremidade.