Esta página descreve como usar as métricas de API para monitorizar e compreender a sua utilização das APIs Google e das APIs Google Cloud.
As APIs Google produzem métricas de utilização detalhadas que podem ajudar a:
- Monitorize e compreenda a sua utilização das APIs Google.
- Monitorize o desempenho das suas aplicações e APIs Google.
- Descubra problemas entre as suas aplicações e as APIs Google.
Pode acelerar drasticamente os tempos de resolução quando resolve problemas ou precisa de apoio técnico da Google.
As métricas produzidas pelas APIs Google são os sinais padrão que os engenheiros de fiabilidade de sites da Google usam para avaliar o estado de funcionamento de um serviço. Estas métricas abrangem as contagens de pedidos, as taxas de erro, as latências totais, as latências de back-end, os tamanhos dos pedidos e os tamanhos das respostas. Para as definições de métricas da API, consulte a documentação do Cloud Monitoring.
Pode ver as métricas da API em dois locais: Painel de controlo da API e Cloud Monitoring. As métricas que vê são específicas do seu projeto e não refletem o estado geral do serviço.
Usar o painel de controlo da API
A forma mais simples de ver as métricas da API é usar o Painel de controlo da API da consola do Google Cloud. Pode ver uma vista geral de toda a sua utilização da API ou pode analisar em detalhe a sua utilização de uma API específica.
Para ver uma vista geral da utilização da API:
Visite a secção APIs e serviços da Cloud Console. O painel de controlo principal da API é apresentado por predefinição. Nesta página, pode ver todas as APIs que tem atualmente ativadas para o seu projeto, bem como gráficos de vista geral para as seguintes métricas:
- Tráfego: o número de pedidos por segundo feitos pelo seu projeto ou sobre o mesmo às APIs ativadas
- Erros: a percentagem de pedidos para APIs ativadas que resultaram em erros
- Latência mediana: a latência mediana dos pedidos às APIs ativadas, se disponível.
Para ver detalhes de utilização de uma API específica:
- Selecione a API que quer ver na lista de APIs do painel de controlo da API principal. A página Vista geral da API mostra um gráfico de tráfego mais detalhado com uma discriminação por código de resposta.
Para ver informações de utilização ainda mais detalhadas, selecione Ver métricas. Por predefinição, são apresentados os seguintes gráficos pré-criados, embora estejam disponíveis mais:
- Tráfego por código de resposta
- Erros por método da API
- Latência geral no 50.º, 95.º e 99.º percentil
- Latência por método da API (mediana)
Se quiser adicionar mais gráficos, pode selecionar gráficos pré-criados adicionais no menu pendente Selecionar gráficos.
Usar o Cloud Monitoring
Se usar o Cloud Monitoring, pode analisar mais detalhadamente os dados das métricas disponíveis através do Explorador de métricas para ter uma melhor compreensão da sua utilização da API. O Cloud Monitoring suporta uma grande variedade de métricas que pode combinar com filtros e agregações para obter vistas novas e detalhadas do desempenho da sua aplicação. Por exemplo, pode combinar uma métrica de contagem de pedidos com um filtro na classe de código de resposta HTTP para criar um painel de controlo que mostre as taxas de erro ao longo do tempo ou pode analisar a latência do percentil 95 dos pedidos à API Cloud Pub/Sub.
Para ver as métricas da API no explorador de métricas, selecione API consumida como o tipo de recurso e, de seguida, selecione uma das métricas serviceruntime
. Em seguida, use as opções de filtro e agregação para refinar os dados.
Depois de encontrar as informações de utilização da API pretendidas, pode usar o Cloud Monitoring para criar painéis de controlo e alertas personalizados que ajudam a continuar a monitorizar e manter uma aplicação robusta. Pode saber como
o fazer nas seguintes páginas:
Para mais informações, consulte o artigo Explorador de métricas.
Resolução de problemas com métricas da API
As métricas da API podem ser particularmente úteis se precisar de contactar a Google quando algo corre mal e podem até mostrar-lhe que não precisa de contactar o apoio técnico. Por exemplo:
- Se todas as suas chamadas para um serviço estiverem a falhar para um único ID de credencial, mas não para outro, é provável que haja algo de errado com essa conta que pode corrigir facilmente sem abrir um pedido.
- Está a resolver um problema com a sua app e nota uma correlação entre o desempenho degradado da sua aplicação e um aumento sustentado na latência do 50.º percentil de um serviço GCP crítico. Ligue-nos e indique-nos estes dados para que possamos começar a trabalhar no problema o mais rapidamente possível.
- As latências de um relatório de serviço do GCP parecem boas e inalteradas em relação ao período anterior, mas as métricas na app indicam que a latência nas chamadas para o serviço é anormalmente elevada. Isto indica que existe algum problema na rede. Ligue para o seu fornecedor de rede (em alguns casos, a Google) para iniciar o processo de depuração.
Práticas recomendadas
Embora as métricas da API sejam uma ferramenta extremamente útil, existem problemas que tem de ter em consideração para garantir que fornecem informações úteis, especialmente quando configura alertas com base nos valores das métricas. As seguintes práticas recomendadas ajudam a tirar o máximo partido dos dados das métricas da API.
A latência está a causar um problema?
Embora alguns serviços sejam bastante sensíveis à latência, para outros, a escala e a fiabilidade são mais importantes. Algumas APIs, como o Cloud Storage ou o BigQuery, podem ter alguns segundos de latência elevada sem que os clientes reparem. Com os dados das métricas da API, pode saber o que os seus utilizadores precisam de um determinado serviço.
Procure alterações em relação à norma
Antes de decidir emitir um alerta sobre um valor de métrica específico, considere o que é realmente considerado um comportamento invulgar. A análise das métricas da API pode mostrar que os resultados de latência da maioria dos serviços se enquadram numa distribuição normal: um grande pico no meio e valores atípicos de cada lado. As métricas ajudam a compreender a distribuição normal para que possa criar a sua app de forma a funcionar bem na curva de distribuição. As métricas também podem ajudar a correlacionar as alterações de distribuição com os momentos em que a sua app não está a funcionar como esperado, para ajudar a encontrar a causa principal de um problema. Esperamos que o percentil 99 seja muito diferente da mediana. No entanto, não esperamos alterações significativas nesses percentis ao longo do tempo.
Além disso, pode verificar que alguns tipos de pedidos demoram mais tempo do que outros. Se o tamanho médio de uma foto carregada para o Google Fotos for de 4 MB, mas normalmente carregar ficheiros RAW de 20 MB, o tempo médio de carregamento de 20 fotos é provavelmente muito pior do que o da maioria dos utilizadores, mas continua a ser o seu comportamento normal.
Tudo isto significa que não é particularmente útil enviar um alerta quando é detetada uma RPC de um segundo ou uma chamada HTTP 5xx pela primeira vez. Em alternativa, quando investigar um serviço Google como possível causa de um problema que a sua aplicação está a ter, compare os códigos de retorno e as taxas de latência ao longo do tempo e procure alterações sustentadas em relação à norma que estejam correlacionadas com problemas observados na sua aplicação.
Taxa de tráfego
As métricas da API são mais úteis quando tem um volume elevado de tráfego a aceder à API. Se chamar um serviço apenas de forma intermitente, as suas métricas da API não são estatisticamente válidas e não lhe dão informações de triagem significativas.
Por exemplo, se quiser acompanhar a latência do percentil 99,5 para um serviço e fizer apenas 100 chamadas por hora, a observação da medição durante um período de duas horas só lhe daria um ponto de dados para representar o percentil 99,5, o que não lhe diria muito sobre o comportamento normal da API ou da sua aplicação. Certifique-se de que a taxa de tráfego, o percentil que está a acompanhar e o período que está a considerar geram muitos pontos de dados de interesse, caso contrário, os dados de monitorização não lhe serão úteis.
APIs suportadas
Todas as APIs Google e APIs Google Cloud, bem como as APIs criadas com base nos Cloud Endpoints e na API Gateway, suportam métricas de API. Se for um consumidor de APIs, pode ver as métricas das APIs consumidas no painel de controlo da API. Se for um produtor de APIs, pode ver as métricas da API produzida no painel de controlo de pontos finais.