Coletar métricas do AWS CloudWatch usando o exportador do CloudWatch para Prometheus

Neste documento, descrevemos como usar o exportador de código aberto Prometheus do CloudWatch e o Agente de operações em execução em uma instância do Compute Engine para coletar métricas do AWS CloudWatch e armazená-las em um projeto do Google Cloud. Este documento é destinado a estes públicos-alvo:

  • Desenvolvedores e administradores de sistema que precisam coletar métricas do AWS CloudWatch. Neste documento, descrevemos como configurar o exportador do CloudWatch para Prometheus para coletar métricas do AWS CloudWatch.
  • Usuários de métricas do AWS CloudWatch com projetos de conector da AWS que estão migrando para o exportador CloudWatch do Prometheus. Este documento também inclui informações sobre como migrar da coleta de métricas legadas do AWS CloudWatch nos projetos do Conector.

Com o Cloud Monitoring, é possível visualizar as métricas da AWS no mesmo contexto que as do Google Cloud. Por exemplo, você pode criar um painel com gráficos que mostram a utilização da CPU para suas instâncias do Amazon EC2 e do Compute Engine. Também é possível criar políticas de alertas para monitorar as métricas da AWS. Para saber mais, consulte as seções a seguir:

Antes de começar

Para coletar métricas do AWS CloudWatch usando o exportador CloudWatch do Prometheus, você precisará do seguinte:

  • Um projeto do Google Cloud com permissões para fazer o seguinte:
    • criar uma VM
    • Gravar registros no Cloud Logging
    • Gravar métricas no Cloud Monitoring
  • Uma conta da AWS com credenciais da AWS que podem ser usadas pelo exportador do Prometheus para buscar métricas. Para mais informações, consulte Executar o exportador do Prometheus.

Criar uma VM do Compute Engine

Recomendamos criar uma VM Linux do Compute Engine para usar especificamente na execução do Agente de operações e do exportador CloudWatch do Prometheus. Essa VM atua como o local de coleta de todas as métricas da AWS.

  1. Para criar uma VM do Debian Linux chamada aws-exporter-test em uma zona especificada por você, execute o seguinte comando:

    gcloud compute instances create \
      --image-project debian-cloud \
      --image-family debian-11 \
      --zone ZONE \
      aws-exporter-test
    

    Configure o comando desta forma:

    • Substitua ZONE pela zona da nova VM.
    • Opcional. Substitua aws-exporter-test por um nome diferente para sua VM.

    Para mais informações sobre esse comando, consulte as referências do gcloud compute instances create.

  2. Para acessar sua VM e instalar o exportador do CloudWatch para Prometheus e o Agente de operações, use o seguinte comando:

    gcloud compute ssh --zone ZONE  --project PROJECT_ID  aws-exporter-test
    

    Configure o comando desta forma:

    • Substitua ZONE pela zona em que você criou a VM.
    • Substitua PROJECT_ID pelo ID do seu projeto do Google Cloud.
    • Substitua aws-exporter-test caso tenha criado sua VM com um nome diferente.

    Para mais informações sobre esse comando, consulte as referências do gcloud compute ssh.

Configurar o exportador do CloudWatch para Prometheus

Nas seções a seguir, descrevemos o procedimento de download, instalação e configuração do exportador CloudWatch do Prometheus na VM do Compute Engine.

Faça o download do exportador do Prometheus e do JRE

Para executar o exportador do CloudWatch para Prometheus, você precisa fazer o download dele e do Java Runtime Environment (JRE), versão 11 ou mais recente.

  1. Para fazer o download do arquivo JAR que contém o exportador do Prometheus CloudWatch, execute o seguinte comando na instância do Compute Engine:

    curl -sSO https://github.com/prometheus/cloudwatch_exporter/releases/download/v0.15.1/cloudwatch_exporter-0.15.1-jar-with-dependencies.jar
    
  2. Para instalar o JRE, você pode usar um comando como o seguinte:

    sudo apt install default-jre
    

Configurar o exportador do Prometheus

Para configurar o exportador CloudWatch do Prometheus, crie um arquivo de configuração para o serviço ou os serviços da AWS dos quais você quer coletar métricas. Para informações gerais, consulte a documentação de configuração do exportador do CloudWatch do Prometheus.

  • Migração de usuários: se você estiver migrando suas métricas atuais do AWS CloudWatch para o exportador do CloudWatch do Prometheus, poderá usar os arquivos de configuração em Configurações do exportador do CloudWatch do Prometheus para migração. Esses arquivos de configuração foram projetados para replicar as métricas atuais o mais próximo possível, mas não coletam todas as métricas disponíveis usando o exportador CloudWatch do Prometheus para os serviços da AWS.

  • Novos usuários: se você não estiver migrando métricas atuais, recomendamos não usar as configurações de migração. Consulte a documentação do serviço AWS CloudWatch para informações sobre como definir configurações de exportador para outros serviços. Também é possível encontrar outras amostras no repositório do GitHub do exportador do CloudWatch para Prometheus.

É possível combinar a configuração de vários serviços da AWS em um arquivo de configuração. Os exemplos neste documento pressupõem que seu arquivo de configuração é denominado config.yml.

Executar o exportador do Prometheus

Antes de executar o exportador do CloudWatch para Prometheus, é preciso fornecer a ele as credenciais e a autorização. O exportador CloudWatch do Prometheus usa o SDK do AWS Java, que oferece maneiras de fornecer credenciais usando as seguintes variáveis de ambiente:

Para mais informações sobre como fornecer credenciais para o SDK, consulte SDK da AWS para Java 2.x.

Você também precisa ter permissão para usar a API CloudWatch para recuperar métricas. Você precisa das seguintes permissões do CloudWatch do IAM da AWS:

  • cloudwatch:ListMetrics
  • cloudwatch:GetMetricStatistics
  • cloudwatch:GetMetricData

O uso do recurso aws_tag_select também requer a permissão tag:GetResources do IAM da AWS.

Para mais informações sobre como autorizar o acesso aos serviços da AWS, consulte Identity and Access Management da AWS.

Para executar o exportador do CloudWatch para Prometheus, faça o seguinte:

  1. Para fornecer credenciais para o exportador, defina as variáveis de ambiente de chave de acesso:

    export AWS_ACCESS_KEY=YOUR_ACCESS_KEY
    export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
    export AWS_SESSION_TOKEN=YOUR_SESSION_TOKEN
    

    Substitua as variáveis YOUR_KEY pelas suas chaves de acesso. Só será necessário definir a variável de ambiente AWS_SESSION_TOKEN se você estiver usando credenciais temporárias.

  2. Para testar a configuração, inicie o exportador e carregue o arquivo de configuração, executando o seguinte comando:

    java -jar cloudwatch_exporter-0.15.1-jar-with-dependencies.jar 9106 config.yml
    

    Altere os valores de porta (9106) e arquivo de configuração (config.yml), se necessário.

    Se você modificar o arquivo config.yml enquanto o exportador estiver em execução, recarregue o exportador executando o seguinte comando:

    curl -X POST localhost:9106/-/reload
    

    Para uso em um ambiente de produção, configure o exportador para reiniciar se a VM for reiniciada. Por exemplo, nos sistemas Debian, use o gerenciador de sistema e de serviço systemd.

Configurar o Agente de operações

As seções a seguir descrevem como instalar e iniciar o Agente de operações. Essas seções fornecem informações mínimas de configuração para o Agente de operações usar com o exportador CloudWatch do Prometheus. Para mais informações sobre esses tópicos, consulte Visão geral do agente de operações.

Instalar o Agente de operações

Para instalar o Agente de operações, use os seguintes comandos para fazer o download e executar o script de instalação do agente:

curl -sSO https://dl.google.com/cloudagents/add-google-cloud-ops-agent-repo.sh
sudo bash add-google-cloud-ops-agent-repo.sh --also-install

Configurar o agente de operações

Para configurar o Agente de operações, adicione elementos de configuração ao arquivo de configuração do usuário do agente. No Linux, o arquivo de configuração do usuário é /etc/google-cloud-ops-agent/config.yaml.

Ao configurar o Agente de operações para coletar métricas da AWS pelo exportador do CloudWatch do Prometheus, você usa o receptor do Prometheus do agente. Neste documento, descrevemos duas configurações básicas do Agente de operações. Selecione uma das configurações e adicione-a ao arquivo de configuração do usuário:

sudo vim /etc/google-cloud-ops-agent/config.yaml

Configuração básica do Agente de operações

A configuração a seguir fornece uma configuração mínima para o Agente de operações. Essa configuração faz o seguinte:

  • Cria um receptor chamado aws do tipo prometheus. O receptor está configurado para raspar métricas do job aws_exporter. A porta especificada precisa corresponder à porta em que o exportador do CloudWatch do Prometheus está exportando métricas. Consulte Executar o exportador do Prometheus.

  • Cria um pipeline chamado aws_pipeline que usa o coletor de métricas aws.

metrics:
  receivers:
    aws:
      type: prometheus
      config:
        scrape_configs:
          - job_name: 'aws_exporter'
            scrape_interval: 10s
            static_configs:
              - targets: ['localhost:9106']
  service:
    pipelines:
      aws_pipeline:
        receivers:
          - aws

Configuração que descarta métricas da JVM

A configuração a seguir faz tudo o que a configuração básica faz, mas também adiciona uma configuração de rerotulação que descarta as métricas da JVM geradas pelo exportador. Descartar essas métricas reduz os dados da métrica ingeridos, mas pode dificultar a depuração dos problemas com o exportador, porque você não está recebendo as próprias métricas:

metrics:
  receivers:
    aws:
      type: prometheus
      config:
        scrape_configs:
          - job_name: 'aws_exporter'
            scrape_interval: 10s
            static_configs:
              - targets: ['localhost:9106']
            # Drop the exporter's own JVM metrics to reduce noise.
            metric_relabel_configs:
              - source_labels: [ __name__ ]
                regex: 'jvm_.*'
                action: drop
  service:
    pipelines:
      aws_pipeline:
        receivers:
          - aws

É possível criar configurações muito mais complexas para o Agente de operações.

Reiniciar o agente de operações

Reinicie o agente para aplicar as alterações de configuração.

  1. Para reiniciar o agente, execute o seguinte comando na instância:
    sudo service google-cloud-ops-agent restart
    
  2. Para confirmar se o agente foi reiniciado, execute o seguinte comando e verifique se os componentes "Agente de métricas" e "Agente do Logging" foram iniciados:
    sudo systemctl status google-cloud-ops-agent"*"
    

Ver métricas no Cloud Monitoring

No Cloud Monitoring, é possível consultar as métricas do AWS CloudWatch e criar gráficos como você faz para qualquer outra métrica. Na interface do Metrics Explorer, é possível usar o PromQL, a linguagem de consulta do Monitoring (MQL, na sigla em inglês) ou uma interface de criador de consultas. Para mais informações, consulte Criar gráficos com o Metrics Explorer.

Se você criou gráficos que gostaria de manter, salve-os em painéis personalizados. Para mais informações, consulte Visão geral dos painéis.

O gráfico a seguir mostra uma consulta do PromQL para a métrica aws_ec2_cpuutilization_sum para VMs da AWS:

O gráfico mostra o resultado da busca da estatística aws_ec2_cpuutilization_sum para VMs da AWS usando PromQL.

É possível consultar qualquer métrica no Cloud Monitoring usando PromQL. Para mais informações, consulte Como mapear métricas do Cloud Monitoring para PromQL.

