Risoluzione dei problemi relativi all'agente CloudWatch - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi relativi all'agente CloudWatch

Utilizza le seguenti informazioni per risolvere i problemi relativi all' CloudWatch agente.

CloudWatch parametri della riga di comando dell'agente

Per visualizzare l'elenco completo dei parametri supportati dall' CloudWatch agente, inserisci quanto segue nella riga di comando del computer in cui è installato:

amazon-cloudwatch-agent-ctl -help

L'installazione dell' CloudWatch agente tramite Run Command non riesce

Per installare l' CloudWatch agente utilizzando Systems Manager Run Command, l'agente SSM sul server di destinazione deve essere la versione 2.2.93.0 o successiva. Se la versione di SSM Agent non è corretta, potrebbero venire visualizzati errori che includono i seguenti messaggi:

no latest version found for package AmazonCloudWatchAgent on platform linux
failed to download installation package reliably

Per informazioni sull'installazione o sull'aggiornamento di SSM Agent consulta la pagina relativa all'installazione e alla configurazione di SSM Agent nella Guida per l'utente AWS Systems Manager .

L'agente non si avvia CloudWatch

Se l' CloudWatch agente non si avvia, potrebbe esserci un problema nella configurazione. Le informazioni sulla configurazione sono registrate nel file configuration-validation.log. Il percorso del file è /opt/aws/amazon-cloudwatch-agent/logs/configuration-validation.log nei server Linux e $Env:ProgramData\Amazon\AmazonCloudWatchAgent\Logs\configuration-validation.log nei server che eseguono Windows Server.

Verifica che l' CloudWatch agente sia in esecuzione

Puoi interrogare l' CloudWatch agente per scoprire se è in esecuzione o è fermo. Per eseguire questa operazione in remoto, puoi utilizzare AWS Systems Manager . Puoi inoltre utilizzare la riga di comando, ma solo per controllare il server locale.

Per interrogare lo stato dell' CloudWatch agente utilizzando Run Command
  1. Aprire la console Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel riquadro di navigazione seleziona Run Command.

    oppure

    Se la AWS Systems Manager home page si apre, scorri verso il basso e scegli Esplora Run Command.

  3. Seleziona Run command (Esegui comando).

  4. Nell'elenco dei documenti Command, scegli il pulsante accanto a AmazonCloudWatch- ManageAgent.

  5. Nell'elenco Action (Operazione), seleziona status (stato).

  6. Per Origine configurazione facoltativa scegli il valore predefinito e non compilare il campo del percorso della configurazione facoltativa.

  7. Nell'area Target (Destinazione), seleziona l'istanza da controllare.

  8. Seleziona Esegui.

Se l'agente è in esecuzione, l'output sarà analogo al seguente.

{ "status": "running", "starttime": "2017-12-12T18:41:18", "version": "1.73.4" }

Se l'agente viene arrestato, nel campo "status" viene visualizzato "stopped".

Per interrogare lo stato dell' CloudWatch agente localmente utilizzando la riga di comando
  • In un server Linux, immetti quanto segue:

    sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status

    Su un server che esegue Windows Server, inserisci quanto segue PowerShell come amministratore:

    & $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -m ec2 -a status

L' CloudWatch agente non si avvia e l'errore indica una regione Amazon EC2

Se l'agente non viene avviato e il messaggio di errore fa riferimento all'endpoint della regione Amazon EC2, potresti aver configurato l'agente in modo da dover accedere all'endpoint Amazon EC2, senza avere concesso le autorizzazioni di accesso.

Ad esempio, se specifichi un valore del parametro append_dimensions nel file di configurazione dell'agente che dipende da metadati Amazon EC2 e utilizzi proxy, devi assicurarti che il server possa accedere all'endpoint per Amazon EC2. Per ulteriori informazioni su questi endpoint, consulta Amazon Elastic Compute Cloud (Amazon EC2) nella Riferimenti generali di Amazon Web Services.

L' CloudWatch agente non si avvierà su Windows Server

In Windows Server, potresti visualizzare il seguente errore:

Start-Service : Service 'Amazon CloudWatch Agent (AmazonCloudWatchAgent)' cannot be started due to the following error: Cannot start service AmazonCloudWatchAgent on computer '.'. At C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1:113 char:12 + $svc | Start-Service + ~~~~~~~~~~~~~ + CategoryInfo : OpenError: (System.ServiceProcess.ServiceController:ServiceController) [Start-Service], ServiceCommandException + FullyQualifiedErrorId : CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand

Per risolvere questo problema, assicurati innanzitutto che il servizio server sia in esecuzione. Questo errore può essere visualizzato se l'agente tenta di avviarsi quando il servizio server non è in esecuzione.

Se il servizio server è già in esecuzione, potrebbe essere il problema seguente. In alcune installazioni di Windows Server, l'avvio dell' CloudWatch agente impiega più di 30 secondi. Poiché Windows Server, per impostazione predefinita, consente solo 30 secondi per l'avvio dei servizi, questo causa l'errore dell'agente simile al seguente:

Per risolvere questo problema, aumenta il valore del timeout per il servizio. Per ulteriori informazioni, consulta Un servizio non viene avviato e gli eventi 7000 e 7011 vengono registrati nel log eventi di Windows.

Dove sono i parametri?

Se l' CloudWatch agente è in esecuzione ma non riesci a trovare le metriche da esso raccolte nel AWS Management Console o nel AWS CLI, conferma che stai utilizzando lo spazio dei nomi corretto. Per impostazione predefinita, lo spazio dei nomi dei parametri raccolti dall'agente è CWAgent. Puoi personalizzare questo spazio dei nomi utilizzando il campo namespace nella sezione metrics del file di configurazione dell'agente. Se non vengono visualizzati i parametri previsti, controlla il file di configurazione per verificare lo spazio dei nomi in uso.

Quando scarichi per la prima volta il pacchetto dell' CloudWatch agente, il file di configurazione dell'agente è. amazon-cloudwatch-agent.json Il file è ubicato nella directory in cui hai eseguito la procedura guidata di configurazione oppure potrebbe trovarsi in un'altra directory. Se utilizzi la procedura guidata di configurazione, l'output del file di configurazione dell'agente è denominato config.json. Per ulteriori informazioni sul file di configurazione, incluso il campo namespace, consulta CloudWatch file di configurazione dell'agente: sezione Metrics.

L' CloudWatch agente impiega molto tempo per essere eseguito in un contenitore o registra un errore di limite di hop

Quando esegui l' CloudWatch agente come servizio container e desideri aggiungere le dimensioni dei parametri di Amazon EC2 a tutti i parametri raccolti dall'agente, potresti visualizzare i seguenti errori nella versione v1.247354.0 dell'agente:

2022-06-07T03:36:11Z E! [processors.ec2tagger] ec2tagger: Unable to retrieve Instance Metadata Tags. This plugin must only be used on an EC2 instance. 2022-06-07T03:36:11Z E! [processors.ec2tagger] ec2tagger: Please increase hop limit to 2 by following this document https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#configuring-IMDS-existing-instances. 2022-06-07T03:36:11Z E! [telegraf] Error running agent: could not initialize processor ec2tagger: EC2MetadataRequestError: failed to get EC2 instance identity document caused by: EC2MetadataError: failed to make EC2Metadata request status code: 401, request id: caused by:

È possibile che venga visualizzato questo errore se l'agente tenta di ottenere metadati da IMDSv2 all'interno di un container senza un limite di hop appropriato. Nelle versioni dell'agente precedenti alla v1.247354.0, è possibile riscontrare questo problema senza visualizzare il messaggio di log.

Per risolvere questo problema, aumentare il limite di hop a 2 seguendo le istruzioni riportate in Configurazione delle opzioni dei metadati dell'istanza.

Ho aggiornato la configurazione del mio agente ma non vedo le nuove metriche o i nuovi log nella console CloudWatch

Se aggiorni il file di configurazione dell' CloudWatch agente, al successivo avvio dell'agente, devi utilizzare l'fetch-configopzione. Ad esempio, se il file aggiornato è stato memorizzato nel computer locale, immetti il comando seguente:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -s -m ec2 -c file:configuration-file-path

CloudWatch file e posizioni degli agenti

La tabella seguente elenca i file installati e utilizzati con l' CloudWatch agente, insieme alle relative posizioni sui server che eseguono Linux o Windows Server.

File Ubicazione in Linux Ubicazione in Windows Server

Lo script di controllo che controlla l'avvio, l'arresto e il riavvio dell'agente.

/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl o /usr/bin/amazon-cloudwatch-agent-ctl

$Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1

Il file di log su cui scrive l'agente. Potrebbe essere necessario allegarlo quando si contatta AWS Support.

/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log o /var/log/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.log

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\Logs\amazon-cloudwatch-agent.log

File di convalida della configurazione dell'agente.

/opt/aws/amazon-cloudwatch-agent/logs/configuration-validation.log o /var/log/amazon/amazon-cloudwatch-agent/configuration-validation.log

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\Logs\configuration-validation.log

File JSON utilizzato per configurare l'agente, immediatamente dopo la sua creazione tramite la procedura guidata. Per ulteriori informazioni, consulta la pagina Creare il file di configurazione CloudWatch dell'agente.

/opt/aws/amazon-cloudwatch-agent/bin/config.json

$Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\config.json

File JSON utilizzato per configurare l'agente, se questo file di configurazione è stato scaricato da Parameter Store.

/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json o /etc/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.json

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.json

Il file TOML utilizzato per specificare le informazioni sulla Regione e sulle credenziali che l'agente deve utilizzare, sostituendo le impostazioni predefinite di sistema.

