Visão geral da API Analytics

Você está vendo a documentação do Apigee Edge.
Consulte a documentação do Apigee X.

Neste tópico, apresentamos o Edge API Analytics.

Vídeo : assista a um vídeo curto para ter uma visão geral dos serviços da API Edge Edge.

Melhore sua API com análises

A API Edge Edge coleta e calcula várias informações que fluem pelos proxies de API. É possível visualizar esses dados com gráficos na IU 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

Por meio de 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 os desenvolvedores de aplicativos:

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?

A API Edge Edge coleta e analisa um amplo espectro de dados que fluem pelos 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 são extraídos, você pode usar a IU ou a API do Google Analytics 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 Google Analytics e os dados do Monitoring da API

Nesta seção, descrevemos algumas pequenas diferenças entre os dados coletados pelo Edge Analytics e o monitoramento de API. Como a API Monitoring e o Analytics usam canais de dados diferentes, é possível que haja 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 relatados para erros de tempo limite: tempos limite de back-end (código de status HTTP 504 na solicitação) e tempos limite do cliente (código de status HTTP 499). Eles podem aparecer com o código de status 200 nos relatórios personalizados do Google Analytics, mas serão exibidos 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 que uma chamada é feita para um proxy de API, pode levar até 10 minutos para que os dados fiquem acessíveis para exibição ou 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?

A API Edge Analytics fornece ferramentas de visualização de dados incorporadas à IU 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.

Além disso, você pode fazer o download dos 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 IU do Edge oferece um conjunto de painéis predefinidos que você pode usar para visualizar 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 incorporados no Edge ou os dados de análise personalizados coletados pela política StatisticsCollector.

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 de 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 avaliar o desempenho do programa de API.

Exportar dados de análise para o Google Cloud

Use 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 informações, consulte Exportar dados do Google Analytics.

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 aplicativo está vendo?
  • 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? Você pode, por exemplo, criar um proxy de API e o Edge coletará 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 aplicativos de desenvolvedores 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 da API.
  2. Registre desenvolvedores de aplicativos com o 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 está ativado por padrão. Se o plug-in de análise estiver desativado, o Edge Microgateway não enviará dados de análise para o Edge Analytics.

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

Você pode aproveitar o Monitoramento de API e o Analytics da API Edge. O monitoramento de APIs examina dados de análise para fornecer insights contextuais em tempo real sobre o desempenho da API, permitindo que você identifique problemas rapidamente e facilite ações corretivas para a continuidade dos negócios. O monitoramento de APIs foi projetado para encontrar rapidamente pontos problemáticos nas suas APIs e back-ends. As APIs Analytics foram projetadas para capturar uma ampla variedade de dados de análise para uso por várias equipes diferentes, mas os dados normalmente são usados para análise em cenários não em tempo real.

Uma das principais diferenças entre o monitoramento de APIs e o Analytics é o mecanismo de alerta integrado a eles. Com os alertas, você especifica um código de status HTTP (2xx/4xx/5xx), uma latência ou um 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 meio de vários canais, como e-mail, Slack, pagers ou webhooks, permitindo que você responda a problemas imediatamente.

Consulte Comparar o monitoramento de APIs com o Edge API Analytics para uma comparação mais detalhada entre esses serviços.

Mais informações