Consulte métricas do Prometheus usando o PromQL ou ferramentas do Cloud Monitoring, como a linguagem de consulta do Monitoring (MQL, na sigla em inglês). Quando as métricas do Prometheus são ingeridas no Cloud Monitoring, cada uma delas é transformada usando a transformação padrão OpenTelemetry-para-Prometheus e mapeada para o tipo de recurso monitorado prometheus_target do Cloud Monitoring. A transformação inclui as seguintes mudanças:

  • O nome da métrica é prefixado com a string prometheus.googleapis.com/.
  • Todos os caracteres não alfanuméricos, como pontos (.), no nome da métrica, são substituídos por sublinhados (_).
  • O nome da métrica é post-fixo com uma string que indica o tipo dela, como /gauge ou /counter.

Para consultar a métrica aws_ec2_cpuutilization_sum do Prometheus usando o MQL, faça referência à métrica como prometheus.googleapis.com/aws_ec2_cpuutilization_sum/gauge e especifique o tipo de recurso monitorado prometheus_target:

fetch prometheus_target :: 'prometheus.googleapis.com/aws_ec2_cpuutilization_sum/gauge'

O gráfico a seguir mostra o resultado da consulta MQL para a métrica aws_ec2_cpuutilization_sum do Prometheus:

O gráfico mostra o resultado da busca da estatística aws_ec2_cpuutilization_sum para VMs da AWS usando o MQL.

Alerta sobre o comportamento da métrica

No Cloud Monitoring, é possível criar [políticas de alertas][alert-intro] para monitorar as métricas do AWS CloudWatch e notificar você sobre picos, quedas ou tendências nos valores de métricas.

Monitorar várias regiões

A configuração do exportador CloudWatch do Prometheus é compatível com o uso de apenas uma região por arquivo de configuração. Se precisar monitorar várias regiões, recomendamos executar várias instâncias do exportador do Prometheus, uma configurada para cada região a ser monitorada. É possível executar vários exportadores em uma única VM ou distribuí-los entre VMs. O exportador do Prometheus imagens do Docker pode ser útil nessa situação.

É possível configurar o Agente de operações em execução na VM do Compute Engine para raspar vários endpoints do Prometheus. Recomendamos que, ao configurar várias instâncias do exportador do Prometheus, você use um nome job diferente para a configuração de raspagem de dados para poder distinguir as instâncias do exportador se precisar solucioná-las.

Para informações sobre como configurar o Agente de operações e o receptor do Prometheus, consulte Configurar o Agente de operações.

Custo

A Amazon cobra por cada solicitação da API CloudWatch ou por cada métrica do CloudWatch que você solicita. Para os preços atuais, consulte Preços do Amazon CloudWatch. O exportador CloudWatch do Prometheus tem as seguintes características de consulta (em inglês), que podem afetar seus custos da Amazon:

  • Ao usar o método GetMetricStatistics (padrão), cada métrica requer uma solicitação de API. Cada solicitação pode incluir várias estatísticas.
  • Ao usar aws_dimensions, o exportador precisa realizar solicitações de API para determinar quais métricas serão solicitadas. O número de solicitações de dimensões normalmente é insignificante em comparação com o número de solicitações de métrica.

O Cloud Monitoring cobra pelas métricas do AWS CloudWatch do exportador do Prometheus pelo número de amostras ingeridas. Para saber os preços atuais, consulte Resumo de preços do Monitoring.

Guia de migração

Esta seção fornece mais informações para clientes que estão migrando das métricas legadas do AWS CloudWatch com projetos do conector da AWS para a solução exportador CloudWatch do Prometheus.

Se você não estiver migrando da solução legada para o exportador CloudWatch do Prometheus, pule esta seção.

Como mapear métricas legadas do AWS CloudWatch para métricas do exportador do CloudWatch do Prometheus

Nesta seção, descrevemos como as métricas legadas do AWS CloudWatch são mapeadas para as coletadas pelo exportador CloudWatch do Prometheus usando a métrica CPUUtilization do AWS CloudWatch como exemplo.

