Visão geral da API Analytics

Você está vendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
informações

Neste tópico, apresentamos as Análises da API Edge.

Vídeo : assista um vídeo curto com uma visão geral dos serviços de análise da API Edge.

Melhore sua API com análises

O Edge API Analytics coleta e calcula uma variedade de informações que fluem por proxies de API. É possível conferir esses dados em gráficos na interface do Edge ou fazer o download dos dados brutos para análise off-line usando as APIs de gerenciamento do Edge.

O Analytics ajuda você a responder a perguntas comuns, como as mostradas a seguir:

  • Qual é a tendência do tráfego da API ao longo do tempo?
  • Quais métodos de API são mais conhecidos?
  • Quem são meus principais desenvolvedores?
  • Quando o tempo de resposta da API é mais rápido? Mais lento?
  • Geograficamente, onde estou vendo a maior parte do tráfego de APIs?

As respostas a perguntas como essas ajudam a melhorar as APIs, resolver problemas e tomar decisões de negócios melhores relacionadas ao programa da API.

A APIs Analytics ajuda todos a melhorar

Em um processo contínuo de coleta, análise e visualização de dados, o Edge API Analytics ajuda sua equipe de API a melhorar as APIs e ajuda os desenvolvedores a melhorar os apps:

alt_text
  • Equipe de API: usa os sistemas internos para criar APIs interessantes. Essa equipe quer saber como está o desempenho do programa e das APIs individuais. Além disso, eles têm interesse em melhorar as APIs.
  • Desenvolvedores de aplicativos: ao compartilhar informações de análise com esses desenvolvedores, você recebe aplicativos melhores. Eles estão inovando com sua API e gerando apps criativos que ajudam a gerar receita para sua empresa. Com o Analytics, os desenvolvedores sabem o desempenho dos apps e quanto estão contribuindo para os resultados da sua empresa. Os desenvolvedores querem saber como eles podem melhorar seus aplicativos.
  • Equipe de operações: essa equipe quer entender os padrões de tráfego e prever quando adicionar recursos de back-end ou fazer outros ajustes importantes.
  • Proprietário da empresa: o proprietário quer ver se o investimento na API é válido e onde investir o dinheiro no futuro.

Quais tipos de dados são coletados e analisados?

O Edge API Analytics coleta e analisa um amplo espectro de dados que fluem por proxies de API, como:

  • Tempo de resposta
  • Latência da solicitação
  • Tamanho da solicitação
  • Erros de destino
  • Nome do produto da API
  • Endereço de e-mail do desenvolvedor
  • Nome do app
  • Muitos outros

Para ver uma lista completa dos dados coletados pelo API Analytics, consulte Referência de métricas, dimensões e filtros do Analytics.

Como faço para coletar dados de análise personalizados?

O Edge coleta nativamente uma grande quantidade de dados. Também é possível coletar dados de análise personalizados específicos para seus proxies, apps, produtos ou desenvolvedores de API. Por exemplo, pode ser útil coletar dados de análise com base parâmetros de consulta e solicitações de cabeçalhos, corpos ou gerais, ou variáveis definidas em suas APIs.

Você coleta dados de análise personalizados usando a política Statisticscollector. Depois que os dados personalizados forem extraídos, use a IU ou a API de análise para examinar os dados. Consulte Analisar o conteúdo das mensagens da API usando análises personalizadas para ver um exemplo completo que demonstra como coletar dados de análises personalizadas.

Diferenças entre os dados do Analytics e do Monitoramento de API

Nesta seção, descrevemos algumas pequenas diferenças entre os dados coletados pelo Edge Analytics e pelo monitoramento da API. Como o monitoramento e a análise de APIs usam pipelines de dados diferentes, pode haver pequenas diferenças entre os relatórios personalizados gerados pelo Monitoring e os gerados pelo Analytics. Por exemplo, você pode ver discrepâncias nos resultados informados de erros de tempo limite, tanto de tempo limite de back-end (código de status HTTP 504 na solicitação) quanto de clientes (código de status HTTP 499). Eles podem aparecer com o código de status 200 nos relatórios personalizados do Analytics, mas com o código de status 504 ou 499 nos relatórios personalizados do Monitoring.

Quando e por quanto tempo meus dados de análise estarão disponíveis?

