Sobre a detecção de anomalias

Esta página se aplica à Apigee e à Apigee híbrida.

Confira a documentação da Apigee Edge.

O que é uma anomalia?

Uma anomalia é um padrão de dados de API incomum ou inesperado. Por exemplo, veja o gráfico da taxa de erros da API abaixo:

Gráfico de uma anomalia na taxa de erros.

Como você pode ver, a taxa de erro aumenta repentinamente em torno das 7h. Em comparação com os dados que levam a esse momento, esse aumento não é comum o suficiente para ser classificado como uma anomalia.

No entanto, nem todas as variações dos dados da API representam anomalias: a maioria deles são apenas flutuações aleatórias. Por exemplo, é possível ver algumas variações relativamente pequenas na taxa de erros que levam à anomalia, mas elas não são significativas o suficiente para serem chamadas de uma anomalia verdadeira.

Anomalias em comparação com variações de dados aleatórias.

As operações da API monitoram continuamente os dados da API e realizam análises estatísticas para diferenciar anomalias reais de flutuações aleatórias nos dados.

Sem a detecção de anomalias, você precisa escolher um limite para detectar cada anomalia. (Um limite é um valor que uma quantidade, como uma taxa de erro, precisa atingir para acionar uma anomalia.) Também é necessário manter os valores dos limites atualizados, com base nos dados mais recentes. Por outro lado, as operações da API escolhem os melhores limites de anomalias para você, com base nos padrões de dados recentes.

Quando a API detecta uma anomalia como a mostrada acima, ela exibe os detalhes da anomalia no Painel de eventos de anomalias. Neste ponto, é possível investigar a anomalia nos painéis da API Monitoring e tomar as medidas adequadas se necessário. Também é possível criar um alerta para notificar você caso eventos semelhantes ocorram no futuro.

Uma anomalia detectada inclui as seguintes informações:

  • A métrica que causou a anomalia, como a latência de proxy ou um código de erro HTTP.
  • A gravidade da anomalia. A gravidade pode ser leve, moderada ou grave, com base no nível de confiança no modelo. Um nível de confiança baixo indica que a gravidade é leve, enquanto um alto nível de confiança indica que ela é grave.

Tipos de anomalia

A Apigee detecta automaticamente os seguintes tipos de anomalias:

  • Aumento nos erros HTTP 503 para organização, ambiente e região
  • Aumento nos erros HTTP 504 no nível da organização, do ambiente e da região
  • Aumento de todos os erros HTTP 4xx ou 5xx nos níveis de organização, ambiente e região
  • Aumento da latência total da resposta para o 90o percentil (p90) no nível da organização, do ambiente e da região

Como funciona a detecção de anomalias

A detecção de anomalias envolve as seguintes etapas:

Treinar modelos

A detecção de anomalias funciona com o treinamento de um modelo do comportamento dos proxies de API com base em dados históricos de séries temporais. Nenhuma ação é necessária de sua parte para treinar o modelo. A Apigee cria e treina modelos automaticamente para você com base nas seis horas anteriores de dados da API. Portanto, a Apigee requer no mínimo seis horas de dados em um proxy de API para treinar o modelo antes de registrar uma anomalia.

O objetivo do treinamento é melhorar a precisão do modelo, que pode ser testada em dados históricos. A maneira mais simples de testar a precisão de um modelo é calcular a taxa de erros, que é a soma dos falsos positivos e falsos negativos, dividida pelo número total de eventos previstos.

Registrar eventos de anomalias

No ambiente de execução, a detecção de anomalias da Apigee compara o comportamento atual dos seus proxies de API com o comportamento previsto pelo modelo. A detecção de anomalias pode determinar, com um limite de confiança específico, quando uma métrica operacional está excedendo o valor previsto. Por exemplo, quando a taxa de erros 5xx excede a taxa prevista pelo modelo.

Quando a Apigee detecta uma anomalia, ela registra automaticamente o evento no Painel de eventos de anomalias. A lista de eventos exibidos no painel inclui todas as anomalias detectadas, além de alertas acionados.