A métrica CPUUtilization mede a porcentagem de tempo de CPU física que o Amazon EC2 usa para executar a instância, incluindo o tempo de execução do código do usuário e o código do Amazon EC2. Em termos gerais, o valor da métrica é a soma da utilização da CPU convidada e da utilização da CPU do hipervisor.

A solução legada informa esses dados ao Cloud Monitoring usando as seguintes métricas:

As métricas de valores como "média" e "máximo" representam as estatísticas do CloudWatch que são significativas para a métrica. Cada uma relata uma agregação diferente da métrica CPUUtilization da AWS. Essas métricas são gravadas no tipo de recurso monitorado aws_ec2_instance, e o valor do rótulo de recurso instance_id é o identificador da instância do Amazon EC2 que grava a métrica.

Quando você usa o exportador CloudWatch do Prometheus e o Agente de operações, as métricas são informadas da seguinte maneira:

  • aws_ec2_cpuutilization_average
  • aws_ec2_cpuutilization_maximum
  • aws_ec2_cpuutilization_minimum
  • aws_ec2_cpuutilization_samplecount
  • aws_ec2_cpuutilization_sum

Essas métricas correspondem às métricas aws.googleapis.com/EC2/CPUUtilization/Statistic coletadas pela solução legada. Essas métricas são gravadas no tipo de recurso monitorado prometheus-target.

Os valores dos rótulos no recurso prometheus-target refletem a VM do Compute Engine em que o exportador CloudWatch do Prometheus está em execução, não os da instância do Amazon EC2. Os valores dos rótulos na métrica são definidos pelo exportador do Prometheus. As métricas aws_ec2_cpuutilization_statistic preservam o ID da instância do Amazon EC2 no rótulo instance_id. A captura de tela a seguir mostra uma consulta do PromQL que gera um gráfico com a métrica aws_ec2_cpuutilization_sum. A tabela mostra os valores dos rótulos selecionados:

A tabela mostra o valor do rótulo "intance_id" para uma métrica do EC2.

Se você estiver usando uma das configurações do exportador do Prometheus CloudWatch fornecidas para migração, mas quiser coletar outras dimensões ou estatísticas para as métricas, poderá modificar a configuração. Para mais informações, consulte a documentação de configuração do exportador do CloudWatch do Prometheus.

Recriar painéis e políticas de alertas

Os painéis e as políticas de alertas atuais que usam as métricas legadas do AWS CloudWatch não funcionarão para as métricas ingeridas usando o exportador CloudWatch do Prometheus. Essa é uma alteração interruptiva.

Para ter a mesma observabilidade nos sistemas da AWS, recrie os painéis e as políticas de alertas para usar as métricas coletadas pelo exportador do Prometheus.

Perda de metadados

Além de coletar métricas do AWS CloudWatch, a solução legada também coletava metadados do agente do Monitoring legado e do agente do Logging legado em execução nas instâncias do Amazon Elastic Compute Cloud (Amazon EC2). Os metadados desse recurso foram combinados às métricas no Cloud Monitoring e apareciam como rótulos de metadados do sistema ou do usuário, como nome da instância, zona de disponibilidade, tipo de máquina, entre outros.

É possível que o exportador CloudWatch do Prometheus não colete os mesmos metadados. Se você estiver usando um dos agentes legados em instâncias de VM do Amazon EC2, as seções a seguir descrevem como usar o exportador do Prometheus para coletar os metadados ausentes e combiná-los às métricas coletadas pelo exportador do Prometheus:

Após 21 de agosto de 2024, quando a descontinuação da solução legada do AWS CloudWatch for concluída, esses rótulos de metadados não estarão mais disponíveis. Os rótulos de métrica e de recurso aws_ec2_instance não são afetados.

Para usuários do agente legado do Monitoring em instâncias do Amazon EC2