Há dois intervalos de tempo que controlam quando e por quanto tempo é possível visualizar seus dados de análise:

  • Intervalo de atraso de dados: depois de uma chamada ser feita para um proxy de API, pode levar até 10 minutos para que os dados fiquem acessíveis para exibição ou por chamadas de API de gerenciamento.
  • Retenção de dados: o período em que os dados de análise são retidos pelo Edge diferem por plano. Dependendo do seu plano, os dados do Analytics podem ficar disponíveis por 30, 60, 90 ou 365 dias.

Como faço para acessar meus dados de análise?

O Edge API Analytics oferece ferramentas de visualização de dados integradas à interface do Edge. Essas ferramentas incluem painéis de análise predefinidos e relatórios personalizados que exibem dados em gráficos e permitem que você analise os dados agrupados em diferentes dimensões de forma detalhada, por exemplo, proxy de API, endereço IP ou código de status HTTP.

Também é possível fazer o download de dados de análise usando a API Edge Management. Depois de fazer o download, é possível importar esses dados para suas próprias ferramentas de visualização ou sistema de análise.

Painéis de análise

A interface do Edge oferece um conjunto de painéis predefinidos que podem ser usados para mostrar dados de análise. Por exemplo, as imagens a seguir mostram o painel de desempenho do proxy:

Esse painel inclui os seguintes gráficos:

  • Tráfego total: o número total de solicitações de API recebidas pelo Edge para um ambiente de API em uma organização.
  • Sucesso do tráfego: o número total de solicitações que resultaram em uma resposta bem-sucedida. As respostas de erro não são contabilizadas.
  • Erros de tráfego: o número total de todas as solicitações da API que não foram bem-sucedidas, ou seja, a solicitação não fornece uma resposta. A contagem inclui erros de proxy (lado da Apigee) e erros de destino (os serviços de back-end).
  • TPS médio: é o número médio de solicitações de API e respostas resultantes por segundo.

Veja outros painéis predefinidos:

Para mais informações sobre esses painéis predefinidos, consulte Como usar os painéis de análise.

Relatórios personalizados

Com os relatórios personalizados, é possível visualizar detalhes de métricas específicas da API e os dados exatos que desejar. É possível criar um relatório personalizado usando qualquer um dos dados de análise integrados ao Edge ou dados de análise personalizados coletados pela política Statistics Collector.

Ao criar um relatório personalizado, você seleciona os dados que quer ver (métricas), agrupando os dados de formas significativas (dimensões) e, se quiser, limitando os dados retornados com base em características específicas (filtro).

Também é possível definir o tipo de gráfico exibido no relatório personalizado como uma coluna ou gráfico de linhas. As imagens a seguir mostram exemplos de gráficos para transações por segundo agrupadas pelo proxy da API:

  • Coluna: cada proxy de API é representado por uma coluna diferente:

    Gráfico de colunas personalizado

  • Linha: cada proxy de API é representado por uma linha diferente:

    Gráfico de linhas personalizado

Para saber mais, consulte Criar e gerenciar relatórios personalizados.

Analytics API

Use a API Edge Management para fazer o download dos dados de análise. Por exemplo, é possível usar a API para criar suas próprias ferramentas de visualização que podem ser incorporadas em portais ou aplicativos personalizados.

Veja um exemplo de chamada de API para recuperar dados de análise para proxies da API:

curl  https://api.enterprise.apigee.com/v1/o/org_name/environments/test/stats/apiproxy?"select=sum(message_count)&timeRange=6/24/2018%2000:00~6/24/2018%2023:59&timeUnit=hour" \
-u email:password

O resultado da chamada é este:

  • Ela retorna a soma das solicitações (contagem de mensagens) por proxy de API.
  • Isso é feito por um período de 24 horas
  • O agrupamento é feito por hora.

O parâmetro de consulta timeRange especifica o período no formato:

?timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM

Observe o %20 antes de HH:MM. O parâmetro timeRange requer um caractere de espaço codificado por URL antes de HH:MM, ou um caractere +, como em: MM/DD/YYYY+HH:MM~MM/DD/YYYY+HH:MM.

Para mais informações, consulte Usar as APIs de métricas para medir o desempenho do programa de APIs.

Exportar dados de análise para o Google Cloud