/opt/aws/amazon-cloudwatch-agent/etc/common-config.toml o /etc/amazon/amazon-cloudwatch-agent/common-config.toml

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\common-config.toml

File TOML che contiene il contenuto convertito del file di configurazione JSON. Lo script amazon-cloudwatch-agent-ctl genera questo file. Gli utenti non devono modificare direttamente questo file. Può essere utile per verificare che la traduzione da JSON a TOML abbia avuto successo.

/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.toml o /etc/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.toml

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.toml

Il file YAML che contiene il contenuto convertito del file di configurazione JSON. Lo script amazon-cloudwatch-agent-ctl genera questo file. Questo file non deve essere modificato direttamente. Può essere utile per verificare che la traduzione da JSON a YAML abbia avuto successo.

/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.yaml or /etc/amazon/amazon-cloudwatch-agent/amazon-cloudwatch-agent.yaml

$Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.yaml

Ricerca di informazioni sulle versioni degli CloudWatch agenti

Per trovare il numero di versione dell' CloudWatch agente su un server Linux, immettete il seguente comando:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a status

Per trovare il numero di versione dell' CloudWatch agente su Windows Server, inserisci il seguente comando:

& $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -m ec2 -a status
Nota

L'utilizzo di questo comando è il modo corretto per trovare la versione dell' CloudWatch agente. Se utilizzi Programs and Features (Programmi e funzionalità) nel Pannello di controllo, verrà visualizzato un numero di versione errato.

Puoi anche scaricare un file README relativo alle modifiche più recenti all'agente e un file che indica il numero di versione attualmente disponibile per il download. Questi file si trovano nelle seguenti posizioni:

  • https://amazoncloudwatch-agent.s3.amazonaws.com/info/latest/RELEASE_NOTES o https://amazoncloudwatch-agent-region.s3.region.amazonaws.com/info/latest/RELEASE_NOTES

  • https://amazoncloudwatch-agent.s3.amazonaws.com/info/latest/CWAGENT_VERSION o https://amazoncloudwatch-agent-region.s3.region.amazonaws.com/amazoncloudwatch-agent-region/info/latest/CWAGENT_VERSION

Registri generati dall'agente CloudWatch

L'agente genera un log durante la sua esecuzione. Questo log include le informazioni relative alla risoluzione dei problemi. Questo log è il file amazon-cloudwatch-agent.log. Il percorso del file è /opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log nei server Linux e $Env:ProgramData\Amazon\AmazonCloudWatchAgent\Logs\amazon-cloudwatch-agent.log nei server che eseguono Windows Server.

Puoi configurare l'agente per registrare dettagli aggiuntivi nel file amazon-cloudwatch-agent.log. Nel file di configurazione dell'agente, nella agent sezione, imposta il debug campo sutrue, quindi riconfigura e riavvia l' CloudWatch agente. Per disattivare la registrazione di queste informazioni supplementari, imposta il campo debug su false. Quindi, riconfigura e riavvia l'agente. Per ulteriori informazioni, consulta Crea o modifica manualmente il file di configurazione dell' CloudWatch agente.

Nelle versioni 1.247350.0 e successive dell' CloudWatch agente, puoi facoltativamente impostare il aws_sdk_log_level campo nella agent sezione del file di configurazione dell'agente su una o più delle seguenti opzioni. Separare più opzioni con il carattere |.

  • LogDebug

  • LogDebugWithSigning

  • LogDebugWithHTTPBody

  • LogDebugRequestRetries

  • LogDebugWithEventStreamBody

Per ulteriori informazioni su queste opzioni, vedere. LogLevelType

Arresto e riavvio dell'agente CloudWatch

È possibile arrestare manualmente l' CloudWatch agente utilizzando una delle due AWS Systems Manager o la riga di comando.

Per arrestare l' CloudWatch agente, utilizzare Run Command
  1. Aprire la console Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel riquadro di navigazione seleziona Run Command.

    oppure

    Se la AWS Systems Manager home page si apre, scorri verso il basso e scegli Esplora Run Command.

  3. Seleziona Run command (Esegui comando).

  4. Nell'elenco dei documenti Command, scegli AmazonCloudWatch- ManageAgent.

  5. Nell'area Target, scegliete l'istanza in cui avete installato l' CloudWatch agente.

  6. Nell'elenco Action (Operazione), seleziona stop (arresta).

  7. Non compilare i campi Optional Configuration Source (Origine configurazione opzionale) e Optional Configuration Location (Percorso configurazione opzionale).

  8. Seleziona Esegui.

Per arrestare l' CloudWatch agente localmente utilizzando la riga di comando
  • In un server Linux, immetti quanto segue:

    sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a stop

    Su un server che esegue Windows Server, inserisci quanto segue PowerShell come amministratore:

    & $Env:ProgramFiles\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1 -m ec2 -a stop

Per riavviare l'agente, segui le istruzioni descritte in Avvia l'agente CloudWatch .