Se você usa os metadados da AWS nos seus gráficos e consultas e quer mantê-los, colete-os usando o exportador CloudWatch do Prometheus. Crie uma VM do Compute Engine e configure o exportador do CloudWatch no Prometheus e o Agente de operações conforme descrito neste documento. Use o arquivo de configuração ec2.yml ao configurar o exportador do CloudWatch para Prometheus.

O arquivo de configuração ec2.yml usa o recurso aws_tag_select. Quando o recurso aws_tag_select é usado na configuração, o exportador do CloudWatch do Prometheus exporta uma métrica chamada aws_resource_info. A métrica aws_resource_info relata uma série temporal com metadados do recurso da AWS nos rótulos de métrica. Esses metadados incluem todas as tags de instância do Amazon EC2, incluindo o nome da instância, no rótulo tag_Name.

Para coletar outros metadados, você pode adicioná-los usando tags na instância do Amazon EC2. Consulte Adicionar ou remover tags de instância do EC2. A métrica aws_resource_info informada pelo exportador do Prometheus inclui os metadados extras.

Em seguida, é possível mesclar os rótulos de metadados da métrica aws_resource_info com as autométricas do agente do Monitoring legado ou qualquer métrica do Amazon EC2 usando o MQL para PromQL.

Mesclagem MQL

Por exemplo, a consulta MQL a seguir mescla a autométrica do agente agent.googleapis.com/agent/uptime, escrita no tipo de recurso aws_ec2_instance, com a métrica do exportador de CloudWatch do Prometheus aws_resource_info, escrita no tipo de recurso prometheus-target:

{
    aws_ec2_instance :: 'agent.googleapis.com/agent/uptime'
    | align next_older()
    | group_by [instance_id: resource.instance_id, resource.project_id, resource.region, resource.aws_account, metric.version]
    ;
    prometheus_target :: 'prometheus.googleapis.com/aws_resource_info/gauge'
    | align next_older()
    | group_by [instance_id: metric.instance_id, resource.project_id, aws_account: re_extract(metric.arn, "arn:aws:ec2:[^:]+:([^:]+):instance/.*"), region: concatenate("aws:", re_extract(metric.arn, "arn:aws:ec2:([^:]+):[^:]+:instance/.*")), name: metric.tag_Name]
}
| join
| val(0)

As duas métricas são unidas no rótulo instance_id. Portanto, o nome da VM, o valor do rótulo metric.tag_Name na métrica aws_resource_info, pode ser adicionado ao resultado da junção. A autométrica uptime do agente inclui o rótulo de recurso region. A junção com o rótulo region funciona porque a AWS não especifica se os IDs de instância precisam ser exclusivos regional ou globalmente.

Para mais informações sobre o MQL, consulte Visão geral da linguagem de consulta do Monitoring.

Mesclagem em PromQL

O exemplo a seguir mostra uma consulta do PromQL que mescla a métrica aws_ec2_cpuutilization_average do exportador do Prometheus CloudWatch. O exemplo a seguir mostra uma consulta do PromQL que mescla a métrica aws_ec2_cpuutilization_average do exportador do CloudWatch do Prometheus com a métrica de metadados aws_resource_info. As métricas são unidas no rótulo instance_id para adicionar o nome da VM, do rótulo tag_Name da métrica de metadados ao resultado da consulta.

  aws_ec2_cpuutilization_average
* on(instance_id) group_left(tag_Name)
  aws_resource_info

Para usuários do agente do Logging legado em instâncias do Amazon EC2

O agente legado do Logging, google-fluentd, informa os metadados diretamente para o Cloud Logging. Portanto, a descontinuação da solução de métricas do AWS CloudWatch que usa o agente legado do Monitoring não afeta os registros coletados pelo agente do Logging.

No entanto, o agente legado do Logging informa algumas métricas sobre si mesmo. Se você quiser adicionar metadados a essas autométricas, crie uma VM do Compute Engine e configure o exportador do CloudWatch no Prometheus e o Agente de operações conforme descrito neste documento. Use o arquivo de configuração ec2.yml ao configurar o exportador do CloudWatch para Prometheus.

Talvez também seja necessário modificar a configuração do agente do Logging legado. O plug-in de saída do agente do Logging legado é compatível com a opção use_aws_availability_zone da AWS. Essa opção precisa ser definida como false para que o agente grave o rótulo region em vez de availability_zone. Para informações sobre o local do arquivo de configuração do plug-in, consulte Configuração do plug-in de saída fluentd do Google Cloud.

O arquivo de configuração ec2.yml usa o recurso aws_tag_select. Quando o recurso aws_tag_select é usado na configuração, o exportador do CloudWatch do Prometheus exporta uma métrica chamada aws_resource_info. A métrica aws_resource_info relata uma série temporal com metadados do recurso da AWS nos rótulos de métrica. Esses metadados incluem todas as tags de instância do Amazon EC2, incluindo o nome da instância, no rótulo tag_Name.

Para coletar outros metadados, você pode adicioná-los usando tags na instância do Amazon EC2. Consulte Adicionar ou remover tags de instância do EC2. A métrica aws_resource_info informada pelo exportador do Prometheus inclui os metadados extras.

Em seguida, é possível mesclar os rótulos de metadados da métrica aws_resource_info com as próprias métricas do agente do Logging legado usando o MQL. Por exemplo, a consulta MQL a seguir mescla a autométrica do agente agent.googleapis.com/agent/uptime, escrita no tipo de recurso aws_ec2_instance, com a métrica do exportador de CloudWatch do Prometheus aws_resource_info, escrita no tipo de recurso prometheus-target:

{
    aws_ec2_instance :: 'agent.googleapis.com/agent/uptime'
    | align next_older()
    | group_by [instance_id: resource.instance_id, resource.project_id, resource.region, resource.aws_account, metric.version]
    ;
    prometheus_target :: 'prometheus.googleapis.com/aws_resource_info/gauge'
    | align next_older()
    | group_by [instance_id: metric.instance_id, resource.project_id, aws_account: re_extract(metric.arn, "arn:aws:ec2:[^:]+:([^:]+):instance/.*"), region: concatenate("aws:", re_extract(metric.arn, "arn:aws:ec2:([^:]+):[^:]+:instance/.*")), name: metric.tag_Name]
}
| join
| val(0)

As duas métricas são unidas no rótulo instance_id. Portanto, o nome da VM, o valor do rótulo metric.tag_Name na métrica aws_resource_info, pode ser adicionado ao resultado da junção. A autométrica uptime do agente inclui o rótulo de recurso region. A junção com o rótulo region funciona porque a AWS não especifica se os IDs de instância precisam ser exclusivos regional ou globalmente.

Para mais informações sobre o MQL, consulte Visão geral da linguagem de consulta do Monitoring.

Desative as métricas legadas na sua conta da AWS

Ao criar o projeto de conector da AWS no projeto do Google Cloud, você criou um papel de IAM da AWS que concedeu acesso somente leitura ao Google Cloud à conta da AWS. Para desativar as métricas legadas do AWS CloudWatch no console da AWS, remova esse papel. Para mais informações, consulte Como excluir um papel do IAM (console).

Configurações do exportador do CloudWatch para Prometheus para migração

Nesta seção, fornecemos configurações que replicam, da maneira mais semelhante possível, as métricas de serviço da AWS documentadas na lista de métricas da AWS. Esses arquivos de configuração são destinados para uso por clientes que estão migrando da solução legada para o exportador CloudWatch do Prometheus. Se você estiver configurando o exportador do CloudWatch do Prometheus como um novo usuário em vez de como um usuário de migração e usar essas configurações, não estará coletando todas as métricas da AWS disponibilizadas pelo exportador CloudWatch do Prometheus.

Para visualizar um arquivo de configuração de amostra para as métricas do AWS CloudWatch, expanda uma das seções a seguir.