Este documento oferece uma vista geral dos serviços que o Cloud Monitoring oferece. Estes serviços podem ajudar a compreender o comportamento, o estado e o desempenho das suas aplicações e de outros Google Cloud serviços. O Cloud Monitoring recolhe e armazena automaticamente informações de desempenho para a maioria dos serviços. Google Cloud Pode recolher métricas do Prometheus através do Google Cloud Managed Service for Prometheus. Se instalar o agente de operações nas suas máquinas virtuais (VMs) do Compute Engine, pode recolher métricas e registos das suas aplicações e de aplicações de terceiros.
Os serviços de alerta, testes e visualização fornecidos pelo Cloud Monitoring ajudam a responder a perguntas importantes, como as seguintes:
- Qual é a carga no meu serviço?
- O meu Website está a responder corretamente?
- O meu serviço está a ter um bom desempenho?
- Qual é o estado da minha aplicação do App Hub?
O Cloud Monitoring oferece suporte para a Google Cloud consola e a API para a maioria dos respetivos serviços. Alguns serviços também suportam a CLI Google Cloud ou o Terraform. As páginas de referência da API Cloud Monitoring, como a página
alertPolicies.list
,
permitem-lhe experimentar chamadas à API diretamente a partir da página de referência.
Serviços do Cloud Monitoring
O Cloud Monitoring oferece diferentes serviços que pode usar para compreender o estado e o desempenho das suas aplicações e dos outros serviços que usa. Google Cloud
Incidentes e notificações
Para receber uma notificação quando o valor de uma métrica de desempenho cumpre os critérios que definir, crie uma política de alertas. A política de alertas inclui a lista de pessoas ou grupos que devem receber notificações. A monitorização suporta canais de notificação comuns, incluindo email, app para dispositivos móveis do Google Cloud e serviços como o PagerDuty ou o Slack. Por exemplo, pode criar uma política de alertas para receber uma notificação quando a utilização da CPU de uma VM exceder 80%.
Cada notificação inclui informações relevantes sobre uma falha e inclui um link para um incidente. Um incidente é um registo persistente que armazena informações que pode usar para resolver problemas de falhas. Normalmente, um registo apresenta o estado do incidente, links para registos, um gráfico dos dados de métricas registados, etiquetas e duração.
O serviço de alertas está integrado com muitos serviços Google Cloud . Quando estas integrações existem, pode ver um painel que apresenta alertas recomendados ou um botão num gráfico que lhe permite criar uma política de alertas. Em ambos os casos, as políticas de alerta estão pré-configuradas. Só tem de especificar a lista de pessoas ou grupos a notificar.
Pode criar e gerir políticas de alerta através da Google Cloud consola, da API Cloud Monitoring, da CLI Google Cloud ou do Terraform.
Monitorização e validação proativas
Para testar a disponibilidade, a consistência e o desempenho dos seus serviços, aplicações, páginas Web e APIs, crie monitorizações sintéticas. Por exemplo, pode testar a capacidade de resposta dos pontos finais HTTP, HTTPS e TCP com verificações de tempo de atividade e, em seguida, receber uma notificação quando um ponto final não responder. Também pode criar um verificador de links danificados para rastrear uma página Web e, em seguida, receber uma notificação quando forem detetados links danificados.
Pode criar e gerir monitores sintéticos através da Google Cloud consola, da API Cloud Monitoring, da Google Cloud CLI ou do Terraform.
Visualização de dados
À medida que instancia Google Cloud recursos ou regista aplicações no App Hub, o serviço de painel de controlo cria automaticamente Google Cloudpainéis de controlo geridos pela Google. Estes painéis de controlo mostram informações organizadas que ajudam a compreender o estado de funcionamento dos seus recursos e aplicações. Por exemplo, para uma aplicação do App Hub, são criados painéis de controlo para a aplicação e para cada um dos respetivos serviços e cargas de trabalho. Estes painéis de controlo mostram informações como os dados de registo ou métricas de uma aplicação e o número de alertas abertos.
Os painéis de controlo criados por Google Cloud podem fornecer-lhe informações suficientes para concluir uma investigação. No entanto, podem não fornecer os dados exatos de que precisa para ver tendências, identificar valores atípicos ou ver outros detalhes sobre os seus dados. Para concluir estas tarefas, pode usar os serviços de painel de controlo e criação de gráficos:
Para controlar os dados que vê e o formato de apresentação desses dados, crie um painel de controlo personalizado. Por exemplo, pode importar um painel de controlo do Grafana ou instalar um painel de controlo a partir de um modelo.
Os painéis de controlo personalizados podem apresentar o seguinte.
- Gráficos e tabelas que mostram dados de métricas
- Dados de registo e grupos de erros
- Gráficos para políticas de alerta
- Informações sobre alertas
- Texto
- Eventos, como um reinício ou uma falha, que afetam o funcionamento de um sistema.
Pode criar e gerir painéis de controlo através da Google Cloud consola ou da API.
O serviço de gráficos, o Explorador de métricas, permite-lhe visualizar e explorar rapidamente dados de séries cronológicas. As definições do gráfico permitem-lhe comparar os dados atuais com os dados anteriores, apresentar valores atípicos e percentis, bem como apresentar várias métricas. Também pode guardar gráficos num painel de controlo personalizado.
Recolha e armazenamento de dados
O Cloud Monitoring recolhe e armazena os seguintes tipos de dados de métricas:
- Métricas do sistema geradas pelos Google Cloud serviços. Estas métricas fornecem informações sobre o funcionamento de um serviço.
- Métricas do sistema e da aplicação que o agente de operações recolhe sobre os recursos do sistema e as aplicações em execução em instâncias do Compute Engine. Pode configurar o agente de operações para recolher métricas de plug-ins de terceiros, como servidores Web Apache ou Nginx, ou bases de dados MongoDB ou PostgreSQL.
Métricas definidas pelo utilizador criadas através da API Cloud Monitoring ou de uma biblioteca, como a OpenTelemetry.
Métricas externas definidas por algumas bibliotecas de código aberto ou fornecedores externos.
As métricas do Prometheus recolhidas pelo Google Cloud Managed Service for Prometheus, ou através do agente de operações e do recetor do Prometheus ou do recetor OTLP.
- Métricas baseadas em registos que registam informações numéricas sobre os registos escritos no Cloud Logging. As métricas baseadas em registos definidas pela Google incluem a contagem dos erros que o seu serviço deteta e o número total de entradas de registo recebidas pelo seu projeto Google Cloud . Também pode definir métricas baseadas em registos.
Idiomas de consulta
Quando cria uma política de alerta ou um gráfico, tem de fornecer uma consulta que descreva os dados que quer monitorizar ou representar graficamente:
Google Cloud consola: pode criar a sua consulta fazendo seleções nos menus ou escrever uma consulta. Os editores de consultas estão disponíveis para o idioma de consulta Prometheus (PromQL). O editor de consultas oferece verificações de sintaxe e sugestões. Também pode escrever uma expressão de filtro de monitorização.
API Cloud Monitoring: a API suporta o Idioma de Consulta do Prometheus (PromQL) e expressões de filtro de monitorização.
Monitorize sistemas grandes
Esta secção descreve como pode gerir recursos como uma coleção e como pode monitorizar métricas armazenadas em vários projetos. Google Cloud
Faça a gestão de recursos como uma coleção
Para gerir os seus recursos como uma coleção em vez de individualmente, crie um grupo de recursos. Um grupo de recursos é uma coleção dinâmica de recursos que satisfazem alguns critérios que fornece. À medida que adiciona e remove recursos, por exemplo, adicionando instâncias de VM do Compute Engine ao seu projeto, a associação ao grupo é alterada automaticamente.Google Cloud Seguem-se exemplos de grupos de recursos:
- Instâncias do Compute Engine cujos nomes começam pela string
prod-
. - Recursos com a etiqueta
test-cluster
. - Instâncias do Amazon EC2 na região A ou na região B.
Depois de definir um grupo de recursos, pode monitorizar o grupo como se fosse um único recurso. Por exemplo, pode configurar uma verificação de tempo de atividade para monitorizar um grupo de recursos. Para gráficos e políticas de alertas, também pode filtrar com base no nome do grupo.
Para mais informações, consulte o artigo Configure grupos de recursos.
Monitorize métricas de vários Google Cloud projetos
Para ver e monitorizar os dados de séries cronológicas de vários Google Cloud projetos e contas da AWS através de uma única interface, configure um âmbito de métricas de vários projetos.
Por predefinição, as páginas do Cloud Monitoring na Google Cloud consola fornecem acesso apenas às séries cronológicas armazenadas no projeto de âmbito. O projeto de âmbito é o projeto que selecionou com o Google Cloud seletor de projetos da consola. O projeto de âmbito armazena os alertas, os monitores sintéticos, os painéis de controlo e os grupos de monitorização que configurar.
O projeto de âmbito também aloja um âmbito de métricas. O âmbito das métricas define os projetos e as contas cujas métricas são visíveis para o projeto de âmbito. Pode configurar o âmbito das métricas para incluir dados de séries cronológicas de outros Google Cloud projetos e de contas da AWS. Para obter informações sobre como modificar um âmbito de métricas, consulte o artigo Configure um âmbito de métricas para vários projetos.
Modelo de dados do Cloud Monitoring
Esta secção apresenta o modelo de dados do Cloud Monitoring:
Um tipo de métrica descreve algo que é medido. Alguns exemplos de tipos de métricas incluem a utilização da CPU de uma VM e a percentagem de um disco que é usado.
Uma série cronológica é uma estrutura de dados que contém medições com data/hora de uma métrica e informações sobre a origem e o significado dessas medições.
Seguem-se alguns detalhes sobre o que uma série cronológica contém:
A matriz
points
contém as medições com indicação de data/hora.Segue-se um exemplo de uma matriz
points
com dois valores:"points": [ { "interval": { "startTime": "2020-07-27T20:20:21.597143Z", "endTime": "2020-07-27T20:20:21.597143Z" }, "value": { "doubleValue": 0.473005 } }, { "interval": { "startTime": "2020-07-27T20:19:21.597239Z", "endTime": "2020-07-27T20:19:21.597239Z" }, "value": { "doubleValue": 0.473025 } }, ],
Para compreender o significado de um valor, tem de consultar os outros dados incluídos na série cronológica e as definições desses dados.
O campo
resource
descreve o componente de hardware ou software que está a ser monitorizado. No Cloud Monitoring, o componente de hardware ou software é denominado recurso monitorizado. Alguns exemplos de recursos monitorizados incluem instâncias do Compute Engine e aplicações do App Engine. Para ver uma lista dos recursos monitorizados, consulte a lista de recursos monitorizados.Segue-se um exemplo de um campo
resource
:"resource": { "type": "gce_instance", "labels": { "instance_id": "2708613220420473591", "zone": "us-east1-b", "project_id": "sampleproject" } }
O campo
type
lista o recurso monitorizado comogce_instance
, o que indica que estas medições são feitas numa instância de VM do Compute Engine.O campo
labels
contém pares de chaves-valores que fornecem informações adicionais sobre o recurso monitorizado. Para um tipogce_instance
, as etiquetas identificam a instância de VM que está a ser monitorizada.
O campo
metric
descreve o que está a ser medido.Segue-se um exemplo de um campo
metric
:"metric": { "labels": { "instance_name": "test" }, "type": "compute.googleapis.com/instance/cpu/utilization" },
- Para os Google Cloud serviços, o campo
type
especifica o serviço e o que está a ser monitorizado. Neste exemplo, o serviço do Compute Engine mede a utilização da CPU. Quando o campotype
começa comcustom
ouexternal
, a métrica é uma métrica personalizada ou uma métrica definida por terceiros.
- O campo
labels
contém pares de chaves-valores que fornecem informações adicionais sobre a medição. Estas etiquetas são definidas como parte doMetricDescriptor
, que é uma estrutura de dados que define os atributos dos dados medidos. OMetricDescriptor
para a métricacompute.googleapis.com/instance/cpu/utilization
inclui a etiquetainstance_name
.
- Para os Google Cloud serviços, o campo
O campo
metricKind
descreve a relação entre as medições adjacentes numa série cronológica:As métricas
GAUGE
armazenam o valor do que está a ser medido num determinado momento, por exemplo, um registo de temperatura por hora.As métricas
CUMULATIVE
armazenam o valor acumulado do que está a ser medido num determinado momento, por exemplo, um conta-quilómetros num veículo.As métricas
DELTA
armazenam a alteração no valor do que está a ser medido durante um período especificado. Por exemplo, um resumo das ações que mostra os ganhos ou as perdas das ações.
O campo
valueType
descreve o tipo de dados da medição:INT64
,DOUBLE
,BOOL
,STRING
ouDISTRIBUTION
.
- Pode mostrar a utilização da CPU de cada instância de VM.
- Pode mostrar a utilização da CPU para uma instância de VM específica filtrando a série cronológica para um único valor da etiqueta
instance_id
. Pode agrupar as instâncias de VM pela etiqueta
machine_type
e, em seguida, apresentar a utilização média da CPU. A captura de ecrã seguinte ilustra um gráfico com esta configuração:
Preços
Em geral, as métricas do sistema do Cloud Monitoring são gratuitas, e as métricas de sistemas, agentes ou aplicações externos não o são. As métricas faturáveis são faturadas pelo número de bytes ou pelo número de amostras carregadas.
Para mais informações, consulte as secções do Cloud Monitoring na página de preços do Google Cloud Observability.
O que se segue?
- Para explorar o Cloud Monitoring, experimente o guia de início rápido para monitorizar uma instância do Compute Engine.
- Para ver informações sobre como configurar o nosso Google Cloud projeto para ver métricas de vários Google Cloud projetos e contas da AWS, consulte a vista geral dos âmbitos das métricas.
Para obter informações sobre o modelo de dados do Cloud Monitoring, consulte o artigo Métricas, séries cronológicas e recursos.
Para ver informações sobre a API Cloud Monitoring, consulte o artigo APIs e referência.
Para ver listas de métricas e recursos monitorizados, consulte a lista de métricas e a lista de recursos monitorizados.