Criar o arquivo de configuração do atendente do CloudWatch
Antes de executar o agente do CloudWatch em qualquer servidor, crie um ou mais arquivos de configuração do atendente do CloudWatch.
O arquivo de configuração do agente é um arquivo JSON que especifica as métricas, logs e rastreamentos que o agente deverá coletar, inclusive métricas personalizadas. Você pode criá-lo usando o assistente ou criando-o do zero. Você também pode usar o assistente para criar inicialmente o arquivo de configuração e, depois, modificá-lo manualmente. Se você criar ou modificar o arquivo manualmente, o processo será mais complexo, mas você terá maior controle sobre as métricas coletadas e poderá especificar métricas não disponíveis pelo assistente.
Sempre que você alterar o atendente do arquivo de configuração do atendente, deverá reiniciar o atendente para que as alterações entrem em vigor. Para reiniciar o atendente, siga as instruções em (Opcional) Modificar a configuração comum e o perfil nomeado para o atendente do CloudWatch.
Depois de criar um arquivo de configuração, você poderá salvá-lo manualmente como um arquivo JSON e, depois, usar esse arquivo ao instalar o atendente em seus servidores. Se prererir, você tabém pode armazená-lo no Systems Manager Parameter Store se pretende usar o Systems Manager ao instalar o atendente em servidores.
O agente do CloudWatch aceita o uso de vários arquivos de configuração. Para obter mais informações, consulte Criação de vários arquivos de configuração para o agente do CloudWatch.
Métricas, logs e rastreamentos coletados pelo agente do CloudWatch incorrem em cobranças. Para obter mais informações sobre a definição de preço, consulte Preços do Amazon CloudWatch
Conteúdo
Criação de vários arquivos de configuração para o agente do CloudWatch
É possível configurar o agente do CloudWatch para usar vários arquivos de configuração em servidores Linux e Windows. Por exemplo, é possível usar um arquivo de configuração comum que coleta um conjunto de métricas, logs e rastreamentos que você sempre deseja coletar de todos os servidores em sua infraestrutura. Depois, você pode usar arquivos de configuração adicionais que coletam métricas de determinadas aplicações ou em certas situações.
Para configurar isso, primeiro crie os arquivos de configuração que você deseja usar. Todos os arquivos de configuração que serão usados em conjunto no mesmo servidor devem ter diferentes nomes de arquivos. É possível armazenar os arquivos de configuração em servidores ou no Parameter Store.
Inicie o atendente do CloudWatch usando a opção fetch-config
e especifique o primeiro arquivo de configuração. Para anexar o segundo arquivo de configuração para o atendente em execução, use o mesmo comando, mas com a opção append-config
. Todas as métricas, logs e rastreamentos listados no arquivo de configuração serão coletados. No exemplo a seguir, os comandos ilustram esse cenário usando armazenamentos de configurações como arquivos. A primeira linha inicia o atendente usando o arquivo de configuração de infrastructure.json
, e a segunda linha acrescenta o arquivo de configuração app.json
.
Use os comandos a seguir para Linux.
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/tmp/infrastructure.json
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a append-config -m ec2 -s -c file:/tmp/app.json
Use os comandos a seguir para Windows Server.
& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:"C:\Program Files\Amazon\AmazonCloudWatchAgent\infrastructure.json"
& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a append-config -m ec2 -s -c file:"C:\Program Files\Amazon\AmazonCloudWatchAgent\app.json"
No exemplo a seguir, arquivos de configuração ilustram um uso para esse recurso. O primeiro arquivo de configuração é usado para todos os servidores na infraestrutura, e o segundo recolhe apenas logs de um determinada aplicação e é anexado a servidores que executam essa aplicação.
infrastructure.json
{ "metrics": { "metrics_collected": { "cpu": { "resources": [ "*" ], "measurement": [ "usage_active" ], "totalcpu": true }, "mem": { "measurement": [ "used_percent" ] } } }, "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log", "log_group_name": "amazon-cloudwatch-agent.log" }, { "file_path": "/var/log/messages", "log_group_name": "/var/log/messages" } ] } } } }
app.json
{ "logs": { "logs_collected": { "files": { "collect_list": [ { "file_path": "/app/app.log*", "log_group_name": "/app/app.log" } ] } } } }
Todos os arquivos de configuração anexados à configuração devem ter nomes de arquivos que sejam diferentes entre si e do arquivo de configuração inicial. Se você usar append-config
com um arquivo de configuração com o mesmo nome do arquivo que um arquivo de configuração que o atendente já está usando, o comando append substituirá as informações do primeiro arquivo de configuração, em vez de anexar a ele. Isso é verdade mesmo se dois arquivos de configuração com o mesmo nome de arquivo estejam em diferentes caminhos de arquivo.
O exemplo anterior mostra o uso de dois arquivos de configuração, mas não há um limite para o número de arquivos de configuração que você pode anexar à configuração do atendente. Também é possível combinar o uso de arquivos de configuração localizados em servidores e configurações localizadas no Parameter Store.