É possível usar a API de gerenciamento do Edge para exportar todos os dados de análise de um dia inteiro do Edge para seu próprio repositório de dados, como o Google Cloud Storage ou o BigQuery. Em seguida, aproveite os recursos avançados de consulta e machine learning oferecidos pelo Google Cloud BigQuery e pelo TensorFlow para realizar sua própria análise de dados.

Para mais detalhes, consulte Exportar dados de análise.

Como posso compartilhar dados com desenvolvedores de apps?

Ao pensar nos desenvolvedores de aplicativos como clientes, certifique-se de que eles têm as ferramentas e as informações disponíveis para aproveitar ao máximo sua API.

alt_text

Os desenvolvedores não estão apenas preocupados com a qualidade dos aplicativos, eles também estão interessados nas APIs. Os portais do desenvolvedor baseados em Drupal incluem uma página opcional de desempenho do app, criada para dar aos desenvolvedores acesso a métricas importantes dos aplicativos. Esta página fornece aos desenvolvedores informações sobre os seguintes tópicos:

  • Erros:quais erros de API meu app está encontrando?
  • Desempenho: a API está lenta no momento? Quais métodos de API costumam ser lentos ou estão lentos no momento?
  • Disponibilidade:a API está ativa ou inativa no momento?
  • Cota: a API tem uma cota? Como desenvolvedor do aplicativo, como estou na cota?

Para mais informações, consulte:

Além disso, é possível compartilhar análises com seus desenvolvedores das seguintes formas:

Como gerar dados de análise completos?

O que significa análise completa? Por exemplo, é possível criar um proxy de API para que o Edge colete dados de análise sobre esse proxy. Mas e as métricas para o desenvolvedor ou o aplicativo que chamaram o proxy da API? Se o Edge não souber quem fez uma chamada de API, ele não poderá coletar esses dados.

Algumas etapas são necessárias para permitir que o Edge descubra quais desenvolvedores e apps de desenvolvedor estão chamando seus proxies de API. Veja uma lista dessas etapas com links para informações mais detalhadas:

  1. Crie um ou mais produtos de API, que são um agrupamento de proxies de API com um plano de serviço. Consulte Gerenciar produtos de API.
  2. Registre desenvolvedores de apps no Edge. Consulte Registrar desenvolvedores de apps.
  3. Registre apps e gere chaves de API para seus desenvolvedores. Consulte Registrar apps e gerenciar chaves de API.
  4. Adicione políticas de segurança aos seus proxies de API que verificam as chaves de API e/ou os tokens de segurança. Consulte os seguintes tópicos: Política Verify API Key, Política de OAuthV2 e Política Verify JWT.
  5. Se você estiver usando o Edge Microgateway, verifique se ativou o plug-in de análise (que é ativado por padrão). Se o plug-in de análise estiver desativado, o Edge Microgateway não vai enviar dados de análise para o Edge.

Os seguintes tutoriais orientam você nas etapas necessárias que permitem ver as análises para desenvolvedores e aplicativos: Proteger uma API exigindo chaves de API e Proteger uma API com OAuth.

Comparação entre as APIs Analytics e Monitoring

É possível aproveitar o Monitoramento de APIs e a Análise de APIs do Edge. O API Monitoring examina os dados de análise para fornecer insights contextuais em tempo real sobre o desempenho da API, permitindo diagnosticar rapidamente problemas e facilitar ações corretivas para a continuidade dos negócios. O monitoramento de APIs foi projetado para encontrar rapidamente pontos problemáticos em APIs e back-ends. As análises de APIs foram projetadas para capturar uma ampla variedade de dados de análise para uso de várias equipes diferentes, mas os dados geralmente são usados para análise em cenários que não são em tempo real.

Uma das principais diferenças entre o monitoramento e a análise de APIs é o mecanismo de alerta integrado ao monitoramento de APIs. Com os alertas, você especifica um código de status HTTP (2xx/4xx/5xx), a latência ou o limite de código de falha que, quando excedido, aciona uma notificação de alerta para sua equipe de operações. As notificações de alerta podem ser enviadas por vários canais, como e-mail, Slack, pagers ou webhooks, o que permite responder a problemas imediatamente.

Consulte Comparar o monitoramento da API com a análise da API Edge para uma comparação mais detalhada entre esses serviços.

Mais informações