Você está visualizando a documentação do Apigee Edge.
Acesse a
documentação da
Apigee X. info
Com os relatórios personalizados, é possível detalhar as métricas específicas da API e conferir os dados exatos que você quer. Nos painéis de monitoramento da API, é possível criar um relatório personalizado com o filtro e as métricas predefinidos com base nas condições configuradas no momento da criação. Além disso, um conjunto de dimensões e métricas padrão é configurado no relatório para você.
Criar um relatório personalizado com base no seu contexto
Crie rapidamente relatórios personalizados com base no seu contexto, conforme resumido na tabela a seguir. Na página Relatórios personalizados, os relatórios personalizados criados usando o monitoramento de API têm nomes exclusivos (por padrão), conforme indicado na tabela. É possível mudar o nome ao editar o relatório.
Contexto do relatório personalizado | Convenção de nomenclatura padrão para relatórios personalizados |
---|---|
Painel recente | API Monitoring Recent Generated |
Painel da linha do tempo | API Monitoring Timeline Generated |
Painel de investigação | API Monitoring Investigate Generated |
Condição de alerta | API Monitoring Generated: alert-name |
Dimensão e métricas padrão
O relatório personalizado vai incluir as dimensões e métricas listadas na tabela a seguir para todos os relatórios gerados pelo monitoramento de API, por padrão.
Componente | Padrões |
---|---|
Dimensões | URI de solicitação |
Métricas |
|
Editar o relatório personalizado
Como mencionado na seção anterior, um conjunto predefinido de dimensões e métricas padrão do monitoramento da API é pré-configurado nos relatórios personalizados. Depois de criar o relatório personalizado, você pode editá-lo para adicionar ou excluir métricas e dimensões, conforme necessário. Por exemplo, você pode limitar a investigação a um determinado token de acesso, app do desenvolvedor, proxy de API ou ID de solicitação.
No relatório personalizado a seguir, você adiciona a dimensão predefinida Gateway Flow ID
, em que Gateway Flow ID
contém o UUID exclusivo de cada solicitação de API feita para o Edge.
O relatório já usa a dimensão Request URI
:
O exemplo a seguir adiciona a dimensão Client ID
ao relatório personalizado.
A dimensão Client ID
contém a chave do consumidor (chave de API) do desenvolvedor
que faz a chamada de API, transmitida na solicitação como uma chave de API ou incluída em um token OAuth:
O relatório personalizado contém informações para todos os valores de Client ID
.
O exemplo a seguir adiciona um filtro para que você possa criar um relatório personalizado para um Client ID
específico:
Para mais informações sobre todas as dimensões e métricas predefinidas que podem ser adicionadas a um relatório, consulte a Referência de métricas, dimensões e filtros do Google Analytics.
No próximo exemplo, você adiciona um filtro a um relatório personalizado que captura as métricas e dimensões padrão para o código de falha policies.ratelimit.QuotaViolation
e os códigos de status 5xx:
Para saber como editar um relatório personalizado, consulte Gerenciar relatórios personalizados.
Exemplo: usar relatórios personalizados para diagnosticar problemas de implantação
Anexe a política StatisticsCollector aos proxies de API para coletar dados de análise personalizados, como ID do usuário ou produto, preço, ação REST, versão de destino, URL de destino e tamanho da mensagem. Os dados podem ter origem em variáveis de fluxo predefinidas pela Apigee, cabeçalhos de solicitação, parâmetros de consulta ou variáveis personalizadas que você define.
Por exemplo, as solicitações para o proxy de API incluem cabeçalhos para o ID do produto, o ID do usuário e a versão do servidor de destino. Essa solicitação pode ser feita da seguinte forma:
curl -H "prodid:123456" -H "userid:98765" -H "targetversion:beta" http://myapi.com/myapi
Em seguida, use as informações nos cabeçalhos para ajudar a diagnosticar problemas de execução com o proxy da API.
Para criar um relatório personalizado para esses cabeçalhos:
Adicione a política StatisticsCollector à sua API para capturar o valor dos cabeçalhos personalizados:
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="prodid" ref="request.header.prodid" type="integer">0</Statistic> <Statistic name="userid" ref="request.header.userid" type="integer">0</Statistic> <Statistic name="targetversion" ref="request.header.targetversion" type="string">alpha</Statistic> </Statistics> </StatisticsCollector>
Implante o proxy e aguarde o acesso.
Clique em Analisar > Monitoramento de API > Recentes na interface do Edge para conferir os problemas com a API. Você está recebendo erros 4xx e 5xx para o proxy myapi:
Selecione a linha de proxy myapi para conferir mais detalhes no painel à direita do painel "Recentes".
No painel direito do painel "Recente", selecione > View in Investigate para acessar o painel "Investigate":
Filtre o painel de investigação pelo proxy myapi e confira o código de status no gráfico superior. Você recebe erros 403 e 501:
Na interface do Edge, selecione Análise > Relatórios personalizados > Relatórios para criar um relatório personalizado que inclua os valores dessas métricas personalizadas como uma dimensão.
Selecione + Relatório personalizado para criar um relatório personalizado chamado myapi_errors.
Selecione Erros de proxy como métrica e defina a Função de agregação como Soma. Você pode adicionar mais métricas, se quiser.
Selecione a dimensão predefinida Código de status da resposta e adicione as três estatísticas personalizadas prodid, targetersion e userid a Dimensões:
Defina o filtro para incluir apenas dados do proxy da API myapi
(apiproxy eq 'myapi')
:Salve o relatório.
Gerar o relatório das 24 horas anteriores. Quando o relatório é aberto pela primeira vez, um gráfico de erros HTTP 403 e 501 é exibido:
Em Resumo, clique em 403 ou 510 para saber qual produto está gerando os erros. Por exemplo, você seleciona 403:
Clique em um ID do produto em Resumo para conferir os erros por versão de destino (Alfa ou Beta):
Clique em uma versão de destino em Resumo para conferir os erros por usuário: