Tutorial: Monitorar APIs publicadas
APLICA-SE A: todas as camadas do Gerenciamento de API
Com o Azure Monitor, é possível visualizar, consultar, rotear, arquivar e realizar ações nas métricas ou nos logs do serviço de Gerenciamento de API do Azure.
Observação
Atualmente, esse recurso não está disponível em workspaces.
Neste tutorial, você aprenderá a:
- Exibir métricas da API
- Configurar uma regra de alerta
- Exibir logs de atividade
- Habilitar e ver logs de recursos
Observação
O Gerenciamento de API dá suporte a uma variedade de ferramentas adicionais para observar APIs, incluindo análise interna e integração com o Application Insights. Saiba mais
Pré-requisitos
- Conheça a terminologia do Gerenciamento de API do Azure.
- Conclua o seguinte guia de início rápido: Criar uma instância do Gerenciamento de API do Azure.
- Além disso, conclua o seguinte tutorial: Importar e publicar sua primeira API.
Exibir métricas das APIs
O Gerenciamento de API emite métricas a cada minuto. Assim você vê quase em tempo real o estado e a integridade das suas APIs. Veja abaixo as métricas usadas com mais frequência. Para ver uma lista de todas as métricas disponíveis, confira Métricas compatíveis.
Capacidade – Ajuda a tomar decisões relacionadas a upgrade/downgrade do serviços do Gerenciamento de API. A métrica é emitida por minuto e reflete a capacidade estimada do gateway no momento da emissão dos relatórios. A métrica varia de 0 a 100 e é calculada com base em recursos do gateway, como utilização da CPU e da memória e outros fatores.
Dica
Nos níveis de serviço v2, o Gerenciamento de API substituiu a métrica de capacidade por métricas separadas de utilização de CPU e memória. Essas métricas também podem ser usadas para decisões de dimensionamento e solução de problemas. Saiba mais
Solicitações: ajuda você a analisar o tráfego de API que passa pelos serviços do Gerenciamento de API. A métrica é emitida por minuto e relata o número de solicitações de gateway com dimensões. Filtre solicitações por códigos de resposta, localização, nome do host e erros.
Importante
As seguintes métricas foram desativadas: Total de Solicitações de Gateway, Solicitações de Gateway Bem-Sucedidas, Solicitações de Gateway Não Autorizadas, Solicitações de Gateway Com Falha, Outras Solicitações de Gateway. Migre para a métrica de solicitações, que fornece funcionalidade equivalente.
Para acessar as métricas:
No portal do Azure, navegue até a instância do Gerenciamento de API. Na página Visão geral, na guia Monitorar, analise as principais métricas das APIs.
Para investigar as métricas em detalhes, selecione Métricas no menu à esquerda.
Na lista suspensa, selecione as métricas em que você está interessado. Por exemplo, Solicitações.
O gráfico mostra o número total de chamadas à API. Ajuste o intervalo de tempo para se concentrar nos períodos de interesse.
O gráfico pode ser filtrado usando as dimensões da métrica Solicitações. Por exemplo, selecione Adicionar filtro, selecione Categoria de Código de Resposta do Back-end e insira
500
como valor. O gráfico mostra o número de solicitações que falharam no back-end da API.
Configurar uma regra de alerta
É possível receber alertas com base em métricas e logs de atividades. No Azure Monitor, configure uma regra de alerta para executar uma ação quando ela for disparada. As ações comuns incluem:
- Enviar uma notificação por email
- Chamar um webhook
- Invocar um aplicativo lógico do Azure
Para configurar um exemplo de regra de alerta com base em uma métrica de solicitação:
No portal do Azure, navegue até a instância do Gerenciamento de API.
Selecione Alertas no menu à esquerda.
Clique em + Criar>Regra de Alerta.
Na janela Selecionar um sinal na guia Condição:
- Em Tipo de sinal, selecione Métricas.
- Em Nome do sinal, selecione Solicitações.
- Em Lógica de alerta, especifique um Valor limite que é o número de ocorrências após o qual o alerta deve ser disparado.
- Em Dividir por dimensões, em Nome da dimensão, selecione Categoria de Código de Resposta do Gateway.
- Em Valores de dimensão, selecione 4xx para erros de cliente, como solicitações não autorizadas ou inválidas. Se o valor da dimensão não aparecer, selecione Adicionar valor personalizado e insira 4xx.
- Em Quando avaliar, aceite as configurações padrão ou selecione outras configurações para definir a frequência com que a regra é executada. Selecione Avançar.
Na guia Ações, selecione ou crie um ou mais grupos de ações para notificar os usuários sobre o alerta e executar uma ação. Por exemplo, crie um grupo de ações para enviar um email de notificação a
admin@contoso.com
. Para obter as etapas detalhadas, confira Criar e gerenciar grupos de ações no portal do Azure.Na guia Detalhes de Criar uma regra de alerta, insira um nome e uma descrição da regra de alerta e selecione o nível de severidade.
Opcionalmente, defina as configurações restantes. Na guia Examinar + criar, selecione Criar.
Agora, teste a regra de alerta chamando a API de Conferência sem uma chave de API. Por exemplo:
curl GET https://apim-hello-world.azure-api.net/conference/speakers HTTP/1.1
Um alerta será disparado com base no período de avaliação e ele enviará um email para admin@contoso.com.
Os alertas também aparecem na página Alertas da instância do Gerenciamento de API.
Logs de atividades
Os logs de atividades fornecem insights sobre as operações que foram realizadas em seus serviços de Gerenciamento de API. Usando logs de atividades, é possível determinar “o que, quem e quando” para quaisquer operações de gravação (PUT, POST, DELETE) realizadas em seus serviços de Gerenciamento de API.
Observação
Os logs de atividades não incluem operações de leitura (GET) ou operações realizadas no portal do Azure ou usando as APIs de gerenciamento original.
É possível acessar os logs de atividades em seu serviço de Gerenciamento de API ou acessar logs de todos os seus recursos do Azure no Azure Monitor.
Para ver o log de atividades:
No portal do Azure, navegue até a instância do Gerenciamento de API.
Selecione Log de atividades.
Selecione o escopo de filtragem desejado e clique em Aplicar.
Logs de recursos
Os logs de recursos (logs do Azure Monitor) fornecem informações avançadas sobre as operações e os erros do Gerenciamento de API, que são importantes para fins de auditoria e solução de problemas. Quando habilitados por meio de uma configuração de diagnóstico, os logs coletam informações sobre as solicitações de API que são recebidas e processadas pelo gateway do Gerenciamento de API.
Observação
A camada de Consumo não tem suporte para a coleta de logs de recursos.
Para configurar os logs de recursos:
No portal do Azure, navegue até a instância do Gerenciamento de API.
Selecione Configurações de diagnóstico.
Selecione + Adicionar configuração de diagnóstico.
Selecione os logs ou as métricas que você deseja coletar.
Você tem várias opções de destino para os logs e as métricas. Por exemplo, é possível arquivar os logs de recursos junto com as métricas em uma conta de armazenamento, transmiti-los para um Hub de Eventos ou enviá-los para o workspace do Log Analytics.
Dica
Se você selecionar um workspace do Log Analytics, poderá optar por armazenar os dados na tabela ou no repositório ApiManagementGatewayLogs específico do recurso na tabela geral do AzureDiagnostics. É recomendável usar a tabela específica do recurso para destinos de log que dão suporte a ela. Saiba mais
Depois de configurar os detalhes do destino ou dos destinos do log, selecione Salvar.
Observação
Adicionar um objeto de configuração de diagnóstico poderá resultar em falha se a propriedade da MinApiVersion do seu serviço de Gerenciamento de API estiver definida como uma versão da API superior à 2022-09-01-preview.
Para saber mais, confira Criar configurações de diagnóstico para enviar logs e métricas de plataforma para destinos diferentes.
Ver dados de diagnóstico no Azure Monitor
Se você habilitar a coleta de logs ou métricas em um workspace do Log Analytics, poderá levar alguns minutos para que os dados apareçam no Azure Monitor.
Para ver os dados:
No portal do Azure, navegue até a instância do Gerenciamento de API.
Selecione Logs no menu à esquerda.
Execute consultas para ver os dados. Existem várias consultas de exemplo. Você também pode executar as suas. Por exemplo, a seguinte consulta recupera as 24 horas mais recentes de dados da tabela ApiManagementGatewayLogs:
ApiManagementGatewayLogs | where TimeGenerated > ago(1d)
Para saber mais sobre como usar logs de recursos do Gerenciamento de API, confira:
Tutorial do Log Analytics ou experimente o ambiente de demonstração do Log Analytics.
Referência de esquema do log de recursos do Gerenciamento de API.
Modificar as configurações de registro em log da API
Por padrão, quando você cria uma configuração de diagnóstico para habilitar a coleta de logs de recursos, o registro em log é habilitado para todas as APIs, com configurações padrão. Você pode ajustar as configurações de registro em log de todas as APIs ou substituí-las em APIs individuais. Por exemplo, ajuste a taxa de amostragem ou a verbosidade dos dados, habilite o registro em log de cabeçalhos ou conteúdos de solicitação ou resposta ou desabilite o registro em log para algumas APIs.
Para obter detalhes sobre as configurações de log, confira Referência de configurações dos logs de diagnóstico.
Para definir as configurações de log de todas as APIs:
- No menu à esquerda da instância de Gerenciamento de API, selecione APIs>Todas as APIs.
- Acesse a guia Configurações na barra superior.
- Role para baixo até a seção Logs de Diagnóstico e selecione a guia Azure Monitor.
- Examine as configurações e faça alterações, se necessário. Clique em Salvar.
Para definir as configurações de log de uma API específica:
- No menu à esquerda da instância de Gerenciamento de API, selecione APIs e depois o nome da API.
- Acesse a guia Configurações na barra superior.
- Role para baixo até a seção Logs de Diagnóstico e selecione a guia Azure Monitor.
- Examine as configurações e faça alterações, se necessário. Selecione Salvar.
Importante
Se habilitado, os conteúdos de solicitação ou resposta registrados podem ter até 8.192 bytes. O Gerenciamento de API também impõe um limite de 32 KB para uma entrada de log de diagnóstico enviada ao Azure Monitor, que inclui os conteúdos e outros atributos, como códigos de status, cabeçalhos e carimbos de data/hora. Se o tamanho combinado dos atributos exceder 32 KB, o Gerenciamento de API cortará a entrada removendo todo o corpo e o conteúdo do rastreamento.
Próximas etapas
Neste tutorial, você aprendeu a:
- Exibir métricas da API
- Configurar uma regra de alerta
- Exibir logs de atividade
- Habilitar e ver logs de recursos
Prosseguir para o próximo tutorial: