

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à.

# Raccogli metriche, log e tracce utilizzando l'agente CloudWatch
<a name="Install-CloudWatch-Agent"></a>

CloudWatch agent è un componente software che raccoglie metriche, log e tracce dalle istanze Amazon EC2, dai server locali e dalle applicazioni containerizzate. Consente di monitorare l'infrastruttura e le applicazioni in modo più completo rispetto al monitoraggio di base fornito per impostazione predefinita. 

**Vantaggi principali**
+ Raccolta di metriche a livello di sistema (CPU, memoria, disco, rete) 
+ Raccolta di metriche personalizzate dalle applicazioni dell'utente
+ Raccolta e centralizzazione dei log da varie origini
+ Monitora entrambi gli ambienti e quelli locali con un unico strumento AWS 
+ Configurazione di allarmi e notifiche in base ai dati raccolti 

L' CloudWatch agente consente di effettuare le seguenti operazioni:
+ Raccogliere parametri interni a livello di sistema dalle istanze Amazon EC2 tra sistemi operativi. Oltre a quelli delle istanze EC2, i parametri possono includere quelli in-guest. Gli ulteriori parametri che puoi raccogliere sono elencati in [Metriche raccolte dall'agente CloudWatch](metrics-collected-by-CloudWatch-agent.md).
+ Raccogliere parametri a livello di sistema dai server locali. Questi possono includere server in un ambiente ibrido e server non gestiti da AWS.
+ Recuperare i parametri personalizzati dalle applicazioni o dai servizi con i protocolli `StatsD` e `collectd`. `StatsD` è supportato dai server Linux e da quelli in cui è in esecuzione Windows Server. `collectd` è supportato solo dai server Linux.
+ Raccogliere log da istanze Amazon EC2 e server locali che eseguono Linux o Windows Server.
**Nota**  
L' CloudWatch agente non supporta la raccolta di log dalle pipe FIFO.
+ Invia i parametri a uno CloudWatch o ad Amazon Managed Service for Prometheus o a entrambi. Il file di configurazione CloudWatch dell'agente contiene un `metrics_destinations` parametro nella sezione. `metrics` Puoi specificare `cloudwatch`, `amp` o entrambi in questo parametro.
+ È possibile utilizzare la versione 1.300031.0 e successive per abilitare Application Signals. CloudWatch Per ulteriori informazioni, consulta [Segnali applicativi](CloudWatch-Application-Monitoring-Sections.md).
+ La versione 1.300025.0 e successive possono raccogliere tracce dal nostro client [OpenTelemetry](https://docs.aws.amazon.com/xray/latest/devguide/xray-instrumenting-your-app.html#xray-instrumenting-opentel)X-Ray SDKs e [inviarle a X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-instrumenting-your-app.html#xray-instrumenting-xray-sdk).

  L'utilizzo dell' CloudWatch agente consente di raccogliere tracce senza dover eseguire un demone di raccolta delle tracce separato, contribuendo a ridurre il numero di agenti che vengono eseguiti e gestiti.

Le metriche inviate a CloudWatch possono essere visualizzate CloudWatch come qualsiasi altra metrica. CloudWatch Lo spazio dei CloudWatch nomi predefinito per le metriche raccolte dall' CloudWatch agente è`CWAgent`, sebbene sia possibile specificare uno spazio dei nomi diverso quando si configura l'agente.

I log raccolti dall' CloudWatch agente vengono elaborati e archiviati in Amazon CloudWatch Logs, proprio come i log raccolti dal precedente CloudWatch agente Logs. Per informazioni sui prezzi di CloudWatch Logs, consulta la pagina dei [ CloudWatch prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing).

Le metriche raccolte dall' CloudWatch agente vengono fatturate come metriche personalizzate. Per ulteriori informazioni sui prezzi delle CloudWatch metriche, consulta la pagina dei [ CloudWatchprezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing).

L' CloudWatch agente è open source con licenza MIT ed è [ospitato su](https://github.com/aws/amazon-cloudwatch-agent/). GitHub Se desideri creare, personalizzare o contribuire all' CloudWatch agente, consulta il GitHub repository per le istruzioni più recenti. Se pensi di aver trovato un potenziale problema di sicurezza, non pubblicarlo su GitHub alcun forum pubblico. Segui invece le istruzioni in [Segnalazione delle vulnerabilità](https://aws.amazon.com/security/vulnerability-reporting/) o segui [direttamente la AWS sicurezza delle e-mail](mailto:aws-security@amazon.com).

È possibile scaricare e installare l' CloudWatch agente manualmente utilizzando la riga di comando oppure integrarlo con AWS Systems Manager. Il flusso generale di installazione dell' CloudWatch agente è il seguente:

1. Crea ruoli o utenti IAM che consentano all'agente di raccogliere metriche dal server e, facoltativamente, di integrarsi con AWS Systems Manager.

1. Download del pacchetto dell'agente.

1. Modifica il file di configurazione CloudWatch dell'agente e specifica le metriche che desideri raccogliere.

1. Installazione e avvio dell'agente sui server.

**Topics**
+ [Sistemi operativi supportati](supported-operating-systems.md)
+ [Prerequisiti](prerequisites.md)
+ [Scarica il pacchetto dell'agente CloudWatch](download-CloudWatch-Agent-on-EC2-Instance-commandline-first.md)
+ [Verifica della firma del pacchetto dell'agente CloudWatch](verify-CloudWatch-Agent-Package-Signature.md)
+ [Installazione dell'agente CloudWatch](install-CloudWatch-Agent-on-EC2-Instance.md)
+ [Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux](CloudWatch-Agent-SELinux.md)
+ [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md)
+ [Avvio dell'agente CloudWatch](start-CloudWatch-Agent-on-premise-SSM-onprem.md)
+ [Metriche raccolte dall'agente CloudWatch](metrics-collected-by-CloudWatch-agent.md)
+ [Utilizzo dell'agente con la relativa telemetria CloudWatch](CloudWatch-Agent-RelatedEntities.md)
+ [Scenari comuni con l' CloudWatch agente](CloudWatch-Agent-common-scenarios.md)
+ [CloudWatch preferenza per le credenziali dell'agente](CloudWatch-Agent-Credentials-Preference.md)
+ [Risoluzione dei problemi relativi all'agente CloudWatch](troubleshooting-CloudWatch-Agent.md)

# Sistemi operativi supportati
<a name="supported-operating-systems"></a>

L' CloudWatch agente è supportato sui seguenti sistemi operativi:

## Architettura x86-64
<a name="x86-64-support"></a>
+ Amazon Linux 2023
+ Amazon Linux 2
+ Versioni di Ubuntu Server 25.04, 24.04 e 22.04
+ Red Hat Enterprise Linux (RHEL) versioni 10, 9 e 8
+ Versione Debian 12
+ SUSE Linux Enterprise Server (SLES) versione 15
+ Oracle Linux versioni 9 e 8
+ AlmaLinux versioni 10, 9 e 8
+ Versioni Rocky Linux 10, 9 e 8
+ Computer macOS: istanze EC2 M1 Mac1 e computer che eseguono macOS 14 (Sonoma), macOS 13 (Ventura) e macOS 12 (Monterey)
+ Windows Server 2025, Windows Server 2022, Windows Server 2019 e Windows Server 2016
+ Windows 11
+ Windows 10 a 64 bit

## ARM64 architettura
<a name="arm64-support"></a>
+ Amazon Linux 2023
+ Amazon Linux 2
+ Ubuntu Server versione 22.04
+ Red Hat Enterprise Linux (RHEL) versioni 9 e 8
+ Versione Debian 12
+ SUSE Linux Enterprise Server 15
+ Computer macOS: macOS 14 (Sonoma), macOS 13 (Ventura) e macOS 12 (Monterey)

# Prerequisiti
<a name="prerequisites"></a>

Assicuratevi che i seguenti prerequisiti siano soddisfatti prima di installare l' CloudWatch agente per la prima volta.

## Ruoli e utenti IAM per l'agente CloudWatch
<a name="iam-setup"></a>

L'accesso alle AWS risorse richiede autorizzazioni. Crei un ruolo IAM, un utente IAM o entrambi per concedere le autorizzazioni su cui l' CloudWatch agente deve scrivere le metriche. CloudWatch

### Creazione di un ruolo IAM per le istanze Amazon EC2
<a name="iam-role-ec2"></a>

Se intendi eseguire l' CloudWatch agente su istanze Amazon EC2, crea un ruolo IAM con le autorizzazioni necessarie.

1. Accedi alla console di AWS gestione e apri la console IAM all'indirizzo. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Nel pannello di navigazione, scegli **Ruoli** e quindi **Crea ruolo**.

1. Assicurati di aver selezionato **AWS service** (Servizio) in **Trusted entity type** (Tipo di entità attendibile).

1. Per **Caso d'uso**, seleziona **EC2** in **Casi d'uso comuni**.

1. Scegli **Next (Successivo)**.

1. Nell'elenco delle politiche, seleziona la casella di controllo accanto a **CloudWatchAgentServerPolicy**. Se necessario, utilizzare la casella di ricerca per trovare la policy.

1. Scegli **Next (Successivo)**.

1. In **Nome del ruolo**, inserisci un nome per il ruolo, ad esempio `CloudWatchAgentServerRole`. Se desiderato, fornire una descrizione. Quindi seleziona **Create role (Crea ruolo)**.

(Facoltativo) Se l'agente intende inviare i log a CloudWatch Logs e desideri che sia in grado di impostare le politiche di conservazione per questi gruppi di log, devi aggiungere l'`logs:PutRetentionPolicy`autorizzazione al ruolo.

### Creazione di un utente IAM per i server on-premises
<a name="iam-user-onprem"></a>

Se intendi eseguire l' CloudWatch agente su server locali, crea un utente IAM con le autorizzazioni necessarie.

**Nota**  
Questo scenario richiede agli utenti IAM un accesso programmatico e credenziali a lungo termine, il che rappresenta un rischio per la sicurezza. Per ridurre questo rischio, si consiglia di fornire a questi utenti solo le autorizzazioni necessarie per eseguire l'attività e di rimuoverli quando non sono più necessari.

1. Accedi alla console di AWS gestione e apri la console IAM all'indirizzo. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)

1. Nel pannello di navigazione, seleziona **Utenti**, quindi seleziona **Aggiungi utenti**.

1. Immetti il nome del nuovo utente.

1. Seleziona **Access key - Programmatic access** (Chiave di accesso - Accesso programmatico) e scegli **Next: Permissions** (Successivo: Autorizzazioni).

1. Scegli **Attach existing policies directly (Collega direttamente le policy esistenti)**.

1. Nell'elenco delle politiche, seleziona la casella di controllo accanto a **CloudWatchAgentServerPolicy**. Se necessario, utilizzare la casella di ricerca per trovare la policy.

1. Scegli **Successivo: Tag**.

1. Facoltativamente, crea i tag per il nuovo utente IAM, quindi scegli **Successivo: rivedi**.

1. Conferma che sia elencata la policy corretta, quindi scegli **Create user** (Crea utente).

1. Accanto al nome del nuovo utente, seleziona **Show** (Mostra). Copiare la chiave di accesso e la chiave segreta in un file, in modo da poterle utilizzare durante l'installazione dell'agente. Scegli **Chiudi**.

### Collegamento di un ruolo IAM a un'istanza Amazon EC2
<a name="attach-iam-role"></a>

Per consentire all' CloudWatch agente di inviare dati da un'istanza Amazon EC2, devi collegare il ruolo IAM che hai creato all'istanza.

Per ulteriori informazioni sul collegamento di un ruolo IAM a un'istanza, consulta [Attaching an IAM Role to an Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/iam-roles-for-amazon-ec2.html#attach-iam-role) nella Guida per l'utente di Amazon Elastic Compute Cloud.

### Consentire all' CloudWatch agente di impostare una politica di conservazione dei log
<a name="CloudWatch-Agent-PutLogRetention"></a>

È possibile configurare l' CloudWatch agente per impostare la politica di conservazione per i gruppi di log a cui invia gli eventi di registro. Se esegui questa operazione, devi concedere l'autorizzazione `logs:PutRetentionPolicy` al ruolo o all'utente IAM utilizzato dall'agente. L'agente utilizza un ruolo IAM per l'esecuzione su istanze Amazon EC2 e un utente IAM per i server on-premise.

**Per concedere al ruolo IAM dell' CloudWatch agente l'autorizzazione a impostare le politiche di conservazione dei log**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel pannello di navigazione a sinistra, seleziona **Ruoli**.

1. Nella casella di ricerca, digita l'inizio del nome del ruolo IAM dell' CloudWatch agente. Hai scelto questo nome al momento della creazione del ruolo. Potrebbe essere denominato `CloudWatchAgentServerRole`.

   Quando viene visualizzato il nome del ruolo in questione, sceglilo.

1. Nella scheda **Permissions** (Autorizzazioni), scegli **Add permissions** (Aggiungi autorizzazioni), **Create inline policy** (Crea policy in linea).

1. Scegli la scheda **JSON** e copia la seguente policy nella casella, sostituendo il JSON predefinito:

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "logs:PutRetentionPolicy",
         "Resource": "*"
       }
     ]
   }
   ```

------

1. Scegliere **Esamina policy**.

1. Nel campo **Name** (Nome), inserisci **CloudWatchAgentPutLogsRetention** o un nome simile e scegli **Create policy** (Crea policy).

**Per concedere all'utente IAM dell' CloudWatch agente l'autorizzazione a impostare le politiche di conservazione dei log**

1. Accedi Console di gestione AWS e apri la console IAM all'indirizzo [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Nel riquadro di navigazione a sinistra, seleziona **Users (Utenti)**.

1. Nella casella di ricerca, digita l'inizio del nome dell'utente IAM dell' CloudWatch agente. Hai scelto questo nome al momento della creazione dell'utente.

   Quando vedi l'utente, scegli il suo nome.

1. Nella scheda **Permissions (Autorizzazioni)** scegli **Add inline policy (Aggiungi policy inline)**.

1. Scegli la scheda **JSON** e copia la seguente policy nella casella, sostituendo il JSON predefinito:

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": "logs:PutRetentionPolicy",
         "Resource": "*"
       }
     ]
   }
   ```

------

1. Scegliere **Esamina policy**.

1. Nel campo **Name** (Nome), inserisci **CloudWatchAgentPutLogsRetention** o un nome simile e scegli **Create policy** (Crea policy).

## Requisiti di rete
<a name="network-requirements"></a>

**Nota**  
Quando il server si trova in una sottorete pubblica, assicurati che sia possibile accedere a un gateway Internet. Quando il server si trova in una sottorete privata, l'accesso avviene tramite i gateway NAT o l'endpoint VPC. Per ulteriori informazioni sui gateway NAT, consulta [https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html).

Le istanze Amazon EC2 devono disporre dell'accesso a Internet in uscita per inviare dati ai nostri log. CloudWatch CloudWatch Per ulteriori informazioni su come configurare l'accesso a Internet, consulta [Internet Gateways](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) nella Guida per l'utente di Amazon VPC.

### Utilizzo di endpoint VPC
<a name="vpc-endpoints"></a>

Se utilizzi un VPC e desideri utilizzare un CloudWatch agente senza accesso pubblico a Internet, puoi configurare gli endpoint VPC per e Logs. CloudWatch CloudWatch 

Gli endpoint e le porte per configurare il proxy sono i seguenti:
+ Se utilizzi l'agente per raccogliere metriche, devi aggiungere gli CloudWatch endpoint per le regioni appropriate all'elenco delle aree consentite. Questi endpoint sono elencati negli [ CloudWatchendpoint e nelle quote di Amazon](https://docs.aws.amazon.com/general/latest/gr/cw_region.html).
+ Se utilizzi l'agente per raccogliere i log, devi aggiungere gli endpoint Logs per le regioni CloudWatch appropriate all'elenco delle regioni consentite. Questi endpoint sono elencati negli [endpoint e nelle quote di Amazon CloudWatch Logs.](https://docs.aws.amazon.com/general/latest/gr/cwl_region.html)
+ Se stai utilizzando System Manager per installare l'agente o Parameter Store per archiviare il file di configurazione, devi aggiungere gli endpoint Systems Manager per le regioni appropriate all'elenco consentiti. Questi endpoint sono riportati in [AWS Systems Manager endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/ssm.html).

# Scarica il pacchetto dell'agente CloudWatch
<a name="download-CloudWatch-Agent-on-EC2-Instance-commandline-first"></a>

**Nota**  
Per scaricare l' CloudWatch agente, la connessione deve utilizzare TLS 1.2 o versione successiva.

L' CloudWatch agente è disponibile come pacchetto in Amazon Linux 2023 e Amazon Linux 2. Se utilizzi questo sistema operativo, è possibile installare il pacchetto immettendo il seguente comando. È inoltre necessario assicurarsi che il ruolo IAM associato all'istanza abbia l'**CloudWatchAgentServerPolicy**allegato. 

```
sudo yum install amazon-cloudwatch-agent
```

Su tutti i sistemi operativi supportati, puoi scaricare e installare l' CloudWatchagente utilizzando la riga di comando.

Per ogni link di download, è disponibile un link generale e collegamenti per ogni AWS regione.

Se utilizzi i link specifici della regione, sostituisci la regione predefinita (*us-east-1*) con la regione appropriata per il tuo account. Ad esempio, per Amazon Linux 2023, Amazon Linux 2 e l'architettura x86-64, tre dei collegamenti per il download validi sono:
+ `https://amazoncloudwatch-agent.s3.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm`
+ `https://amazoncloudwatch-agent-us-east-1.s3.us-east-1.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm`
+ `https://amazoncloudwatch-agent-eu-central-1.s3.eu-central-1.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm`

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

**Nota**  
Se utilizzi i link specifici della regione, sostituisci la regione predefinita (*us-east-1*) con la regione appropriata per il tuo account.
+ `https://amazoncloudwatch-agent.s3.amazonaws.com/info/latest/RELEASE_NOTES` o `https://amazoncloudwatch-agent-us-east-1.s3.us-east-1.amazonaws.com/info/latest/RELEASE_NOTES`
+ `https://amazoncloudwatch-agent.s3.amazonaws.com/info/latest/CWAGENT_VERSION` o `https://amazoncloudwatch-agent-us-east-1.s3.us-east-1.amazonaws.com/info/latest/CWAGENT_VERSION`


| Architecture | Platform (Piattaforma) | Collegamento per il download | Collegamento al file di firma | 
| --- | --- | --- | --- | 
|  x86-64 |  Amazon Linux 2023 e Amazon Linux 2  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Centos  |  https://amazoncloudwatch-agent.s3.amazonaws.com/centos/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/centos/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/centos/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/centos/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Redhat  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  SUSE  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Debian  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amd64/latest/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/amd64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amazon-cloudwatch-agentamd64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/amd64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  x86-64 |  Ubuntu  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amd64/latest/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amazon-cloudwatch-agentamd64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  x86-64 |  Oracle  |  https://amazoncloudwatch-agent.s3.amazonaws.com/oracle\$1linux/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/oracle\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/oracle\$1linux/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/oracle\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  macOS  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amd64/latest/ .pkg amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/amd64/latest/amazon-cloudwatch-agent.pkg  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amd64/latest/ .pkg.sig amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/amd64/latest/amazon-cloudwatch-agent.pkg.sig  | 
|  x86-64 |  Windows  |  https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/ .msi amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/windows/amd64/latest/amazon-cloudwatch-agent.msi  |   https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/ .msi.sig amazon-cloudwatch-agent  https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/windows/amd64/latest/amazon-cloudwatch-agent.msi.sig  | 
|  ARM64 |  Amazon Linux 2023 e Amazon Linux 2  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/arm64/più recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  ARM64 |  Redhat  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/arm64/più recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  ARM64 |  Ubuntu  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/arm64/recente/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/arm64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amazon-cloudwatch-agentarm64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/arm64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  ARM64 |  Debian  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/arm64/recente/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/arm64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amazon-cloudwatch-agentarm64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/arm64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  ARM64 |  SUSE  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/arm64/recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  ARM64 |  MacOS  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/arm64/recente/ .pkg amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/arm64/latest/amazon-cloudwatch-agent.pkg  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amazon-cloudwatch-agentarm64/recente/ .pkg.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/arm64/latest/amazon-cloudwatch-agent.pkg.sig  | 

# Verifica della firma del pacchetto dell'agente CloudWatch
<a name="verify-CloudWatch-Agent-Package-Signature"></a>

 I file di firma GPG sono inclusi per i pacchetti di CloudWatch agenti sui server Linux. Puoi utilizzare una chiave pubblica per verificare che il file di download dell'agente sia originale e non modificato. 

 Per Windows Server, puoi utilizzare l'MSI per verificare la firma. Per i computer macOS, la firma è inclusa nel pacchetto di download dell'agente. 

 Per trovare il file della firma corretto, utilizza la tabella seguente. Per ogni architettura e sistema operativo vengono forniti un collegamento generale e collegamenti per ogni Regione. 

Se utilizzi i link specifici della regione, sostituisci la regione predefinita (*us-east-1*) con la regione appropriata per il tuo account. Ad esempio, per Amazon Linux 2023, Amazon Linux 2 e l'architettura x86-64, tre dei collegamenti validi sono:
+ `https://amazoncloudwatch-agent.s3.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm.sig`
+ `https://amazoncloudwatch-agent-us-east-1.s3.us-east-1.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm`
+ `https://amazoncloudwatch-agent-eu-central-1.s3.eu-central-1.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm`

**Nota**  
Per scaricare l' CloudWatch agente, la connessione deve utilizzare TLS 1.2 o versione successiva.


| Architecture | Platform (Piattaforma) | Collegamento per il download | Collegamento al file di firma | 
| --- | --- | --- | --- | 
|  x86-64 |  Amazon Linux 2023 e Amazon Linux 2  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amazon-cloudwatch-agentamd64/latest/ .rpm https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Centos  |  https://amazoncloudwatch-agent.s3.amazonaws.com/centos/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/centos/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/centos/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/centos/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Redhat  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  SUSE  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  Debian  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amd64/latest/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/amd64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amazon-cloudwatch-agentamd64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/amd64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  x86-64 |  Ubuntu  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amd64/latest/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amazon-cloudwatch-agentamd64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/amd64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  x86-64 |  Oracle  |  https://amazoncloudwatch-agent.s3.amazonaws.com/oracle\$1linux/amd64/latest/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/oracle\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/oracle\$1linux/amazon-cloudwatch-agentamd64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/oracle\$1linux/amd64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  x86-64 |  macOS  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amd64/latest/ .pkg amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/amd64/latest/amazon-cloudwatch-agent.pkg  |  https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amd64/latest/ .pkg.sig amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/darwin/amd64/latest/amazon-cloudwatch-agent.pkg.sig  | 
|  x86-64 |  Windows  |  https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/ .msi amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/windows/amd64/latest/amazon-cloudwatch-agent.msi  |   https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/ .msi.sig amazon-cloudwatch-agent  https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/windows/amd64/latest/amazon-cloudwatch-agent.msi.sig  | 
|  ARM64 |  Amazon Linux 2023 e Amazon Linux 2  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/arm64/più recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/amazon\$1linux/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/amazon\$1linux/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  ARM64 |  Redhat  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/arm64/più recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/redhat/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/redhat/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 
|  ARM64 |  Ubuntu  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/arm64/recente/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/arm64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/ubuntu/amazon-cloudwatch-agentarm64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/ubuntu/arm64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  ARM64 |  Debian  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/arm64/recente/ .deb amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/arm64/latest/amazon-cloudwatch-agent.deb  |  https://amazoncloudwatch-agent.s3.amazonaws.com/debian/amazon-cloudwatch-agentarm64/recente/ .deb.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/debian/arm64/latest/amazon-cloudwatch-agent.deb.sig  | 
|  ARM64 |  SUSE  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/arm64/recente/ .rpm amazon-cloudwatch-agent https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/arm64/latest/amazon-cloudwatch-agent.rpm  |  https://amazoncloudwatch-agent.s3.amazonaws.com/suse/amazon-cloudwatch-agentarm64/recente/ .rpm.sig https://amazoncloudwatch-agent - .s3. *us-east-1* *us-east-1*.amazonaws. com/suse/arm64/latest/amazon-cloudwatch-agent.rpm.sig  | 

**Per verificare il pacchetto dell'agente su un server Linux CloudWatch**

1. Scarica la chiave pubblica.

   ```
   shell$ wget https://amazoncloudwatch-agent.s3.amazonaws.com/assets/amazon-cloudwatch-agent.gpg
   ```

1. Importa la chiave pubblica nel tuo keyring.

   ```
   shell$  gpg --import amazon-cloudwatch-agent.gpg
   gpg: key 3B789C72: public key "Amazon CloudWatch Agent" imported
   gpg: Total number processed: 1
   gpg: imported: 1 (RSA: 1)
   ```

   Prendi nota del valore della chiave poiché sarà necessario nella fase successiva. Nell'esempio precedente, il valore della chiave è `3B789C72`.

1. Verificate l'impronta digitale eseguendo il comando seguente, sostituendolo *key-value* con il valore del passaggio precedente:

   ```
   shell$  gpg --fingerprint key-value
   pub   2048R/3B789C72 2017-11-14
         Key fingerprint = 9376 16F3 450B 7D80 6CBD  9725 D581 6730 3B78 9C72
   uid                  Amazon CloudWatch Agent
   ```

   La stringa dell'impronta deve essere uguale alla seguente:

   `9376 16F3 450B 7D80 6CBD 9725 D581 6730 3B78 9C72`

   Se la stringa dell'impronta non corrisponde, non installare l'agente. Contatta Amazon Web Services.

   Dopo aver verificato l'impronta, puoi utilizzarla per verificare la firma del pacchetto dell'agente di CloudWatch .

1. Scarica il file della firma del pacchetto utilizzando **wget**. Per determinare il file della firma corretto, consulta la tabella precedente.

   ```
   wget Signature File Link
   ```

1. Per verificare la firma, esegui **gpg --verify**.

   ```
   shell$ gpg --verify signature-filename agent-download-filename
   gpg: Signature made Wed 29 Nov 2017 03:00:59 PM PST using RSA key ID 3B789C72
   gpg: Good signature from "Amazon CloudWatch Agent"
   gpg: WARNING: This key is not certified with a trusted signature!
   gpg:          There is no indication that the signature belongs to the owner.
   Primary key fingerprint: 9376 16F3 450B 7D80 6CBD  9725 D581 6730 3B78 9C72
   ```

   Se l'output include la frase `BAD signature`, controllare di avere eseguito la procedura correttamente. Se continui a ottenere questa risposta, contatta Amazon Web Services ed evita di utilizzare il file scaricato.

   Prendi nota dell'avviso sulla trust. Una chiave è considerata attendibile solo se è stata firmata dall'utente o da un firmatario fidato. Questo non significa che la firma non sia valida, ma soltanto che la chiave pubblica non è stata verificata.

**Per verificare il pacchetto dell' CloudWatch agente su un server che esegue Windows Server**

1. Scarica e installa GnuPG per Windows da [https://gnupg.org/download/](https://gnupg.org/download/). Durante l'installazione, includete l'opzione **Shell Extension (GpgEx)**.

   È possibile eseguire i passaggi rimanenti in Windows PowerShell.

1. Scarica la chiave pubblica.

   ```
   PS> wget https://amazoncloudwatch-agent.s3.amazonaws.com/assets/amazon-cloudwatch-agent.gpg -OutFile amazon-cloudwatch-agent.gpg
   ```

1. Importa la chiave pubblica nel tuo keyring.

   ```
   PS>  gpg --import amazon-cloudwatch-agent.gpg
   gpg: key 3B789C72: public key "Amazon CloudWatch Agent" imported
   gpg: Total number processed: 1
   gpg: imported: 1 (RSA: 1)
   ```

   Prendere nota del valore della chiave poiché sarà necessario nella fase successiva. Nell'esempio precedente, il valore della chiave è `3B789C72`.

1. Verificate l'impronta digitale eseguendo il comando seguente, sostituendolo *key-value* con il valore del passaggio precedente:

   ```
   PS>  gpg --fingerprint key-value
   pub   rsa2048 2017-11-14 [SC]
         9376 16F3 450B 7D80 6CBD  9725 D581 6730 3B78 9C72
   uid           [ unknown] Amazon CloudWatch Agent
   ```

   La stringa dell'impronta deve essere uguale alla seguente:

   `9376 16F3 450B 7D80 6CBD 9725 D581 6730 3B78 9C72`

   Se la stringa dell'impronta non corrisponde, non installare l'agente. Contatta Amazon Web Services.

   Dopo aver verificato l'impronta, puoi utilizzarla per verificare la firma del pacchetto dell'agente di CloudWatch .

1. Scarica il file della firma del pacchetto tramite wget. Per stabilire il file della firma corretto, consulta [Collegamento per il download dell'agente di CloudWatch ](download-CloudWatch-Agent-on-EC2-Instance-commandline-first.md#agent-download-link-table).

1. Per verificare la firma, esegui **gpg --verify**.

   ```
   PS> gpg --verify sig-filename agent-download-filename
   gpg: Signature made 11/29/17 23:00:45 Coordinated Universal Time
   gpg:                using RSA key D58167303B789C72
   gpg: Good signature from "Amazon CloudWatch Agent" [unknown]
   gpg: WARNING: This key is not certified with a trusted signature!
   gpg:          There is no indication that the signature belongs to the owner.
   Primary key fingerprint: 9376 16F3 450B 7D80 6CBD  9725 D581 6730 3B78 9C72
   ```

   Se l'output include la frase `BAD signature`, controllare di avere eseguito la procedura correttamente. Se continui a ottenere questa risposta, contatta Amazon Web Services ed evita di utilizzare il file scaricato.

   Prendi nota dell'avviso sulla trust. Una chiave è considerata attendibile solo se è stata firmata dall'utente o da un firmatario fidato. Questo non significa che la firma non sia valida, ma soltanto che la chiave pubblica non è stata verificata.

**Per verificare il pacchetto CloudWatch dell'agente su un computer macOS**
+ Sono disponibili due metodi per la verifica della firma in macOS.
  + Verifica l'impronta digitale eseguendo il seguente comando:

    ```
    pkgutil --check-signature amazon-cloudwatch-agent.pkg
    ```

    Viene visualizzato un risultato simile a quello seguente.

    ```
    Package "amazon-cloudwatch-agent.pkg":
            Status: signed by a developer certificate issued by Apple for distribution
            Signed with a trusted timestamp on: 2020-10-02 18:13:24 +0000
            Certificate Chain:
            1. Developer ID Installer: AMZN Mobile LLC (94KV3E626L)
            Expires: 2024-10-18 22:31:30 +0000
            SHA256 Fingerprint:
            81 B4 6F AF 1C CA E1 E8 3C 6F FB 9E 52 5E 84 02 6E 7F 17 21 8E FB
            0C 40 79 13 66 8D 9F 1F 10 1C
            ------------------------------------------------------------------------
            2. Developer ID Certification Authority
            Expires: 2027-02-01 22:12:15 +0000
            SHA256 Fingerprint:
            7A FC 9D 01 A6 2F 03 A2 DE 96 37 93 6D 4A FE 68 09 0D 2D E1 8D 03
            F2 9C 88 CF B0 B1 BA 63 58 7F
            ------------------------------------------------------------------------
            3. Apple Root CA
            Expires: 2035-02-09 21:40:36 +0000
            SHA256 Fingerprint:
            B0 B1 73 0E CB C7 FF 45 05 14 2C 49 F1 29 5E 6E DA 6B CA ED 7E 2C
            68 C5 BE 91 B5 A1 10 01 F0 24
    ```
  + In alternativa, scarica e usa il file .sig. Per utilizzare questo metodo, procedi come segue.

    1. Installa l'applicazione GPG sull'host macOS inserendo il seguente comando.

      ```
      brew install GnuPG
      ```
  + Scarica il file della firma del pacchetto utilizzando curl. Per stabilire il file della firma corretto, consulta [Collegamento per il download dell'agente di CloudWatch ](download-CloudWatch-Agent-on-EC2-Instance-commandline-first.md#agent-download-link-table).
  + Per verificare la firma, esegui **gpg --verify**.

    ```
    PS> gpg --verify sig-filename agent-download-filename
    gpg: Signature made 11/29/17 23:00:45 Coordinated Universal Time
    gpg:                using RSA key D58167303B789C72
    gpg: Good signature from "Amazon CloudWatch Agent" [unknown]
    gpg: WARNING: This key is not certified with a trusted signature!
    gpg:          There is no indication that the signature belongs to the owner.
    Primary key fingerprint: 9376 16F3 450B 7D80 6CBD  9725 D581 6730 3B78 9C72
    ```

    Se l'output include la frase `BAD signature`, controllare di avere eseguito la procedura correttamente. Se continui a ottenere questa risposta, contatta Amazon Web Services ed evita di utilizzare il file scaricato.

    Prendi nota dell'avviso sulla trust. Una chiave è considerata attendibile solo se è stata firmata dall'utente o da un firmatario fidato. Questo non significa che la firma non sia valida, ma soltanto che la chiave pubblica non è stata verificata.

# Installazione dell'agente CloudWatch
<a name="install-CloudWatch-Agent-on-EC2-Instance"></a>

Puoi installare l' CloudWatch agente sulle tue istanze Amazon EC2, sui server locali e in ambienti containerizzati per raccogliere parametri, log e tracce. L'agente supporta i sistemi operativi Linux, Windows e macOS. Esistono diversi modi per installare l'agente, tra cui l'utilizzo di Systems Manager, dalla CloudWatch console, l'installazione dalla riga di comando o l'installazione tramite un file di configurazione. Prima dell'installazione, assicurati di aver configurato le autorizzazioni IAM necessarie e l'accesso alla rete.

**Topics**
+ [Installa e configura Amazon CloudWatch Agent con Workload Detection nella console CloudWatch](install-cloudwatch-agent-workload-detection.md)
+ [Installazione manuale su Amazon EC2](manual-installation.md)
+ [Installa l' CloudWatch agente utilizzando AWS Systems Manager](installing-cloudwatch-agent-ssm.md)
+ [Installa l' CloudWatch agente sui server locali](install-CloudWatch-Agent-on-premise.md)
+ [Installa l' CloudWatch agente su nuove istanze utilizzando CloudFormation](Install-CloudWatch-Agent-New-Instances-CloudFormation.md)
+ [Installa l' CloudWatch agente con il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Helm](install-CloudWatch-Observability-EKS-addon.md)

# Installa e configura Amazon CloudWatch Agent con Workload Detection nella console CloudWatch
<a name="install-cloudwatch-agent-workload-detection"></a>

## Introduzione
<a name="workload-detection-introduction"></a>

Puoi utilizzare la console CloudWatch Getting Started per installare e configurare l' CloudWatch agente sulle istanze Amazon EC2. L' CloudWatch agente Amazon è un componente software leggero che raccoglie parametri, log e tracce a livello di sistema dalle istanze Amazon EC2. Automatizzando la raccolta e la consegna dei dati di monitoraggio a CloudWatch, l'agente consente di ottenere informazioni utili, ottimizzare l'utilizzo delle risorse e garantire il corretto funzionamento delle applicazioni con uno sforzo di configurazione minimo.

Configura l' CloudWatch agente con configurazioni predefinite e specifiche del carico di lavoro che sfruttano il rilevamento automatico del carico di lavoro per identificare le applicazioni e i servizi in esecuzione sulle istanze. È possibile personalizzare la raccolta dei dati con metriche, log e tracce specifici, in modo da monitorare le prestazioni delle applicazioni e risolvere i problemi in modo efficace.

## Come funziona
<a name="workload-detection-how-it-works"></a>

L' CloudWatch agente rileva i carichi di lavoro in esecuzione sulle istanze Amazon EC2 tramite funzionalità di rilevamento automatico del carico di lavoro. Questa funzionalità identifica le applicazioni e i servizi in esecuzione sulle istanze, abilitando il monitoraggio intelligente senza configurazione manuale.

Le soluzioni di osservabilità forniscono configurazioni predefinite e specifiche per i carichi di lavoro, personalizzate per applicazioni comuni come Apache Kafka, Apache Tomcat, Java Virtual Machines (JVM), NGINX e carichi di lavoro GPU NVIDIA. Queste soluzioni semplificano la configurazione del monitoraggio raccogliendo automaticamente le metriche, i log e le tracce corretti specifici per ogni carico di lavoro rilevato, eliminando la necessità di strumentazione e configurazione manuali.

Quando il rilevamento del carico di lavoro è abilitato, l'agente analizza l'ambiente dell'istanza e seleziona automaticamente i modelli di monitoraggio preconfigurati pertinenti. Queste configurazioni sono ottimizzate da esperti in AWS materia per acquisire i dati di telemetria più importanti per ogni tipo di carico di lavoro, garantendo un'osservabilità completa sin dall'inizio.

## Prerequisiti
<a name="workload-detection-prerequisites"></a>

### Installazione dell'agente SSM (richiesta)
<a name="ssm-agent-installation"></a>

È necessario che l'agente AWS Systems Manager (SSM) sia installato sulle istanze Amazon EC2. L'agente SSM è preinstallato sulla maggior parte delle Amazon Machine Images AMIs () AWS fornite. Se devi installare o aggiornare manualmente l'agente SSM, consulta la documentazione di Systems [Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html).

**Nota**  
Default Host Management Configuration (DHMC) è una funzionalità di Systems Manager che concede automaticamente alle istanze Amazon EC2 le autorizzazioni per connettersi a Systems Manager senza richiedere il collegamento manuale di un profilo di istanza IAM a ciascuna istanza. Se le istanze Amazon EC2 utilizzano DHMC e il processo di installazione dell' CloudWatch agente associa la CloudWatch policy alle istanze, possono essere necessari fino a 30 minuti prima che la nuova policy abbia effetto. Questo ritardo può posticipare la pubblicazione di metriche, log e tracce a. CloudWatch [Per mitigare la situazione, puoi creare le tue istanze Amazon EC2 con un ruolo IAM che contiene la policy di Amazon. SSMManaged InstanceCore](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html)

### Rilevamento del carico di lavoro (consigliato)
<a name="workload-detection-recommended"></a>

Il rilevamento del carico di lavoro è una funzionalità opzionale che identifica automaticamente le applicazioni e i servizi in esecuzione sulle istanze. Ti consigliamo di attivare il rilevamento del carico di lavoro per sfruttare i modelli di monitoraggio preconfigurati e specifici per il carico di lavoro. [Puoi abilitare il rilevamento del carico di lavoro nelle impostazioni della console. CloudWatch ](https://console.aws.amazon.com/cloudwatch/home#settings)

## Nozioni di base
<a name="workload-detection-getting-started"></a>

Apri la pagina Getting Started with Amazon CloudWatch agent nella CloudWatch console Amazon: [https://console.aws.amazon.com/cloudwatch/home \$1cloudwatch -agent](https://console.aws.amazon.com/cloudwatch/home#cloudwatch-agent)

**Distribuzione manuale delle istanze per Agent CloudWatch **

Seleziona manualmente fino a 50 istanze per l'installazione e la configurazione dell' CloudWatch agente. Questo approccio mirato consente di migliorare il monitoraggio per istanze Amazon EC2 specifiche.

**Distribuzione basata su tag per Agent CloudWatch **

Utilizza la distribuzione basata su tag per installare e configurare l' CloudWatch agente su flotte di istanze Amazon EC2. Questo metodo si applica a tutte le istanze attuali e future con tag corrispondenti.

**Configurazione basata su tag**

Le configurazioni basate su tag consentono di organizzare, visualizzare e modificare in modo efficiente le configurazioni, aiutandoti a gestire l' CloudWatch agente e la sua configurazione tra flotte di istanze Amazon EC2.

**CloudWatch installazione dell'agente**

Installa l' CloudWatch agente per raccogliere parametri, log e tracce dalle istanze Amazon EC2 e dagli host locali. Questa telemetria fornisce importanti dati sullo stato e sulle prestazioni dell'infrastruttura e delle applicazioni.

**CloudWatch configurazione dell'agente**

Configura l' CloudWatch agente con configurazioni predefinite e specifiche del carico di lavoro. È possibile personalizzare la raccolta dei dati con metriche, log e tracce specifici, in modo da monitorare le prestazioni delle applicazioni e risolvere i problemi in modo efficace.

## Costi
<a name="workload-detection-costs"></a>

I parametri aggiuntivi inseriti durante questo processo vengono fatturati come parametri personalizzati. Per ulteriori informazioni sui prezzi delle CloudWatch metriche, consulta la pagina dei [ CloudWatch prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing).

# Installazione manuale su Amazon EC2
<a name="manual-installation"></a>

**Nota**  
Assicurati che i prerequisiti siano soddisfatti prima di installare l' CloudWatch agente per la prima volta.

**Topics**
+ [Installazione su Amazon Linux utilizzando il gestore di pacchetti](#amazon-linux-package)
+ [Installazione su Amazon Linux tramite la riga di comando](#linux-manual-install)
+ [Installazione su Windows](#windows-installation)
+ [Installazione su macOS](#macos-installation)

## Installazione su Amazon Linux utilizzando il gestore di pacchetti
<a name="amazon-linux-package"></a>

L' CloudWatch agente è disponibile come pacchetto in Amazon Linux 2023 e Amazon Linux 2. Se utilizzi uno di questi sistemi operativi, è possibile installare il pacchetto immettendo il seguente comando:

```
sudo yum install amazon-cloudwatch-agent
```

È inoltre necessario assicurarsi che il ruolo IAM associato all'istanza abbia l'**CloudWatchAgentServerPolicy**allegato.

## Installazione su Amazon Linux tramite la riga di comando
<a name="linux-manual-install"></a>

Su tutti i sistemi operativi Linux supportati, puoi scaricare e installare l' CloudWatch agente utilizzando la riga di comando.

1. Scarica l' CloudWatch agente. In un server Linux, immetti il comando seguente. Per `download-link`, usa il link di download appropriato nella tabella seguente.

   ```
   wget download-link
   ```    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonCloudWatch/latest/monitoring/manual-installation.html)

1. Dopo aver scaricato il pacchetto, puoi eventualmente verificare la firma del pacchetto. Per ulteriori informazioni, consulta la pagina [Verifica della firma del pacchetto dell'agente CloudWatch](verify-CloudWatch-Agent-Package-Signature.md).

1. Installare il pacchetto . Se è stato scaricato un pacchetto RPM su un server Linux, passa alla directory contenente il pacchetto e immetti quanto segue:

   ```
   sudo rpm -U ./amazon-cloudwatch-agent.rpm
   ```

   Se è stato scaricato un pacchetto DEB su un server Linux, passa alla directory contenente il pacchetto e immetti quanto segue:

   ```
   sudo dpkg -i -E ./amazon-cloudwatch-agent.deb
   ```

## Installazione su Windows
<a name="windows-installation"></a>

In Windows Server, è possibile scaricare e installare l'agente utilizzando la riga di comando. CloudWatch 

1. Scarica il seguente file:

   ```
   https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/amazon-cloudwatch-agent.msi
   ```

1. Dopo aver scaricato il pacchetto, puoi eventualmente verificare la firma del pacchetto. Per ulteriori informazioni, consulta la pagina [Verifica della firma del pacchetto dell'agente CloudWatch](verify-CloudWatch-Agent-Package-Signature.md).

1. Installare il pacchetto . Passa alla directory contenente il pacchetto e immetti quanto segue:

   ```
   msiexec /i amazon-cloudwatch-agent.msi
   ```

   Questo comando funziona anche dall'interno PowerShell. Per ulteriori informazioni sulle opzioni di comando MSI, consulta [Command-Line Options](https://docs.microsoft.com/en-us/windows/desktop/Msi/command-line-options) nella documentazione di Microsoft Windows.

## Installazione su macOS
<a name="macos-installation"></a>

Sui computer macOS, puoi scaricare e installare l' CloudWatch agente utilizzando la riga di comando.

1. Scarica il pacchetto appropriato per la tua architettura:

   ```
   https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/amd64/latest/amazon-cloudwatch-agent.pkg
   ```

   Per l' ARM64 architettura:

   ```
   https://amazoncloudwatch-agent.s3.amazonaws.com/darwin/arm64/latest/amazon-cloudwatch-agent.pkg
   ```

1. Dopo aver scaricato il pacchetto, puoi eventualmente verificare la firma del pacchetto. Per ulteriori informazioni, consulta la pagina [Verifica della firma del pacchetto dell'agente CloudWatch](verify-CloudWatch-Agent-Package-Signature.md).

1. Installare il pacchetto . Passa alla directory contenente il pacchetto e immetti quanto segue:

   ```
   sudo installer -pkg ./amazon-cloudwatch-agent.pkg -target /
   ```

# Installa l' CloudWatch agente utilizzando AWS Systems Manager
<a name="installing-cloudwatch-agent-ssm"></a>

 L'utilizzo AWS Systems Manager semplifica l'installazione dell' CloudWatch agente su una flotta di istanze Amazon EC2. Puoi scaricare l'agente in un unico server e creare il file di configurazione CloudWatch dell'agente per tutti i server del parco macchine. Successivamente, puoi utilizzare Systems Manager per installare l'agente sugli altri server, utilizzando il file di configurazione creato. Utilizza i seguenti argomenti per installare ed eseguire l' CloudWatch agente utilizzando AWS Systems Manager. 

**Topics**
+ [Installazione o aggiornamento dell'agente SSM](#update-SSM-Agent-EC2instance-first)
+ [Verifica dei prerequisiti di Systems Manager](#install-CloudWatch-Agent-minimum-requirements-first)
+ [Verifica dell'accesso a Internet](#install-CloudWatch-Agent-internet-access-first)
+ [Scarica il pacchetto dell' CloudWatch agente sulla tua prima istanza](#install-CloudWatch-Agent-EC2-first)
+ [Creazione e modifica del file di configurazione dell'agente](#CW-Agent-Instance-Create-Configuration-File-first)
+ [Installa e avvia l' CloudWatch agente su istanze EC2 aggiuntive utilizzando la configurazione dell'agente](#install-CloudWatch-Agent-on-EC2-Instance-fleet)
+ [Installa l' CloudWatch agente su istanze EC2 aggiuntive utilizzando la configurazione dell'agente](#install-CloudWatch-Agent-on-EC2-Instance-fleet)
+ [(Facoltativo) Modificate la configurazione comune e il profilo denominato per CloudWatch l'agente](#CloudWatch-Agent-profile-instance-fleet)

## Installazione o aggiornamento dell'agente SSM
<a name="update-SSM-Agent-EC2instance-first"></a>

Su un'istanza Amazon EC2, l' CloudWatch agente richiede che sull'istanza sia in esecuzione la versione 2.2.93.0 o successiva dell'agente SSM. Prima di installare l' CloudWatch agente, aggiorna o installa SSM Agent sull'istanza, se non l'hai già fatto. 

Per informazioni sull'installazione o sull'aggiornamento di SSM Agent in un'istanza che esegue Linux, consulta la pagina relativa a [installazione e configurazione di SSM Agent in Linux](https://docs.aws.amazon.com/systems-manager/latest/userguide/manually-install-ssm-agent-linux.html) nella *Guida per l'utente AWS Systems Manager *.

Per ulteriori informazioni sull'installazione o l'aggiornamento di SSM Agent consulta [Utilizzo di SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) nella *Guida per l'utente di AWS Systems Manager *.

## Verifica dei prerequisiti di Systems Manager
<a name="install-CloudWatch-Agent-minimum-requirements-first"></a>

Prima di utilizzare Systems Manager Run Command per installare e configurare l' CloudWatch agente, verificate che le istanze soddisfino i requisiti minimi di Systems Manager. Per ulteriori informazioni, consulta [Prerequisti di Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up.html#systems-manager-prereqs) nella *Guida per l'utente di AWS Systems Manager *.

## Verifica dell'accesso a Internet
<a name="install-CloudWatch-Agent-internet-access-first"></a>

Le tue istanze Amazon EC2 devono essere in grado di connettersi agli endpoint. CloudWatch Ciò può avvenire tramite Internet Gateway, gateway NAT o endpoint VPC di CloudWatch interfaccia. Per ulteriori informazioni su come configurare l'accesso a Internet, consulta [Gateway Internet](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) nella *Guida per l'utente di Amazon VPC*.

Gli endpoint e le porte per configurare il proxy sono i seguenti:
+ Se utilizzi l'agente per raccogliere metriche, devi consentire l'elenco degli CloudWatch endpoint per le regioni appropriate. Questi endpoint sono elencati in [Amazon CloudWatch](https://docs.aws.amazon.com/general/latest/gr/rande.html#cw_region) nel *Riferimenti generali di Amazon Web Services*. 
+ Se utilizzi l'agente per raccogliere i log, devi consentire l'elenco degli endpoint CloudWatch Logs per le regioni appropriate. Questi endpoint sono elencati in [Amazon CloudWatch Logs in. *Riferimenti generali di Amazon Web Services*](https://docs.aws.amazon.com/general/latest/gr/rande.html#cwl_region) 
+ Se stai utilizzando System Manager per installare l'agente o Parameter Store per archiviare il file di configurazione, è necessario consentire l'elenco degli endpoint Systems Manager per le regioni appropriate. Questi endpoint sono elencati in [AWS Systems Manager](https://docs.aws.amazon.com/general/latest/gr/rande.html#ssm_region) nella *Riferimenti generali di Amazon Web Services*. 

## Scarica il pacchetto dell' CloudWatch agente sulla tua prima istanza
<a name="install-CloudWatch-Agent-EC2-first"></a>

Utilizzare i passaggi seguenti per scaricare il pacchetto dell' CloudWatch agente utilizzando Systems Manager.

**Per scaricare l' CloudWatch agente utilizzando Systems Manager**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

1. Nell'elenco del **documento Comando**, scegli **AWS-Configure AWSPackage**.

1. Nell'area **Targets (Destinazioni)**, scegliere l'istanza in cui installare l'agente di CloudWatch. Se un'istanza specifica non viene visualizzata, è possibile che non sia configurata come istanza gestita per l'uso con Systems Manager. Per ulteriori informazioni, consulta [Configurazione AWS Systems Manager per ambienti ibridi nella Guida](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html) per l'*AWS Systems Manager utente*.

1. Nell'elenco **Action (Operazione)**, seleziona **Install (Installa)**.

1. Nel campo **Name (Nome)**, inserire *AmazonCloudWatchAgent*.

1. Lasciare **Version (Versione)** impostato su **latest (più recente)** per installare la versione più recente dell'agente.

1. Scegli **Esegui**.

1. Facoltativamente, nelle aree **Targets and outputs** (Destinazioni e output), seleziona il pulsante accanto al nome dell'istanza, quindi seleziona **View output**. (Visualizza output). Systems Manager visualizzerà che l'agente è stato installato correttamente.

   

## Creazione e modifica del file di configurazione dell'agente
<a name="CW-Agent-Instance-Create-Configuration-File-first"></a>

Dopo aver scaricato l' CloudWatch agente, è necessario creare il file di configurazione prima di avviarlo su qualsiasi server.

Per salvare i file di configurazione dell'utente in Systems Manager Parameter Store, dovrai utilizzare un'istanza EC2 da salvare in Parameter Store. Inoltre, è necessario innanzitutto collegare a tale istanza il ruolo IAM `CloudWatchAgentAdminRole`. Per ulteriori informazioni sul collegamento di un ruolo, consulta [Attaching an IAM Role to an Instance](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/iam-roles-for-amazon-ec2.html#attach-iam-role) nella *Guida per l'utente di Amazon EC2*.

Per ulteriori informazioni sulla creazione del file di configurazione CloudWatch dell'agente, vedere[Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

## Installa e avvia l' CloudWatch agente su istanze EC2 aggiuntive utilizzando la configurazione dell'agente
<a name="install-CloudWatch-Agent-on-EC2-Instance-fleet"></a>

Dopo aver salvato la configurazione CloudWatch dell'agente in Parameter Store, è possibile utilizzarla quando si installa l'agente su altri server.

Per ciascuno di questi server, segui i passaggi elencati in precedenza in questa sezione per verificare i prerequisiti di Systems Manager, la versione dell'agente SSM e l'accesso a Internet. Quindi utilizzate le seguenti istruzioni per installare l' CloudWatch agente sulle istanze aggiuntive, utilizzando il file di configurazione dell' CloudWatch agente che avete creato.

**Passaggio 1: scaricare e installare l'agente CloudWatch **

Per poter inviare i CloudWatch dati a una regione diversa, assicurati che il ruolo IAM associato a questa istanza disponga delle autorizzazioni per scrivere i CloudWatch dati in quella regione.

Di seguito è riportato un esempio di utilizzo del `aws configure` comando per creare un profilo denominato per l' CloudWatch agente. Questo esempio presuppone l'utilizzo del nome del profilo predefinito di `AmazonCloudWatchAgent`.

**Per creare il AmazonCloudWatchAgent profilo per l' CloudWatch agente**
+ Nei server Linux, digitare il seguente comando e seguire le istruzioni.

  ```
  sudo aws configure --profile AmazonCloudWatchAgent
  ```

  In Windows Server, apri PowerShell come amministratore, digita il comando seguente e segui le istruzioni.

  ```
  aws configure --profile AmazonCloudWatchAgent
  ```

## Installa l' CloudWatch agente su istanze EC2 aggiuntive utilizzando la configurazione dell'agente
<a name="install-CloudWatch-Agent-on-EC2-Instance-fleet"></a>

Dopo aver salvato la configurazione CloudWatch dell'agente in Parameter Store, è possibile utilizzarla quando si installa l'agente su altri server.

Per ciascuno di questi server, segui i passaggi elencati in precedenza in questa sezione per verificare i prerequisiti di Systems Manager, la versione dell'agente SSM e l'accesso a Internet. Quindi utilizzate le seguenti istruzioni per installare l' CloudWatch agente sulle istanze aggiuntive, utilizzando il file di configurazione dell' CloudWatch agente che avete creato.

**Passaggio 1: scaricare e installare l'agente CloudWatch **

È necessario installare l'agente su ciascun server in cui verrà eseguito l'agente. L' CloudWatch agente è disponibile come pacchetto in Amazon Linux 2023 e Amazon Linux 2. Se utilizzi questo sistema operativo, puoi usare Systems Manager per installare il pacchetto seguendo questa procedura.

**Nota**  
È inoltre necessario assicurarsi che il ruolo IAM associato all'istanza abbia l'**CloudWatchAgentServerPolicy**allegato. Per ulteriori informazioni, consulta[Prerequisiti](prerequisites.md).

**Per utilizzare Systems Manager per installare il pacchetto CloudWatch dell'agente**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

1. Nell'elenco dei **documenti Command**, seleziona **AWS- RunShellScript**. Quindi incolla quanto segue in **Parametri di comando**.

   ```
   sudo yum install amazon-cloudwatch-agent
   ```

1. Seleziona **Esegui**

Su tutti i sistemi operativi supportati, puoi scaricare il pacchetto dell' CloudWatch agente utilizzando Systems Manager Run Command o un link per il download di Amazon S3. 

**Nota**  
Quando si installa o si aggiorna l' CloudWatch agente, è supportata solo l'opzione di **disinstallazione e reinstallazione**. Non è possibile utilizzare l'opzione **Aggiornamento locale**.

Run Command di Systems Manager ti permette di gestire la configurazione delle istanze. Puoi specificare un documento Systems Manager, specificare i parametri ed eseguire il comando in una o più istanze. SSM Agent sull'istanza elabora il comando e configura l'istanza come specificato.

**Per scaricare l' CloudWatch agente utilizzando Run Command**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

1. Nell'elenco del **documento Comando**, scegli **AWS-Configure AWSPackage**.

1. Nell'area **Target**, scegli l'istanza su cui installare l' CloudWatch agente. Se un'istanza specifica non viene visualizzata, potrebbe non essere configurata per Run Command. Per ulteriori informazioni, consulta [Configurazione AWS Systems Manager per ambienti ibridi](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html) nella *Guida per l'AWS Systems Manager utente*.

1. Nell'elenco **Action (Operazione)**, seleziona **Install (Installa)**.

1. Nella casella **Name** (Nome), inserisci *AmazonCloudWatchAgent*.

1. Lasciare **Version (Versione)** impostato su **latest (più recente)** per installare la versione più recente dell'agente.

1. Scegli **Esegui**.

1. Facoltativamente, nelle aree **Targets and outputs** (Destinazioni e output), seleziona il pulsante accanto al nome dell'istanza, quindi seleziona **View output**. (Visualizza output). Systems Manager visualizzerà che l'agente è stato installato correttamente. 

**Fase 2: Avviare l' CloudWatch agente utilizzando il file di configurazione dell'agente**

Procedi come segue per avviare l'agente tramite Run Command in Systems Manager.

Per informazioni sulla configurazione dell'agente su un sistema su cui è abilitato Linux (SELinux) con funzionalità di sicurezza avanzata, vedere. [Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux](CloudWatch-Agent-SELinux.md)

**Per avviare l' CloudWatch agente utilizzando Run Command**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

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

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

1. Nell'elenco **Action** (Operazione), seleziona **configure** (configura).

1. Nell'elenco **Optional Configuration Source** (Origine configurazione opzionale), seleziona **ssm**.

1. Nella casella **Posizione configurazione facoltativa**, immetti il nome del parametro di System Manager del file di configurazione dell'agente creato e salvato in Systems Manager Parameter Store, come descritto in [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

1. Nell'elenco **Optional Restart** (Riavvio opzionale), seleziona **yes** (sì) per avviare l'agente dopo aver completato questa procedura.

1. Scegli **Esegui**.

1. Facoltativamente, nelle aree **Targets and outputs** (Destinazioni e output), seleziona il pulsante accanto al nome dell'istanza, quindi seleziona **View output**. (Visualizza output). Systems Manager visualizzerà che l'agente è stato avviato correttamente. 

## (Facoltativo) Modificate la configurazione comune e il profilo denominato per CloudWatch l'agente
<a name="CloudWatch-Agent-profile-instance-fleet"></a>

L' CloudWatch agente include un file di configurazione chiamato`common-config.toml`. Se lo desideri, puoi utilizzare questo file per specificare le informazioni relative al proxy e alla regione.

Su un server che esegue Linux, questo file si trova nella directory `/opt/aws/amazon-cloudwatch-agent/etc`. Su un server che esegue Windows Server, questo file si trova nella directory `C:\ProgramData\Amazon\AmazonCloudWatchAgent`.

`common-config.toml` predefinito è il seguente:

```
# This common-config is used to configure items used for both ssm and cloudwatch access
 
 
## Configuration for shared credential.
## Default credential strategy will be used if it is absent here:
##            Instance role is used for EC2 case by default.
##            AmazonCloudWatchAgent profile is used for onPremise case by default.
# [credentials]
#    shared_credential_profile = "{profile_name}"
#    shared_credential_file= "{file_name}"
 
## Configuration for proxy.
## System-wide environment-variable will be read if it is absent here.
## i.e. HTTP_PROXY/http_proxy; HTTPS_PROXY/https_proxy; NO_PROXY/no_proxy
## Note: system-wide environment-variable is not accessible when using ssm run-command.
## Absent in both here and environment-variable means no proxy will be used.
# [proxy]
#    http_proxy = "{http_url}"
#    https_proxy = "{https_url}"
#    no_proxy = "{domain}"
```

Inizialmente, tutte le righe sono commentate. Per impostare questo profilo di credenziali o le impostazioni del proxy, rimuovi `#` dalla riga e specifica un valore. Puoi modificare questo file manualmente oppure usando il Run Command `RunShellScript` in Systems Manager:
+ `shared_credential_profile`— Per i server locali, questa riga specifica il profilo di credenziali utente IAM a cui inviare i dati. CloudWatch Se lasci il commento nella riga, verrà utilizzato `AmazonCloudWatchAgent`. 

  Su un'istanza EC2, puoi utilizzare questa riga per fare in modo che l' CloudWatch agente invii i dati da questa istanza CloudWatch a un'altra regione. AWS A tale scopo, specifica un profilo che includa un campo `region` con il nome della regione di destinazione.

  Se specifichi un `shared_credential_profile`, occorre anche rimuovere `#` dall'inizio della riga `[credentials]`.
+ `shared_credential_file`: per fare in modo che l'agente cerchi le credenziali in un file che si trova in un percorso diverso da quello predefinito, specificare qui il percorso completo e il nome del file. Il percorso predefinito è `/root/.aws` su Linux e `C:\\Users\\Administrator\\.aws` su Windows Server.

  Il primo esempio di seguito mostra la sintassi di una riga `shared_credential_file` valida per server Linux e il secondo esempio è valido per Windows Server. Su Windows Server, è necessario eseguire l'escape dei caratteri \$1.

  ```
  shared_credential_file= "/usr/username/credentials"
  ```

  ```
  shared_credential_file= "C:\\Documents and Settings\\username\\.aws\\credentials"
  ```

  Se specifichi un `shared_credential_file`, occorre anche rimuovere `#` dall'inizio della riga `[credentials]`.
+ Impostazioni proxy: se i server utilizzano proxy HTTP o HTTPS per contattare servizi AWS , specifica questi proxy nei campi `http_proxy` e `https_proxy`. Se ce ne sono URLs che devono essere escluse dal proxy, specificale nel `no_proxy` campo, separate da virgole.

# Installa l' CloudWatch agente sui server locali
<a name="install-CloudWatch-Agent-on-premise"></a>

 Se hai scaricato l' CloudWatch agente su un computer e creato il file di configurazione dell'agente, puoi utilizzare quel file di configurazione per installare l'agente in altri server locali. 

## Scarica l' CloudWatch agente su un server locale
<a name="download-CloudWatch-Agent-onprem"></a>

Puoi scaricare il pacchetto dell' CloudWatch agente utilizzando Systems Manager Run Command o un link per il download di Amazon S3. 

### Download tramite Systems Manager
<a name="download-CloudWatch-Agent-onprem-fleet-sys"></a>

Per utilizzare Run Command in Systems Manager, è necessario registrare il server locale con Amazon EC2 Systems Manager. Per ulteriori informazioni, consulta la pagina relativa alla [configurazione di Systems Manager in ambienti ibridi](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html) nella *Guida per l'utente di AWS Systems Manager *.

Se hai già registrato il server, aggiorna SSM Agent alla versione più recente.

Per ulteriori informazioni sull'aggiornamento di SSM Agent su un server che esegue Linux, consulta [Installare SSM Agent per un ambiente ibrido (Linux)](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html#sysman-install-managed-linux) nella *Guida per l'utente AWS Systems Manager *.

Per ulteriori informazioni sull'aggiornamento di SSM Agent su un server che esegue Windows Server, consulta [Installare SSM Agent per un ambiente ibrido (Windows)](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html#sysman-install-managed-win) nella *Guida per l'utente AWS Systems Manager *.

**Per utilizzare l'agente SSM per scaricare il pacchetto dell' CloudWatch agente su un server locale**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

1. Nell'elenco del **documento Comando**, seleziona il pulsante accanto a **AWSPackageAWS-Configure**.

1. Nell'area **Targets (Destinazioni)**, selezionare il server in cui installare l'agente di CloudWatch. Se un server specifico non viene visualizzato, potrebbe non essere configurato per Run Command. Per ulteriori informazioni, consulta [Configurazione AWS Systems Manager per ambienti ibridi nella Guida](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html) per l'*AWS Systems Manager utente*.

1. Nell'elenco **Action (Operazione)**, seleziona **Install (Installa)**.

1. Nella casella **Name** (Nome), inserisci *AmazonCloudWatchAgent*.

1. Non compilare il campo **Version (Versione)** per installare la versione più recente dell'agente.

1. Scegli **Esegui**.

   Il pacchetto dell'agente viene scaricato. Le fasi successive consistono in configurare e avviare l'agente.

## (Installazione su un server locale) Specificare le credenziali e la regione IAM AWS
<a name="install-CloudWatch-Agent-iam_user-SSM-onprem"></a>

Per consentire all' CloudWatch agente di inviare dati da un server locale, devi specificare la chiave di accesso e la chiave segreta dell'utente IAM che hai creato in precedenza. 

È inoltre necessario specificare la AWS regione a cui inviare le metriche, utilizzando il `region` campo.

Di seguito è riportato un esempio del file.

```
[AmazonCloudWatchAgent]
aws_access_key_id=my_access_key
aws_secret_access_key=my_secret_key
region = us-west-1
```

Per *my\$1access\$1key* e*my\$1secret\$1key*, usa le chiavi dell'utente IAM che non dispone delle autorizzazioni per scrivere su Systems Manager Parameter Store. 

Se al profilo attribuisci il nome `AmazonCloudWatchAgent`, non dovrai effettuare altre operazioni. Eventualmente, puoi assegnare un nome diverso e specificarlo come valore di `shared_credential_profile` nel file` common-config.toml`, descritto nella sezione successiva.

Di seguito è riportato un esempio di utilizzo del **aws configure** comando per creare un profilo denominato per l' CloudWatch agente. Questo esempio presuppone l'utilizzo del nome del profilo predefinito di `AmazonCloudWatchAgent`.

**Per creare il AmazonCloudWatchAgent profilo per l' CloudWatch agente**

1. Se non l'hai già fatto, installalo AWS Command Line Interface sul server. Per ulteriori informazioni, consulta l'argomento relativo all'[installazione di AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html).

1. Nei server Linux, immetti il seguente comando e segui le istruzioni:

   ```
   sudo aws configure --profile AmazonCloudWatchAgent
   ```

   In Windows Server, apri PowerShell come amministratore, immetti il comando seguente e segui le istruzioni.

   ```
   aws configure --profile AmazonCloudWatchAgent
   ```

## (Facoltativo) Modifica della configurazione comune e del profilo denominato per l'agente CloudWatch
<a name="CloudWatch-Agent-profile-onprem"></a>

L' CloudWatch agente include un file di configurazione chiamato`common-config.toml`. Se lo desideri, puoi utilizzare questo file per specificare le informazioni relative al proxy e alla regione.

Su un server che esegue Linux, questo file si trova nella directory `/opt/aws/amazon-cloudwatch-agent/etc`. Su un server che esegue Windows Server, questo file si trova nella directory `C:\ProgramData\Amazon\AmazonCloudWatchAgent`.

`common-config.toml` predefinito è il seguente:

```
# This common-config is used to configure items used for both ssm and cloudwatch access
 
 
## Configuration for shared credential.
## Default credential strategy will be used if it is absent here:
##            Instance role is used for EC2 case by default.
##            AmazonCloudWatchAgent profile is used for onPremise case by default.
# [credentials]
#    shared_credential_profile = "{profile_name}"
#    shared_credential_file= "{file_name}"
 
## Configuration for proxy.
## System-wide environment-variable will be read if it is absent here.
## i.e. HTTP_PROXY/http_proxy; HTTPS_PROXY/https_proxy; NO_PROXY/no_proxy
## Note: system-wide environment-variable is not accessible when using ssm run-command.
## Absent in both here and environment-variable means no proxy will be used.
# [proxy]
#    http_proxy = "{http_url}"
#    https_proxy = "{https_url}"
#    no_proxy = "{domain}"
```

Inizialmente, tutte le righe sono commentate. Per impostare questo profilo di credenziali o le impostazioni del proxy, rimuovi `#` dalla riga e specifica un valore. Puoi modificare questo file manualmente oppure usando il Run Command `RunShellScript` in Systems Manager:
+ `shared_credential_profile`— Per i server locali, questa riga specifica il profilo di credenziali utente IAM a cui inviare i dati. CloudWatch Se lasci il commento nella riga, verrà utilizzato `AmazonCloudWatchAgent`. Per ulteriori informazioni sulla creazione di questo profilo, consulta [(Installazione su un server locale) Specificare le credenziali e la regione IAM AWS](#install-CloudWatch-Agent-iam_user-SSM-onprem). 

  Su un'istanza EC2, puoi utilizzare questa riga per fare in modo che l' CloudWatch agente invii i dati da questa istanza CloudWatch a un'altra regione. AWS A tale scopo, specifica un profilo che includa un campo `region` con il nome della regione di destinazione.

  Se specifichi un `shared_credential_profile`, occorre anche rimuovere `#` dall'inizio della riga `[credentials]`.
+ `shared_credential_file`: per fare in modo che l'agente cerchi le credenziali in un file che si trova in un percorso diverso da quello predefinito, specificare qui il percorso completo e il nome del file. Il percorso predefinito è `/root/.aws` su Linux e `C:\\Users\\Administrator\\.aws` su Windows Server.

  Il primo esempio di seguito mostra la sintassi di una riga `shared_credential_file` valida per server Linux e il secondo esempio è valido per Windows Server. Su Windows Server, è necessario eseguire l'escape dei caratteri \$1.

  ```
  shared_credential_file= "/usr/username/credentials"
  ```

  ```
  shared_credential_file= "C:\\Documents and Settings\\username\\.aws\\credentials"
  ```

  Se specifichi un `shared_credential_file`, occorre anche rimuovere `#` dall'inizio della riga `[credentials]`.
+ Impostazioni proxy: se i server utilizzano proxy HTTP o HTTPS per contattare servizi AWS , specifica questi proxy nei campi `http_proxy` e `https_proxy`. Se ce ne sono URLs che devono essere escluse dal proxy, specificale nel `no_proxy` campo, separate da virgole.

# Installa l' CloudWatch agente su nuove istanze utilizzando CloudFormation
<a name="Install-CloudWatch-Agent-New-Instances-CloudFormation"></a>

 Questa sezione descrive come installare l' CloudWatch agente su nuove istanze Amazon EC2 utilizzando. AWS CloudFormation

**Nota**  
 Amazon ha caricato diversi CloudFormation modelli GitHub che possono aiutarti a installare e aggiornare l' CloudWatch agente su nuove istanze Amazon EC2. Per ulteriori informazioni sull'utilizzo CloudFormation, consulta [What is? AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) . 

La posizione del modello è [Deploy the Amazon CloudWatch agent to EC2 using. CloudFormation](https://github.com/aws-cloudformation/aws-cloudformation-templates/tree/main/Solutions/AmazonCloudWatchAgent) Questo percorso include le directory `inline` e `ssm`. Ognuna di queste directory contiene modelli per le istanze Linux e Windows. 


+ I modelli nella `inline` directory hanno la configurazione dell' CloudWatch agente incorporata nel modello. CloudFormation Per impostazione predefinita, i modelli di Linux raccolgono i parametri `mem_used_percent` e `swap_used_percent`, mentre i modelli di Windows raccolgono i parametri `Memory % Committed Bytes In Use` e `Paging File % Usage`.

  Per modificare questi modelli per raccogliere altri parametri, modifica la seguente sezione del modello. L'esempio seguente è preso dal modello per i server Linux. Segui il formato e la sintassi del file di configurazione dell'agente per apportare le modifiche. Per ulteriori informazioni, consulta la pagina [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md).

  ```
  {
     "metrics":{
        "append_dimensions":{
           "AutoScalingGroupName":"${!aws:AutoScalingGroupName}",
           "ImageId":"${!aws:ImageId}",
           "InstanceId":"${!aws:InstanceId}",
           "InstanceType":"${!aws:InstanceType}"
        },
        "metrics_collected":{
           "mem":{
              "measurement":[
                 "mem_used_percent"
              ]
           },
           "swap":{
              "measurement":[
                 "swap_used_percent"
              ]
           }
        }
     }
  }
  ```
**Nota**  
Nei modelli inline, tutte le variabili segnaposto devono essere precedute da un punto esclamativo (\$1) come un carattere di escape. Ciò è visualizzato nel modello di esempio. Se aggiungi altre variabili segnaposto, assicurati di aggiungere un punto esclamativo prima del nome.
+ I modelli nella directory `ssm` caricano un file di configurazione dell'agente da Parameter Store. Per utilizzare questi modelli, è necessario innanzitutto creare un file di configurazione e caricarlo in Parameter Store. Occorre quindi fornire il nome Parameter Store del file nel modello. Puoi creare il file di configurazione manualmente o utilizzando la procedura guidata. Per ulteriori informazioni, consulta [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

È possibile utilizzare entrambi i tipi di modelli per installare l' CloudWatch agente e aggiornare la configurazione dell'agente.

Per informazioni sulla configurazione dell'agente su un sistema su cui è abilitato Linux (SELinux) con funzionalità di sicurezza avanzata, vedere. [Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux](CloudWatch-Agent-SELinux.md)

## Tutorial: installa e configura l' CloudWatch agente utilizzando un modello in linea CloudFormation
<a name="installing-CloudWatch-Agent-using-CloudFormation-Templates-inline"></a>

Questo tutorial illustra come CloudFormation installare l' CloudWatch agente su una nuova istanza Amazon EC2. Questo tutorial esegue l'installazione in una nuova istanza che esegue Amazon Linux 2 utilizzando i modelli inline, che non richiedono l'uso del file di configurazione JSON o di Parameter Store. Il modello inline include la configurazione dell'agente nel modello. In questo tutorial viene utilizzata la configurazione dell'agente predefinita contenuta nel modello.

Dopo la procedura di installazione dell'agente, il tutorial prosegue con la procedura di aggiornamento dell'agente.

**Da utilizzare CloudFormation per installare l' CloudWatch agente su una nuova istanza**

1. Scarica il modello da GitHub. In questo tutorial, scaricare il modello inline per Amazon Linux 2 come segue:

   ```
   curl -O https://raw.githubusercontent.com/aws-cloudformation/aws-cloudformation-templates/main/Solutions/AmazonCloudWatchAgent/inline/amazon_linux.yaml
   ```

1. Apri la CloudFormation console all'indirizzo [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Seleziona **Crea pila**.

1. In **Choose a template (Scegli un modello)**, seleziona **Upload a template to Amazon S3 (Carica un modello in Amazon S3)**, scegli il modello scaricato e seleziona **Next (Successivo)**.

1. Nella pagina **Specify Details (Specifica dettagli)**, compili i parametri seguenti e scegli **Next (Successivo)**:
   + **Nome dello stack: scegli un nome** per lo stack. CloudFormation 
   + **IAMRole**: Scegli un ruolo IAM con le autorizzazioni per scrivere CloudWatch metriche, log e tracce. Per ulteriori informazioni, consulta [Prerequisiti](prerequisites.md).
   + **InstanceAMI**: scegli un'AMI valida nella regione in cui verrà avviato lo stack.
   + **InstanceType**: Scegli un tipo di istanza valido.
   + **KeyName**: per abilitare l'accesso SSH alla nuova istanza, scegli una coppia di key pair Amazon EC2 esistente. Se non disponi di una coppia di chiavi Amazon EC2, puoi crearla nella Console di gestione AWS. Per ulteriori informazioni, consulta [Amazon EC2 Key Pairs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) nella *Guida per l'utente di Amazon EC2*.
   + **SSHLocation**: specifica l'intervallo di indirizzi IP che può essere utilizzato per connettersi all'istanza tramite SSH. L'impostazione predefinita consente l'accesso da qualsiasi indirizzo IP.

1. Nella pagina **Options (Opzioni)**, puoi scegliere di aggiungere tag alle risorse dello stack. Scegli **Next (Successivo)**.

1. Nella pagina **Review** (Verifica), esamina le informazioni, riconosci che lo stack può creare risorse &IAM;, quindi scegli **Create** (Crea).

   Se aggiorni la console, lo stato del nuovo stack è `CREATE_IN_PROGRESS`.

1. Quando viene creata, puoi visualizzare l'istanza nella console Amazon EC2. Se desiderato, è possibile eseguire la connessione all'host e verificare l'avanzamento.

   Utilizza il comando seguente per confermare che l'agente è installato:

   ```
   rpm -qa amazon-cloudwatch-agent
   ```

   Utilizza il comando seguente per confermare che l'agente è in esecuzione:

   ```
   ps aux | grep amazon-cloudwatch-agent
   ```

La procedura successiva illustra l'utilizzo CloudFormation per aggiornare l' CloudWatch agente utilizzando un modello in linea. Il modello inline predefinito raccoglie il parametro `mem_used_percent`. In questo tutorial, puoi modificare la configurazione dell'agente per interrompere la raccolta di tale parametro.

**Da utilizzare per CloudFormation aggiornare l'agente CloudWatch**

1. Nel modello scaricato nella procedura precedente, rimuovi le righe seguenti e quindi salva il modello:

   ```
   "mem": {
                           
        "measurement": [
            "mem_used_percent"
          ]
    },
   ```

1. Apri la CloudFormation console in [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. **Nella CloudFormation dashboard, seleziona lo stack che hai creato e scegli Update Stack.**

1. In **Select Template (Seleziona modello)**, seleziona **Upload a template to Amazon S3 (Carica un modello in Amazon S3)**, scegli il modello modificato e seleziona **Next (Successivo)**.

1. Nella pagina **Options (Opzioni)**, scegli **Next (Successivo)**, quindi **Next (Successivo)**.

1. Nella pagina **Review (Rivedi)**, esamina le informazioni e scegli **Update (Aggiorna)**.

   Dopo qualche minuto, viene visualizzato `UPDATE_COMPLETE`.

## Tutorial: installa l' CloudWatch agente utilizzando CloudFormation e Parameter Store
<a name="installing-CloudWatch-Agent-using-CloudFormation-Templates"></a>

Questo tutorial illustra come CloudFormation installare l' CloudWatch agente su una nuova istanza Amazon EC2. Questo tutorial esegue l'installazione su una nuova istanza che esegue Amazon Linux 2 utilizzando un file di configurazione dell'agente creato e salvato in Parameter Store.

Dopo la procedura di installazione dell'agente, il tutorial prosegue con la procedura di aggiornamento dell'agente.

**Da utilizzare CloudFormation per installare l' CloudWatch agente su una nuova istanza utilizzando una configurazione di Parameter Store**

1. Se non l'hai già fatto, scarica il pacchetto dell' CloudWatch agente su uno dei tuoi computer in modo da poter creare il file di configurazione dell'agente. Per ulteriori informazioni e per scaricare l'agente utilizzando Parameter Store, consulta [Scarica il pacchetto dell'agente CloudWatch](download-CloudWatch-Agent-on-EC2-Instance-commandline-first.md).

1. Creare il file di configurazione dell'agente e salvarlo in Parameter Store. Per ulteriori informazioni, consulta [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

1. Scarica il modello da GitHub quanto segue:

   ```
   curl -O https://raw.githubusercontent.com/awslabs/aws-cloudformation-templates/master/aws/solutions/AmazonCloudWatchAgent/ssm/amazon_linux.template
   ```

1. Apri la CloudFormation console all'indirizzo [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. Seleziona **Crea stack**.

1. In **Choose a template (Scegli un modello)**, seleziona **Upload a template to Amazon S3 (Carica un modello in Amazon S3)**, scegli il modello scaricato e seleziona **Next (Successivo)**.

1. Nella pagina **Specify Details (Specifica dettagli)**, compili di conseguenza i seguenti parametri e scegli **Next (Successivo)**:
   + **Nome dello stack: scegli un nome** per lo stack. CloudFormation 
   + **IAMRole**: Scegli un ruolo IAM con le autorizzazioni per scrivere CloudWatch metriche, log e tracce. Per ulteriori informazioni, consulta [Prerequisiti](prerequisites.md).
   + **InstanceAMI**: scegli un'AMI valida nella regione in cui verrà avviato lo stack.
   + **InstanceType**: Scegli un tipo di istanza valido.
   + **KeyName**: per abilitare l'accesso SSH alla nuova istanza, scegli una coppia di key pair Amazon EC2 esistente. Se non disponi di una coppia di chiavi Amazon EC2, puoi crearla nella Console di gestione AWS. Per ulteriori informazioni, consulta [Amazon EC2 Key Pairs](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html) nella *Guida per l'utente di Amazon EC2*.
   + **SSHLocation**: specifica l'intervallo di indirizzi IP che può essere utilizzato per connettersi all'istanza tramite SSH. L'impostazione predefinita consente l'accesso da qualsiasi indirizzo IP.
   + **SSMKey**: specifica il file di configurazione dell'agente creato e salvato in Parameter Store.

1. Nella pagina **Options (Opzioni)**, puoi scegliere di aggiungere tag alle risorse dello stack. Scegli **Next (Successivo)**.

1. Nella pagina **Review** (Verifica), esamina le informazioni, riconosci che lo stack può creare risorse &IAM;, quindi scegli **Create** (Crea).

   Se aggiorni la console, lo stato del nuovo stack è `CREATE_IN_PROGRESS`.

1. Quando viene creata, puoi visualizzare l'istanza nella console Amazon EC2. Se desiderato, è possibile eseguire la connessione all'host e verificare l'avanzamento.

   Utilizza il comando seguente per confermare che l'agente è installato:

   ```
   rpm -qa amazon-cloudwatch-agent
   ```

   Utilizza il comando seguente per confermare che l'agente è in esecuzione:

   ```
   ps aux | grep amazon-cloudwatch-agent
   ```

La procedura successiva illustra l'utilizzo CloudFormation per aggiornare l' CloudWatch agente, utilizzando una configurazione dell'agente salvata in Parameter Store.

**Da utilizzare CloudFormation per aggiornare l' CloudWatch agente utilizzando una configurazione in Parameter Store**

1. Modificare il file di configurazione dell'agente archiviato in Parameter Store con la nuova configurazione desiderata.

1. Nel CloudFormation modello scaricato nell'[Tutorial: installa l' CloudWatch agente utilizzando CloudFormation e Parameter Store](#installing-CloudWatch-Agent-using-CloudFormation-Templates)argomento, modifica il numero di versione. Ad esempio, puoi modificare `VERSION=1.0` in `VERSION=2.0`.

1. Apri la CloudFormation console in [https://console.aws.amazon.com/cloudformation.](https://console.aws.amazon.com/cloudformation/)

1. **Nella CloudFormation dashboard, seleziona lo stack che hai creato e scegli Update Stack.**

1. In **Select Template (Seleziona modello)**, seleziona **Upload a template to Amazon S3 (Carica un modello in Amazon S3)**, scegli il modello appena modificato e seleziona **Next (Successivo)**.

1. Nella pagina **Options (Opzioni)**, scegli **Next (Successivo)**, quindi **Next (Successivo)**.

1. Nella pagina **Review (Rivedi)**, esamina le informazioni e scegli **Update (Aggiorna)**.

   Dopo qualche minuto, viene visualizzato `UPDATE_COMPLETE`.

## Risoluzione dei problemi di installazione dell'agente con CloudWatch CloudFormation
<a name="CloudWatch-Agent-CloudFormation-troubleshooting"></a>

Questa sezione consente di risolvere i problemi relativi all'installazione e all'aggiornamento dell'agente tramite. CloudWatch CloudFormation

### Rilevamento di aggiornamento non riuscito
<a name="CloudWatch-Agent-troubleshooting-Detecting-CloudFormation-update-issues"></a>

Se si utilizza CloudFormation per aggiornare la configurazione CloudWatch dell'agente e si utilizza una configurazione non valida, l'agente interrompe l'invio di qualsiasi metrica a. CloudWatch Per controllare rapidamente se un aggiornamento della configurazione dell'agente è andato a buon fine, puoi esaminare il file `cfn-init-cmd.log`. Su un server Linux, il file si trova in `/var/log/cfn-init-cmd.log`. Su un'istanza Windows, il file si trova in `C:\cfn\log\cfn-init-cmd.log`.

### Parametri mancanti
<a name="CloudWatch-Agent-troubleshooting-Cloudformation-missing-metrics"></a>

Se alcuni parametri previsti dopo l'installazione o l'aggiornamento dell'agente non sono visualizzati, verifica che l'agente sia configurato per raccogliere tale parametro. A questo scopo, controlla il file `amazon-cloudwatch-agent.json` per assicurarti che il parametro sia elencato e verifica di stare effettuando la ricerca nello spazio dei nomi parametro corretto. Per ulteriori informazioni, consulta [CloudWatch file e posizioni degli agenti](troubleshooting-CloudWatch-Agent.md#CloudWatch-Agent-files-and-locations).

# Installa l' CloudWatch agente con il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Helm
<a name="install-CloudWatch-Observability-EKS-addon"></a>

Puoi utilizzare il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Amazon CloudWatch Observability Helm per installare l' CloudWatch agente e l'agente Fluent-bit su un cluster Amazon EKS. Puoi anche utilizzare il grafico Helm per installare l' CloudWatch agente e l'agente Fluent-bit su un cluster Kubernetes che non è ospitato su Amazon EKS.

L'uso di entrambi i metodi su un cluster Amazon EKS abilita sia [Container Insights](ContainerInsights.md) con osservabilità migliorata per Amazon EKS che [CloudWatch Application Signals](CloudWatch-Application-Monitoring-Sections.md) per impostazione predefinita. Utilizzando il componente aggiuntivo, è possibile raccogliere le metriche dell'infrastruttura, la telemetria delle prestazioni delle applicazioni e i log dei container dal cluster.

Con la versione `v6.0.1-eksbuild.1` o successiva del componente aggiuntivo, è abilitato Container Insights with OpenTelemetry metrics, che raccoglie i parametri utilizzando il OpenTelemetry protocollo (OTLP) e supporta le query PromQL. Per ulteriori informazioni, consulta [Container Insights con OpenTelemetry metriche per Amazon EKS](container-insights-otel-metrics.md).

Con Approfondimenti sui container con osservabilità migliorata per Amazon EKS, i parametri di Approfondimenti sui container vengono addebitati per osservazione anziché per parametro archiviato o log importato. Per Application Signals, la fatturazione si basa sulle richieste in entrata alle applicazioni, sulle richieste in uscita dalle applicazioni e su ogni obiettivo del livello di servizio (SLO) configurato. Ogni richiesta in entrata ricevuta e ogni richiesta in uscita effettuata genera un segnale di applicazione. Ogni SLO crea due segnali di applicazione per ciascun periodo di misurazione. Per ulteriori informazioni sui CloudWatch prezzi, consulta la pagina [ CloudWatch dei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing/).

Entrambi i metodi abilitano Approfondimenti sui container su nodi di lavoro Linux e Windows nel cluster Amazon EKS. Per abilitare Approfondimenti sui container su Windows, è necessario utilizzare la versione 1.5.0 o successiva del componente aggiuntivo Amazon EKS o il grafico Helm. Application Signals non è supportato su Windows nei cluster Amazon EKS.

Il componente aggiuntivo Amazon CloudWatch Observability EKS è supportato sui cluster Amazon EKS in esecuzione con Kubernetes versione 1.23 o successiva.

Quando installi il componente aggiuntivo o il grafico Helm, devi inoltre concedere le autorizzazioni IAM per consentire all' CloudWatch agente di inviare metriche, log e tracce a. CloudWatch Ci sono due modi per effettuare questa operazione:
+ Collega una policy al ruolo IAM dei nodi di lavoro. Questa opzione concede ai nodi di lavoro le autorizzazioni a cui inviare telemetria. CloudWatch 
+ Utilizza un ruolo IAM per gli account di servizio per i pod dell'agente e collega la policy a questo ruolo. Questo metodo funziona solo per i cluster Amazon EKS. Questa opzione consente l' CloudWatch accesso solo ai pod degli agenti appropriati. 

**Topics**
+ [Opzione 1: installazione utilizzando EKS Pod Identity](#install-CloudWatch-Observability-EKS-pod-identity)
+ [Opzione 2: installazione con autorizzazioni IAM sui nodi di lavoro](#install-CloudWatch-Observability-EKS-addon-workernodes)
+ [Opzione 3: installazione tramite il ruolo dell'account di servizio IAM (si applica solo all'utilizzo del componente aggiuntivo)](#install-CloudWatch-Observability-EKS-addon-serviceaccountrole)
+ [Considerazioni per Amazon EKS Hybrid Nodes](#install-CloudWatch-Observability-EKS-addon-hybrid)
+ [(Facoltativo) Configurazione aggiuntiva](#install-CloudWatch-Observability-EKS-addon-configuration)
+ [Raccolta delle metriche di Java Management Extensions (JMX)](#install-CloudWatch-Observability-EKS-addon-JMX-metrics)
+ [Abilitazione delle metriche di Kueue](#enable-Kueue-metrics)
+ [Aggiungere file di configurazione del collettore OpenTelemetry](#install-CloudWatch-Observability-EKS-addon-OpenTelemetry)
+ [Abilitazione di APM tramite Application Signals per il tuo cluster Amazon EKS](#Container-Insights-setup-EKS-appsignalsconfiguration)
+ [Risoluzione dei problemi relativi al componente aggiuntivo Amazon CloudWatch Observability EKS o al grafico Helm](#Container-Insights-setup-EKS-addon-troubleshoot)
+ [Disattiva Application Signals](#Opting-out-App-Signals)

## Opzione 1: installazione utilizzando EKS Pod Identity
<a name="install-CloudWatch-Observability-EKS-pod-identity"></a>

Se si utilizza la versione 3.1.0 o successiva del componente aggiuntivo, è possibile utilizzare EKS Pod Identity per concedere le autorizzazioni richieste al componente aggiuntivo. EKS Pod Identity è l'opzione consigliata e offre vantaggi come il privilegio minimo, la rotazione delle credenziali e la verificabilità. Inoltre, l'utilizzo di EKS Pod Identity consente di installare il componente aggiuntivo EKS come parte della creazione del cluster stesso.

Per utilizzare questo metodo, segui innanzitutto i passaggi di [Associazione EKS Pod Identity](https://docs.aws.amazon.com/eks/latest/userguide/pod-id-association.html#pod-id-association-create/) per creare il ruolo IAM e configurare l'agente EKS Pod Identity.

Quindi installa il componente aggiuntivo Amazon CloudWatch Observability EKS. Per installare il componente aggiuntivo, puoi utilizzare la AWS CLI console Amazon EKS o Terraform. CloudFormation

------
#### [ AWS CLI ]

**Per utilizzare il AWS CLI componente aggiuntivo Amazon CloudWatch Observability EKS**  
Esegui i comandi seguenti: Sostituiscilo `my-cluster-name` con il nome del cluster e sostituiscilo *111122223333* con l'ID dell'account. Sostituiscilo *my-role* con il ruolo IAM creato nella fase di associazione EKS Pod Identity.

```
aws iam attach-role-policy \
--role-name my-role \
--policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy

aws eks create-addon \
--addon-name amazon-cloudwatch-observability \
--cluster-name my-cluster-name \
--pod-identity-associations serviceAccount=cloudwatch-agent,roleArn=arn:aws:iam::111122223333:role/my-role
```

------
#### [ Amazon EKS console ]

**Per utilizzare la console Amazon EKS per aggiungere il componente aggiuntivo Amazon CloudWatch Observability EKS**

1. Apri la console Amazon EKS a [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Nel pannello di navigazione a sinistra, seleziona **Cluster**.

1. Scegli il nome del cluster per cui desideri configurare il componente aggiuntivo Amazon CloudWatch Observability EKS.

1. Selezionare la scheda **Componenti aggiuntivi**.

1. Scegli **Ottieni altri componenti aggiuntivi**.

1. Nella pagina **Seleziona componenti aggiuntivi**, procedi come segue:

   1. Nella sezione **Amazon EKS-Addons**, seleziona la casella di controllo **Amazon CloudWatch ** Observability.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Configura le impostazioni dei componenti aggiuntivi selezionati**, procedi come segue:

   1. Seleziona la **Versione** che desideri utilizzare.

   1. Per **Accesso al componente aggiuntivo**, seleziona **EKS Pod Identity**

   1. Se non hai configurato un ruolo IAM, scegli **Crea ruolo consigliato**, quindi scegli **Avanti** fino al **Passaggio 3: Nomina, verifica e crea**. Se lo desideri, puoi modificare il nome del ruolo, altrimenti scegli **Crea ruolo**, quindi torna alla pagina del componente aggiuntivo e seleziona il ruolo IAM che hai appena creato.

   1. (Facoltativo) È possibile espandere le **Impostazioni di configurazione facoltative**. Se selezioni **Sostituisci** per **Metodo di risoluzione dei conflitti**, una o più impostazioni per il componente aggiuntivo esistente possono essere sovrascritte con le impostazioni del componente aggiuntivo di Amazon EKS. Se rimuovi questa opzione e c'è un conflitto con le impostazioni esistenti, l'operazione non va a buon fine e viene visualizzato un messaggio di errore per aiutarti a risolvere il conflitto. Prima di selezionare questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devono essere gestite dall'utente.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Rivedi e aggiungi**, scegli **Crea**. Una volta completata l'installazione, viene visualizzato il componente aggiuntivo.

------
#### [ CloudFormation ]

**Da utilizzare CloudFormation per installare il componente aggiuntivo Amazon CloudWatch Observability EKS**

1. Innanzitutto, esegui il AWS CLI comando seguente per allegare la politica IAM necessaria al tuo ruolo IAM. Sostituiscilo *my-role* con il ruolo che hai creato nella fase di associazione EKS Pod Identity.

   ```
   aws iam attach-role-policy \
   --role-name my-role \
   --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
   ```

1. Successivamente, crea le seguenti risorse. Sostituiscilo `my-cluster-name` con il nome del cluster, sostituiscilo *111122223333* con l'ID dell'account e sostituiscilo *my-role* con il ruolo IAM creato nella fase di associazione EKS Pod Identity. Per ulteriori informazioni, consulta [ AWS::EKS::Addon](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html).

   ```
   {
       "Resources": {
           "EKSAddOn": {
               "Type": "AWS::EKS::Addon",
               "Properties": {
                   "AddonName": "amazon-cloudwatch-observability",
                   "ClusterName": "my-cluster-name",
                   "PodIdentityAssociations": [
                       {
                           "ServiceAccount": "cloudwatch-agent",
                           "RoleArn": "arn:aws:iam::111122223333:role/my-role"
                       }
                   ]
               }
           }
       }
   }
   ```

------
#### [ Terraform ]

**Per utilizzare Terraform per installare il componente aggiuntivo Amazon CloudWatch Observability EKS**

1. Utilizza quanto segue. Sostituiscilo `my-cluster-name` con il nome del cluster, sostituiscilo *111122223333* con l'ID dell'account e sostituiscilo *my-service-account-role* con il ruolo IAM creato nella fase di associazione EKS Pod Identity.

   Per ulteriori informazioni, consulta [ Resource: aws\$1eks\$1addon](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/eks_addon) nella documentazione di Terraform.

1. 

   ```
   resource "aws_iam_role_policy_attachment" "CloudWatchAgentServerPolicy" {
     policy_arn = "arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy"
     role       = "my-role"
   }
   
   resource "aws_eks_addon" "example" {
     cluster_name = "my-cluster-name"
     addon_name   = "amazon-cloudwatch-observability"
     pod_identity_associations {
         roleArn = "arn:aws:iam::111122223333:role/my-role"
         serviceAccount = "cloudwatch-agent"
     }
   }
   ```

------

## Opzione 2: installazione con autorizzazioni IAM sui nodi di lavoro
<a name="install-CloudWatch-Observability-EKS-addon-workernodes"></a>

Per utilizzare questo metodo, collega innanzitutto la policy **CloudWatchAgentServerPolicy**IAM ai nodi di lavoro inserendo il seguente comando. In questo comando, sostituiscilo *my-worker-node-role* con il ruolo IAM utilizzato dai nodi di lavoro Kubernetes.

```
aws iam attach-role-policy \
--role-name my-worker-node-role \
--policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy
```

Quindi installa il componente aggiuntivo Amazon CloudWatch Observability EKS. Per installare il componente aggiuntivo, puoi utilizzare la AWS CLI console o Terraform CloudFormation.

------
#### [ AWS CLI ]

**Per utilizzare il AWS CLI componente aggiuntivo Amazon CloudWatch Observability EKS**  
Inserire il seguente comando. Sostituisci `my-cluster-name` con il nome del cluster.

```
aws eks create-addon --addon-name amazon-cloudwatch-observability --cluster-name my-cluster-name
```

------
#### [ Amazon EKS console ]

**Per utilizzare la console Amazon EKS per aggiungere il componente aggiuntivo Amazon CloudWatch Observability EKS**

1. Apri la console Amazon EKS a [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Nel pannello di navigazione a sinistra, seleziona **Cluster**.

1. Scegli il nome del cluster per cui desideri configurare il componente aggiuntivo Amazon CloudWatch Observability EKS.

1. Selezionare la scheda **Componenti aggiuntivi**.

1. Scegli **Ottieni altri componenti aggiuntivi**.

1. Nella pagina **Seleziona componenti aggiuntivi**, procedi come segue:

   1. Nella sezione **Amazon EKS-Addons**, seleziona la casella di controllo **Amazon CloudWatch ** Observability.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Configura le impostazioni dei componenti aggiuntivi selezionati**, procedi come segue:

   1. Seleziona la **Versione** che desideri utilizzare.

   1. (Facoltativo) È possibile espandere le **Impostazioni di configurazione facoltative**. Se selezioni **Sostituisci** per **Metodo di risoluzione dei conflitti**, una o più impostazioni per il componente aggiuntivo esistente possono essere sovrascritte con le impostazioni del componente aggiuntivo di Amazon EKS. Se rimuovi questa opzione e c'è un conflitto con le impostazioni esistenti, l'operazione non va a buon fine e viene visualizzato un messaggio di errore per aiutarti a risolvere il conflitto. Prima di selezionare questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devono essere gestite dall'utente.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Rivedi e aggiungi**, scegli **Crea**. Una volta completata l'installazione, viene visualizzato il componente aggiuntivo.

------
#### [ CloudFormation ]

**Da utilizzare CloudFormation per installare il componente aggiuntivo Amazon CloudWatch Observability EKS**  
Sostituisci `my-cluster-name` con il nome del cluster. Per ulteriori informazioni, consulta [ AWS::EKS::Addon](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-addon.html).

```
{
    "Resources": {
        "EKSAddOn": {
            "Type": "AWS::EKS::Addon",
            "Properties": {
                "AddonName": "amazon-cloudwatch-observability",
                "ClusterName": "my-cluster-name"
            }
        }
    }
}
```

------
#### [ Helm chart ]

**Per utilizzare il grafico Helm `amazon-cloudwatch-observability`**

1. È necessario che Helm sia installato per utilizzare questo grafico. Per ulteriori informazioni sull'installazione di Helm, consulta la [documentazione di Helm](https://helm.sh/docs/).

1. Dopo aver installato Helm, immetti i seguenti comandi. Sostituiscilo *my-cluster-name* con il nome del cluster e sostituiscilo *my-cluster-region* con la regione in cui viene eseguito il cluster.

   ```
   helm repo add aws-observability https://aws-observability.github.io/helm-charts
   helm repo update aws-observability
   helm install --wait --create-namespace --namespace amazon-cloudwatch amazon-cloudwatch-observability aws-observability/amazon-cloudwatch-observability --set clusterName=my-cluster-name --set region=my-cluster-region
   ```

------
#### [ Terraform ]

**Per utilizzare Terraform per installare il componente aggiuntivo Amazon CloudWatch Observability EKS**  
Sostituisci `my-cluster-name` con il nome del cluster. Per ulteriori informazioni, consulta la sezione [Risorsa: aws\$1eks\$1addon](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/eks_ad).

```
resource "aws_eks_addon" "example" {
  addon_name   = "amazon-cloudwatch-observability"
  cluster_name = "my-cluster-name"
}
```

------

## Opzione 3: installazione tramite il ruolo dell'account di servizio IAM (si applica solo all'utilizzo del componente aggiuntivo)
<a name="install-CloudWatch-Observability-EKS-addon-serviceaccountrole"></a>

Questo metodo è valido solo se utilizzi il componente aggiuntivo Amazon CloudWatch Observability EKS. Prima di utilizzare questo metodo, verifica di soddisfare i seguenti prerequisiti:
+ Disponi di un cluster Amazon EKS funzionale con nodi collegati in una delle Regioni AWS che supportano Approfondimenti sui container. Per l'elenco delle regioni supportate, consulta [Container Insights](ContainerInsights.md).
+ `kubectl` deve essere installato e configurato per il cluster. Per ulteriori informazioni, consulta la pagina relativa all'[installazione di `kubectl`](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html) nella *Guida per l'utente di Amazon EKS*.
+ `eksctl` deve essere installato. Per ulteriori informazioni, consulta la pagina [Installing or updating `eksctl`](https://docs.aws.amazon.com/eks/latest/userguide/eksctl.html) nella *Guida per l'utente di Amazon EKS*.

------
#### [ AWS CLI ]

**Per utilizzare l' AWS CLI installazione del componente aggiuntivo Amazon CloudWatch Observability EKS utilizzando il ruolo dell'account del servizio IAM**

1. Immetti il comando seguente per creare un provider OpenID Connect (OIDC), se il cluster non ne ha già uno. Per ulteriori informazioni, consulta la pagina [Configuring a Kubernetes service account to assume an IAM role](https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html) nella *Guida per l'utente di Amazon EKS*.

   ```
   eksctl utils associate-iam-oidc-provider --cluster my-cluster-name --approve
   ```

1. Immetti il seguente comando per creare il ruolo IAM con la **CloudWatchAgentServerPolicy**policy allegata e configura l'account del servizio agente per assumere quel ruolo utilizzando OIDC. Sostituiscilo *my-cluster-name* con il nome del cluster e sostituiscilo *my-service-account-role* con il nome del ruolo a cui desideri associare l'account di servizio. Se il ruolo non esiste ancora, `eksctl` lo crea per tuo conto. 

   ```
   eksctl create iamserviceaccount \
     --name cloudwatch-agent \
     --namespace amazon-cloudwatch --cluster my-cluster-name \
     --role-name my-service-account-role \
     --attach-policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy \
     --role-only \
     --approve
   ```

1. Installa il componente aggiuntivo immettendo il seguente comando. Sostituiscilo *my-cluster-name* con il nome del cluster, sostituiscilo *111122223333* con l'ID dell'account e sostituiscilo *my-service-account-role* con il ruolo IAM creato nel passaggio precedente.

   ```
   aws eks create-addon --addon-name amazon-cloudwatch-observability --cluster-name my-cluster-name --service-account-role-arn arn:aws:iam::111122223333:role/my-service-account-role
   ```

------
#### [ Amazon EKS console ]

**Per utilizzare la console per installare il componente aggiuntivo Amazon CloudWatch Observability EKS utilizzando il ruolo dell'account del servizio IAM**

1. Apri la console Amazon EKS a [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Nel pannello di navigazione a sinistra, seleziona **Cluster**.

1. Scegli il nome del cluster per cui desideri configurare il componente aggiuntivo Amazon CloudWatch Observability EKS.

1. Selezionare la scheda **Componenti aggiuntivi**.

1. Scegli **Ottieni altri componenti aggiuntivi**.

1. Nella pagina **Seleziona componenti aggiuntivi**, procedi come segue:

   1. Nella sezione **Amazon EKS-Addons**, seleziona la casella di controllo **Amazon CloudWatch ** Observability.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Configura le impostazioni dei componenti aggiuntivi selezionati**, procedi come segue:

   1. Seleziona la **Versione** che desideri utilizzare.

   1. Per **Accesso al componente aggiuntivo**, seleziona **Ruoli IAM per gli account di servizio (IRSA)**

   1. Seleziona il ruolo IAM nella casella **Accesso al componente aggiuntivo**.

   1. (Facoltativo) È possibile espandere le **Impostazioni di configurazione facoltative**. Se selezioni **Sostituisci** per **Metodo di risoluzione dei conflitti**, una o più impostazioni per il componente aggiuntivo esistente possono essere sovrascritte con le impostazioni del componente aggiuntivo di Amazon EKS. Se rimuovi questa opzione e c'è un conflitto con le impostazioni esistenti, l'operazione non va a buon fine e viene visualizzato un messaggio di errore per aiutarti a risolvere il conflitto. Prima di selezionare questa opzione, assicurarsi che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devono essere gestite dall'utente.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Rivedi e aggiungi**, scegli **Crea**. Una volta completata l'installazione, viene visualizzato il componente aggiuntivo.

------

## Considerazioni per Amazon EKS Hybrid Nodes
<a name="install-CloudWatch-Observability-EKS-addon-hybrid"></a>

Le metriche a livello di nodo non sono disponibili per i nodi ibridi perché [Container Insights](ContainerInsights.md) dipende dalla disponibilità del [servizio di metadati di istanza (IMDS) EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html) per le metriche a livello di nodo. Per i nodi ibridi sono disponibili metriche a livello di cluster, Pod, carico di lavoro e container.

Dopo avere installato il componente aggiuntivo seguendo i passaggi nelle sezioni precedenti, è necessario aggiornare il manifesto del componente aggiuntivo per garantire il corretto funzionamento dell'agente sui nodi ibridi. Modifica la risorsa `amazoncloudwatchagents` nel cluster per aggiungere la variabile di ambiente `RUN_WITH_IRSA` in modo che corrisponda a quanto segue.

```
kubectl edit amazoncloudwatchagents -n amazon-cloudwatch cloudwatch-agent
```

```
apiVersion: v1
       items:
       - apiVersion: cloudwatch.aws.amazon.com/v1alpha1
         kind: AmazonCloudWatchAgent
         metadata:
           ...
           name: cloudwatch-agent
           namespace: amazon-cloudwatch
           ...
         spec:
           ...
           env:
           - name: RUN_WITH_IRSA # <-- Add this
             value: "True" # <-- Add this
           - name: K8S_NODE_NAME
             valueFrom:
               fieldRef:
                 fieldPath: spec.nodeName
                 ...
```

## (Facoltativo) Configurazione aggiuntiva
<a name="install-CloudWatch-Observability-EKS-addon-configuration"></a>

**Topics**
+ [Disattivazione della raccolta di log di container](#CloudWatch-Observability-EKS-addon-OptOutContainerLogs)
+ [Utilizzo di una configurazione Fluent Bit personalizzata](#CloudWatch-Observability-EKS-addon-CustomFluentBit)
+ [Gestione delle tolleranze di Kubernetes per i carichi di lavoro dei pod installati](#CloudWatch-Observability-EKS-addon-Tolerations)
+ [Disattivazione della raccolta di metriche di calcolo accelerato](#CloudWatch-Observability-EKS-addon-OptOutAccelerated)
+ [Utilizzare una configurazione personalizzata CloudWatch dell'agente](#CloudWatch-Observability-EKS-addon-CustomAgentConfig)
+ [Gestisci i certificati webhook di ammissione TLS](#CloudWatch-Observability-EKS-addon-Webhook)
+ [Raccogli il volume Amazon EBS IDs](#CloudWatch-Observability-EKS-addon-VolumeIDs)

### Disattivazione della raccolta di log di container
<a name="CloudWatch-Observability-EKS-addon-OptOutContainerLogs"></a>

Per impostazione predefinita, il componente aggiuntivo utilizza Fluent Bit per raccogliere i log dei container da tutti i pod e quindi invia i log a Logs. CloudWatch Per informazioni su quali log vengono raccolti, consulta la pagina [Configurazione di Fluent Bit](Container-Insights-setup-logs-FluentBit.md#Container-Insights-FluentBit-setup).

**Nota**  
Né il componente aggiuntivo né il grafico Helm gestiscono le risorse Fluentd o Fluent Bit esistenti in un cluster. È possibile eliminare le risorse Fluentd o Fluent Bit esistenti prima di installare il componente aggiuntivo o il grafico Helm. In alternativa, per mantenere la configurazione esistente ed evitare che il componente aggiuntivo o il grafico Helm installino anche Fluent Bit, è possibile disabilitarla seguendo le istruzioni in questa sezione. 

Per disattivare la raccolta dei log dei container se utilizzi il componente aggiuntivo Amazon CloudWatch Observability EKS, utilizza la seguente opzione quando crei o aggiorni il componente aggiuntivo:

```
--configuration-values '{ "containerLogs": { "enabled": false } }'
```

Per annullare la raccolta dei log dei container se utilizzi il grafico Helm, utilizza la seguente opzione quando crei o aggiorni il componente aggiuntivo:

```
--set containerLogs.enabled=false
```

### Utilizzo di una configurazione Fluent Bit personalizzata
<a name="CloudWatch-Observability-EKS-addon-CustomFluentBit"></a>

A partire dalla versione 1.7.0 del componente aggiuntivo Amazon CloudWatch Observability EKS, puoi modificare la configurazione Fluent Bit quando crei o aggiorni il componente aggiuntivo o il grafico Helm. Fornisci la configurazione Fluent Bit personalizzata nella sezione di livello root `containerLogs` della configurazione avanzata del componente aggiuntivo o sostituisci i valori nel grafico Helm. All'interno di questa sezione, fornisci la configurazione Fluent Bit personalizzata nella sezione `config` (per Linux) o nella sezione `configWindows` (per Windows). `config` è ulteriormente suddiviso nelle seguenti sottosezioni:
+ `service`: questa sezione rappresenta la configurazione `SERVICE` per definire il comportamento globale del motore Fluent Bit.
+ `customParsers`: questa sezione rappresenta tutti i `PARSER` globali che si desidera includere in grado di prendere voci di log non strutturate e fornire loro una struttura per facilitarne l'elaborazione e il successivo filtraggio.
+ `extraFiles`: questa sezione può essere utilizzata per fornire file `conf` Fluent Bit aggiuntivi da includere. Per impostazione predefinita, sono inclusi i seguenti tre file `conf`:
  + `application-log.conf`— Un `conf` file per inviare i log delle applicazioni dal cluster al gruppo di log in Logs. `/aws/containerinsights/my-cluster-name/application` CloudWatch 
  + `dataplane-log.conf`— Un `conf` file per l'invio dei log corrispondenti ai componenti del piano dati del cluster, inclusi i log CRI, i log kubelet, i log kube-proxy e i log CNI di Amazon VPC VPC, al gruppo di log in Logs. `/aws/containerinsights/my-cluster-name/dataplane` CloudWatch 
  + `host-log.conf`— Un `conf` per inviare i log da `/var/log/dmesg` e su Linux e System su Windows al gruppo di log in. `/var/log/messages` `/var/log/secure` `winlogs` `/aws/containerinsights/my-cluster-name/host` CloudWatch

**Nota**  
Fornisci la configurazione completa per ciascuna di queste singole sezioni anche se stai modificando solo un campo all'interno di una sottosezione. Ti consigliamo di utilizzare la configurazione predefinita fornita di seguito come base e di modificarla di conseguenza in modo da non disabilitare la funzionalità abilitata per impostazione predefinita. Puoi utilizzare la seguente configurazione YAML quando modifichi la configurazione avanzata per il componente aggiuntivo Amazon EKS o quando fornisci valori sostitutivi per il grafico Helm. 

Per trovare la `config` sezione relativa al tuo cluster, consulta [aws-observability/helm-charts](https://github.com/aws-observability/helm-charts/releases) su GitHub e trova la versione corrispondente alla versione del componente aggiuntivo o Helm chart che stai installando. Quindi vai a `/charts/amazon-cloudwatch-observability/values.yaml` per individuare la sezione `config` (per Linux) e la sezione `configWindows` (per Windows) all'interno della sezione `fluentBit` sotto `containerLogs`.

Ad esempio, la configurazione predefinita di Fluent Bit per la versione 1.7.0 è disponibile [qui](https://github.com/aws-observability/helm-charts/blob/v1.7.0/charts/amazon-cloudwatch-observability/values.yaml#L44)).

Ti consigliamo di fornire `config` sotto forma di YAML quando lo fornisci utilizzando la configurazione avanzata del componente aggiuntivo Amazon EKS o come valori sostitutivi per l'installazione con Helm. Assicurati che YAML sia conforme alla seguente struttura.

```
containerLogs:
  fluentBit:
    config:
      service: |
        ...
      customParsers: |
        ...
      extraFiles:
        application-log.conf: |
          ...
        dataplane-log.conf: |
          ...
        host-log.conf: |
          ...
```

L'esempio seguente di `config` modifica l'impostazione globale per l'intervallo di flush in modo che sia di 45 secondi. Anche se l'unica modifica riguarda il campo `Flush`, è comunque necessario fornire la definizione di `SERVICE` completa per la sottosezione del servizio. Poiché questo esempio non ha specificato le sostituzioni per le altre sottosezioni, per esse vengono utilizzate le impostazioni predefinite.

```
containerLogs:
  fluentBit:
    config:
      service: |
        [SERVICE]
          Flush                     45
          Grace                     30
          Log_Level                 error
          Daemon                    off
          Parsers_File              parsers.conf
          storage.path              /var/fluent-bit/state/flb-storage/
          storage.sync              normal
          storage.checksum          off
          storage.backlog.mem_limit 5M
```

La configurazione di esempio seguente include un file `conf` Fluent bit aggiuntivo. In questo esempio, stiamo aggiungendo un `my-service.conf` personalizzato sotto `extraFiles`, che verrà incluso in aggiunta ai tre `extraFiles` predefiniti.

```
containerLogs:
  fluentBit:
    config:
      extraFiles:
        my-service.conf: |
          [INPUT]
            Name              tail
            Tag               myservice.*
            Path              /var/log/containers/*myservice*.log
            DB                /var/fluent-bit/state/flb_myservice.db
            Mem_Buf_Limit     5MB
            Skip_Long_Lines   On
            Ignore_Older      1d
            Refresh_Interval  10
          
          [OUTPUT]
            Name                cloudwatch_logs
            Match               myservice.*
            region              ${AWS_REGION}
            log_group_name      /aws/containerinsights/${CLUSTER_NAME}/myservice
            log_stream_prefix   ${HOST_NAME}-
            auto_create_group   true
```

Il prossimo esempio rimuove completamente un file `conf` esistente da `extraFiles`. Ciò lo esclude completamente da `application-log.conf` sovrascrivendolo con una stringa vuota. La semplice omissione di `application-log.conf` da `extraFiles` implicherebbe invece l'utilizzo del valore predefinito, che non è quello che stiamo cercando di ottenere in questo esempio. Lo stesso vale per la rimozione di qualsiasi file `conf` personalizzato che potresti aver aggiunto in precedenza a `extraFiles`.

```
containerLogs:
  fluentBit:
    config:
      extraFiles:
        application-log.conf: ""
```

### Gestione delle tolleranze di Kubernetes per i carichi di lavoro dei pod installati
<a name="CloudWatch-Observability-EKS-addon-Tolerations"></a>

A partire dalla versione 1.7.0 del componente aggiuntivo Amazon CloudWatch Observability EKS, il componente aggiuntivo e il grafico Helm impostano per impostazione predefinita le tolleranze di Kubernetes per *tollerare tutte le contaminazioni* sui carichi di lavoro dei pod installati dal componente aggiuntivo o dal grafico Helm. Ciò garantisce che i daemonset come l'agente e Fluent Bit possano pianificare i pod su tutti i nodi del cluster per impostazione predefinita. CloudWatch Per ulteriori informazioni su taint e tolleranze, consulta [Taints and Tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) nella documentazione di Kubernetes. 

Le tolleranze predefinite impostate dal componente aggiuntivo o dal grafico Helm sono le seguenti:

```
tolerations:
- operator: Exists
```

È possibile sovrascrivere le tolleranze predefinite impostando il campo `tolerations` al livello root quando si utilizza la configurazione avanzata del componente aggiuntivo o quando si installa o si aggiorna il grafico Helm con sostituzioni dei valori. Di seguito è riportato un possibile esempio:

```
tolerations:
- key: "key1"
  operator: "Exists"
  effect: "NoSchedule"
```

Per omettere completamente le tolleranze, puoi utilizzare una configurazione simile alla seguente:

```
tolerations: []
```

Qualsiasi modifica alle tolleranze si applica a tutti i carichi di lavoro dei pod installati dal componente aggiuntivo o dal grafico Helm.

### Disattivazione della raccolta di metriche di calcolo accelerato
<a name="CloudWatch-Observability-EKS-addon-OptOutAccelerated"></a>

Per impostazione predefinita, Container Insights con osservabilità migliorata raccoglie metriche per il monitoraggio di Accelerated Compute, tra cui le metriche della GPU NVIDIA, le metriche AWS Neuron per AWS Trainium e Inferentia e le metriche Elastic Fabric Adapter (EFA). AWS AWS 

Le metriche delle GPU NVIDIA dei carichi di lavoro Amazon EKS vengono raccolte per impostazione predefinita a partire dalla versione `v1.3.0-eksbuild.1` del componente aggiuntivo EKS o dal grafico Helm e dalla versione dell'agente. `1.300034.0` CloudWatch Per un elenco delle metriche raccolte e dei prerequisiti, consulta [Metriche della GPU NVIDIA](Container-Insights-metrics-enhanced-EKS.md#Container-Insights-metrics-EKS-GPU).

AWS Le metriche Neuron per gli acceleratori AWS Trainium e AWS Inferentia vengono raccolte per impostazione predefinita a partire dalla versione del componente aggiuntivo EKS o dal grafico Helm e dalla versione `v1.5.0-eksbuild.1` dell'agente. `1.300036.0` CloudWatch Per un elenco delle metriche raccolte e dei prerequisiti, consulta [AWS Metriche neuronali per AWS Trainium e Inferentia AWS](Container-Insights-metrics-enhanced-EKS.md#Container-Insights-metrics-EKS-Neuron).

AWS Le metriche Elastic Fabric Adapter (EFA) dei nodi Linux sui cluster Amazon EKS vengono raccolte per impostazione predefinita a partire dalla versione `v1.5.2-eksbuild.1` del componente aggiuntivo EKS o dal grafico Helm e dalla versione dell'agente. `1.300037.0` CloudWatch Per un elenco delle metriche raccolte e dei prerequisiti, consulta [AWS Metriche Elastic Fabric Adapter (EFA)](Container-Insights-metrics-enhanced-EKS.md#Container-Insights-metrics-EFA).

Puoi scegliere di non raccogliere queste metriche impostando il `accelerated_compute_metrics` campo nel file di configurazione dell'agente su. CloudWatch `false` Questo campo si trova nella `kubernetes` sezione della `metrics_collected` sezione del file di CloudWatch configurazione. Di seguito è riportato un esempio di configurazione di non adesione. Per ulteriori informazioni su come utilizzare le configurazioni degli CloudWatch agenti personalizzate, vedere la sezione seguente,[Utilizzare una configurazione personalizzata CloudWatch dell'agente](#CloudWatch-Observability-EKS-addon-CustomAgentConfig).

```
{
  "logs": {
    "metrics_collected": {
      "kubernetes": {
        "enhanced_container_insights": true,
        "accelerated_compute_metrics": false
      }
    }
  }
}
```

### Utilizzare una configurazione personalizzata CloudWatch dell'agente
<a name="CloudWatch-Observability-EKS-addon-CustomAgentConfig"></a>

Per raccogliere altre metriche, log o tracce utilizzando l' CloudWatch agente, puoi specificare una configurazione personalizzata mantenendo attivi Container Insights e CloudWatch Application Signals. A tale scopo, incorpora il file di configurazione dell' CloudWatch agente nella chiave di configurazione sotto la chiave dell'agente della configurazione avanzata che puoi utilizzare durante la creazione o l'aggiornamento del componente aggiuntivo EKS o del grafico Helm. Di seguito è rappresentata la configurazione predefinita dell'agente quando non si fornisce alcuna configurazione aggiuntiva.

**Importante**  
Qualsiasi configurazione personalizzata fornita utilizzando impostazioni di configurazione aggiuntive ha la precedenza sulla configurazione predefinita utilizzata dall'agente. Fai attenzione a non disattivare involontariamente funzionalità abilitate di default, come Container Insights con osservabilità migliorata e Application Signals. CloudWatch Se è necessario fornire una configurazione personalizzata dell'agente, consigliamo di utilizzare la seguente configurazione predefinita come base e modificarla di secondo le necessità.
+ Per utilizzare il componente aggiuntivo Amazon CloudWatch observability EKS

  ```
  --configuration-values '{
    "agent": {
      "config": {
        "logs": {
          "metrics_collected": {
            "application_signals": {},
            "kubernetes": {
              "enhanced_container_insights": true
            }
          }
        },
        "traces": {
          "traces_collected": {
            "application_signals": {}
          }
        }
      }
    }   
  }'
  ```
+ Per utilizzare il grafico Helm

  ```
  --set agent.config='{
    "logs": {
      "metrics_collected": {
        "application_signals": {},
        "kubernetes": {
          "enhanced_container_insights": true
        }
      }
    },
    "traces": {
      "traces_collected": {
        "application_signals": {}
      }
    }
  }'
  ```

L'esempio seguente mostra la configurazione predefinita dell' CloudWatch agente su Windows. L' CloudWatch agente su Windows non supporta la configurazione personalizzata.

```
{
  "logs": {
    "metrics_collected": {
      "kubernetes": {
        "enhanced_container_insights": true
      },
    }
  }
}
```

### Gestisci i certificati webhook di ammissione TLS
<a name="CloudWatch-Observability-EKS-addon-Webhook"></a>

Il componente aggiuntivo Amazon CloudWatch Observability EKS e il grafico Helm sfruttano i [webhook di ammissione](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/) di Kubernetes per convalidare e modificare le richieste di risorse (CR) `Instrumentation` personalizzate `AmazonCloudWatchAgent` e, facoltativamente, le richieste pod Kubernetes sul cluster se Application Signals è abilitato. CloudWatch In Kubernetes, i webhook richiedono un certificato TLS configurato per stabilire una relazione di attendibilità con il server API per garantire una comunicazione sicura.

Per impostazione predefinita, il componente aggiuntivo Amazon CloudWatch Observability EKS e il grafico Helm generano automaticamente una CA autofirmata e un certificato TLS firmato da questa CA per proteggere la comunicazione tra il server API e il server webhook. Questo certificato generato automaticamente ha una scadenza predefinita di 10 anni e non viene rinnovato automaticamente alla scadenza. Inoltre, il bundle CA e il certificato vengono rigenerati ogni volta che il componente aggiuntivo o il grafico Helm viene aggiornato o reinstallato, reimpostando così la scadenza. Se desideri modificare la scadenza predefinita del certificato generato automaticamente, puoi utilizzare le seguenti configurazioni aggiuntive durante la creazione o l'aggiornamento del componente aggiuntivo. Sostituiscilo con la durata *expiry-in-days* di scadenza desiderata in giorni. 
+ Usalo per il componente aggiuntivo Amazon CloudWatch Observability EKS

  ```
  --configuration-values '{ "admissionWebhooks": { "autoGenerateCert": { "expiryDays": expiry-in-days } } }' 
  ```
+ Utilizzare questo per il grafico Helm

  ```
  --set admissionWebhooks.autoGenerateCert.expiryDays=expiry-in-days
  ```

Per una soluzione di autorità di certificazione più sicura e ricca di funzionalità, il componente aggiuntivo offre il supporto opt-in per [cert-manager](https://cert-manager.io/docs/), una soluzione ampiamente adottata per la gestione dei certificati TLS in Kubernetes che semplifica il processo di ottenimento, rinnovo, gestione e utilizzo di tali certificati. Garantisce che i certificati siano validi e aggiornati e tenta di rinnovarli in un momento impostato prima della scadenza. cert-manager facilita anche l'emissione di certificati da una varietà di fonti supportate, tra cui [AWS Certificate Manager Private Certificate Authority](https://aws.amazon.com/private-ca/).

Ti consigliamo di esaminare le best practice per la gestione dei certificati TLS sui tuoi cluster e di scegliere di utilizzare cert-manager per gli ambienti di produzione. Tieni presente che se scegli di abilitare cert-manager per la gestione dei certificati TLS del webhook di ammissione, devi preinstallare cert-manager sul tuo cluster Amazon EKS prima di installare il componente aggiuntivo Amazon Observability EKS o il grafico Helm CloudWatch . Per ulteriori informazioni sulle opzioni di installazione disponibili, consulta la [ documentazione di cert-manager](https://cert-manager.io/docs/installation/). Dopo l'installazione, puoi scegliere di utilizzare cert-manager per la gestione dei certificati TLS webhook di ammissione utilizzando la seguente configurazione aggiuntiva.
+ Se utilizzi il componente aggiuntivo Amazon CloudWatch Observability EKS

  ```
  --configuration-values '{ "admissionWebhooks": { "certManager": { "enabled": true } } }' 
  ```
+ Se stai usando il grafico Helm

  ```
  --set admissionWebhooks.certManager.enabled=true
  ```

```
--configuration-values '{ "admissionWebhooks": { "certManager": { "enabled": true } } }' 
```

La configurazione avanzata descritta in questa sezione utilizza per impostazione predefinita un [ SelfSigned](https://cert-manager.io/docs/configuration/selfsigned/)emittente.

### Raccogli il volume Amazon EBS IDs
<a name="CloudWatch-Observability-EKS-addon-VolumeIDs"></a>

Se desideri raccogliere il volume Amazon EBS IDs nei log delle prestazioni, devi aggiungere un'altra policy al ruolo IAM collegata ai nodi di lavoro o all'account di servizio. Aggiungi quanto segue come una policy inline. Per ulteriori informazioni, consulta la pagina [Adding and Removing IAM Identity Permissions](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "ec2:DescribeVolumes"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
```

------

## Raccolta delle metriche di Java Management Extensions (JMX)
<a name="install-CloudWatch-Observability-EKS-addon-JMX-metrics"></a>

L' CloudWatch agente supporta la raccolta di metriche Java Management Extensions (JMX) su Amazon EKS. Ciò consente di raccogliere metriche aggiuntive dalle applicazioni Java in esecuzione su cluster Amazon EKS, consentendo di ottenere informazioni dettagliate su prestazioni, utilizzo della memoria, traffico e altre metriche critiche. Per ulteriori informazioni, consulta [Raccolta delle metriche di Java Management Extensions (JMX)](CloudWatch-Agent-JMX-metrics.md).

## Abilitazione delle metriche di Kueue
<a name="enable-Kueue-metrics"></a>

A partire dalla versione `v2.4.0-eksbuild.1` del componente aggiuntivo CloudWatch Observability EKS, Container Insights for Amazon EKS supporta la raccolta di metriche Kueue dai cluster Amazon EKS. Per ulteriori informazioni su questi parametri, consulta [Metriche Kueue](Container-Insights-metrics-EKS.md#Container-Insights-metrics-Kueue).

**Se utilizzi il componente aggiuntivo Amazon SageMaker AI Hyperpod Task Governance EKS, puoi saltare i passaggi nella sezione Prerequisiti e seguire semplicemente i passaggi indicati.** [Abilitazione del flag di configurazione](#enable-Kueue-metrics-flag)

### Prerequisiti
<a name="enable-Kueue-metrics-prerequisites"></a>

Prima di installare Kueue nel cluster Amazon EKS, apporta le seguenti modifiche al file manifesto:

1. Abilita le metriche opzionali delle risorse della coda del cluster per Kueue. Per fare ciò, modifica la riga in. `controller_manager_config.yaml` `kueue-system` ConfigMap Nella sezione `metrics`, aggiungi o togli il commento dalla riga `enableClusterQueueResources: true`.

   ```
   apiVersion: v1
   data:
     controller_manager_config.yaml: |
       apiVersion: config.kueue.x-k8s.io/v1beta1
       kind: Configuration
       health:
         healthProbeBindAddress: :8081
       metrics:
         bindAddress: :8080
         enableClusterQueueResources: true  <-- ADD/UNCOMMENT THIS LINE
   ```

1. Per impostazione predefinita, tutti i servizi `k8s` sono disponibili a livello di cluster. Kueue crea un servizio `kueue-controller-manager-metrics-service` per esporre le metriche. Per evitare osservazioni duplicate per le metriche, modifica questo servizio per consentire l'accesso solo al servizio della metrica dallo stesso nodo. Per fare ciò, aggiungi la riga `internalTrafficPolicy: Local` alla definizione `kueue-controller-manager-metrics-service`.

   ```
   apiVersion: v1
   kind: Service
   metadata:
     labels:
       ...
     name: kueue-controller-manager-metrics-service
     namespace: kueue-system
   spec:
     ports:
     - name: https
       port: 8443
       protocol: TCP
       targetPort: https
     internalTrafficPolicy: Local   <-- ADD THIS LINE
     selector:
       control-plane: controller-manager
   ```

1. Infine, il pod `kueue-controller-manager` crea un container `kube-rbac-proxy`. Questo container ha attualmente un alto livello di verbosità di registrazione, il che fa sì che il token bearer del cluster venga registrato da quel container quando lo scraper di metriche accede a `kueue-controller-manager-metrics-service`. Si consiglia di ridurre questa verbosità della registrazione. Il valore predefinito nel manifesto distribuito da Kueue è 10, si consiglia di impostarlo su 0.

   ```
   apiVersion: apps/v1
   kind: Deployment
   metadata:
     labels:
       ...
     name: kueue-controller-manager
     namespace: kueue-system
   spec:
     ...
     template:
       ...
       spec:
         containers:
         ...
         - args:
           - --secure-listen-address=0.0.0.0:8443
           - --upstream=http://127.0.0.1:8080/
           - --logtostderr=true
           - --v=0  <-- CHANGE v=10 TO v=0
           image: gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0
           name: kube-rbac-proxy
           ...
   ```

### Abilitazione del flag di configurazione
<a name="enable-Kueue-metrics-flag"></a>

Per abilitare le metriche di Kueue, è necessario abilitare `kueue_container_insights` nella configurazione aggiuntiva del componente aggiuntivo. Puoi farlo utilizzando AWS CLI per configurare il componente aggiuntivo EKS Observability o utilizzando la console Amazon EKS.

**Dopo aver installato correttamente il componente aggiuntivo EKS Observability con uno dei seguenti metodi, puoi visualizzare i parametri del cluster Amazon EKS nella scheda Dashboard della HyperPod console.**

------
#### [ AWS CLI ]

**Per abilitare le metriche Kueue utilizzando il AWS CLI**
+ Immettete il seguente AWS CLI comando per installare il componente aggiuntivo.

  ```
  aws eks create-addon --cluster-name cluster-name --addon-name amazon-cloudwatch-observability --configuration-values "configuration_json_file"
  ```

  Di seguito è riportato un esempio del file JSON con i valori di configurazione.

  ```
  {
      "agent": {
          "config": {
              "logs": {
                  "metrics_collected": {
                      "kubernetes": {
                          "kueue_container_insights": true,
                          "enhanced_container_insights": true
                      },
                      "application_signals": { }
                  }
              },
              "traces": {
                  "traces_collected": {
                      "application_signals": { }
                  }
              }
          },
      },
  }
  ```

------
#### [ Amazon EKS console ]

**Per abilitare le metriche di Kueue tramite la console Amazon EKS**

1. Apri la console Amazon EKS a [https://console.aws.amazon.com/eks/home\$1/clusters](https://console.aws.amazon.com/eks/home#/clusters).

1. Scegli il nome del cluster.

1. Scegli **Componente aggiuntivo**.

1. Trova il componente aggiuntivo **Amazon CloudWatch Observability** nell'elenco e installalo. Quando lo fai, scegli **Configurazione facoltativa** e includi i seguenti valori di configurazione JSON.

   ```
   {
       "agent": {
           "config": {
               "logs": {
                   "metrics_collected": {
                       "kubernetes": {
                           "kueue_container_insights": true,
                           "enhanced_container_insights": true
                       },
                       "application_signals": { }
                   }
               },
               "traces": {
                   "traces_collected": {
                       "application_signals": { }
                   }
               }
           },
       },
   }
   ```

------

## Aggiungere file di configurazione del collettore OpenTelemetry
<a name="install-CloudWatch-Observability-EKS-addon-OpenTelemetry"></a>

L' CloudWatch agente supporta file di configurazione dei OpenTelemetry raccoglitori supplementari oltre ai propri file di configurazione. Questa funzionalità consente di utilizzare funzionalità CloudWatch dell'agente come CloudWatch Application Signals o Container Insights tramite la configurazione dell' CloudWatch agente e di inserire la configurazione del OpenTelemetry raccoglitore esistente con un singolo agente.

Per evitare conflitti di fusione con le pipeline create automaticamente dall' CloudWatch agente, si consiglia di aggiungere un suffisso personalizzato a ciascuno dei componenti e delle pipeline nella configurazione del collettore. OpenTelemetry In questo modo si eviteranno scontri e conflitti di unione.
+ Se utilizzi il componente aggiuntivo Amazon CloudWatch Observability EKS

  ```
  --configuration-values file://values.yaml
  ```

  or

  ```
  --configuration-values '
    agent:
      otelConfig:
        receivers:
          otlp/custom-suffix:
            protocols:
              http: {}
        exporters:
          awscloudwatchlogs/custom-suffix:
            log_group_name: "test-group"
            log_stream_name: "test-stream"
        service:
          pipelines:
            logs/custom-suffix:
              receivers: [otlp/custom-suffix]
              exporters: [awscloudwatchlogs/custom-suffix]
  '
  ```
+ Se stai usando il grafico Helm

  ```
  --set agent.otelConfig='
    receivers:
      otlp/custom-suffix:
        protocols:
          http: {}
    exporters:
      awscloudwatchlogs/custom-suffix:
        log_group_name: "test-group"
        log_stream_name: "test-stream"
    service:
      pipelines:
        logs/custom-suffix:
          receivers: [otlp/custom-suffix]
          exporters: [awscloudwatchlogs/custom-suffix]
  '
  ```

## Abilitazione di APM tramite Application Signals per il tuo cluster Amazon EKS
<a name="Container-Insights-setup-EKS-appsignalsconfiguration"></a>

Per impostazione predefinita, il monitoraggio delle prestazioni delle applicazioni OpenTelemetry (APM) basato su (OTEL) è abilitato tramite Application Signals quando si installa il componente aggiuntivo CloudWatch Observability EKS (V5.0.0 o versione successiva) o il grafico Helm. Puoi personalizzare ulteriormente impostazioni specifiche utilizzando la configurazione avanzata per il componente aggiuntivo Amazon EKS o sovrascrivendo i valori con il grafico Helm.

**Nota**  
Se si utilizza una soluzione APM basata su OpenTelemetry (OTEL), l'attivazione di Application Signals influisce sulla configurazione di osservabilità esistente. Rivedi l'implementazione corrente prima di procedere. Per mantenere la configurazione APM esistente dopo l'aggiornamento alla versione 5.0.0 o successiva, consulta. [Disattiva Application Signals](#Opting-out-App-Signals)

**Monitor automatico di Application Signals**

La versione 5.0.0 del componente aggiuntivo CloudWatch Observability Amazon EKS e del grafico Helm introducono nuove funzionalità. Ora puoi abilitare automaticamente Application Signals per tutti o specifici carichi di lavoro di servizio nel tuo cluster EKS tramite la configurazione di Monitor automatico. Le seguenti impostazioni `autoMonitor` possono essere specificate nella sezione `applicationSignals` sotto la sezione `manager` della configurazione avanzata.
+ *monitorAllServices*— Un flag booleano per abilitare (vero) o disabilitare (falso) il monitoraggio di tutti i carichi di lavoro del servizio tramite Auto monitor. Il valore predefinito è true. L'attivazione di questo flag garantirà che tutti i carichi di lavoro Kubernetes (Deployments e StatefulSets) nel cluster mappati su un servizio Kubernetes rientrino nell'ambito dell'abilitazione automatica di Application Signals quando vengono richiamati per la prima volta (o quando vengono riavviati per carichi di lavoro esistenti). DaemonSets Per impostazione predefinita, il sistema esclude i carichi di lavoro nei namespace `kube-system` e `amazon-cloudwatch`.
+ *languages*: un elenco di stringhe che specificano il set di linguaggi con cui Application Signals cercherà di instrumentare automaticamente i tuoi servizi, quando `monitorAllServices` è abilitato. L'impostazione predefinita è tutti i [linguaggi supportati](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html).
+ *restartPods*: un flag booleano controlla se i carichi di lavoro vengono riavviati dopo le modifiche alla configurazione. Il valore predefinito è false (falso). L'abilitazione di questo flag su `true` controlla se i carichi di lavoro Kubernetes nell'ambito di Monitor automatico si riavviano automaticamente quando si salvano le modifiche alla configurazione. Verranno prese in considerazione tutte le impostazioni dei carichi di lavoro Kubernetes che influiscono sul riavvio dei pod, ad esempio `updateStrategy`. Tieni presente che il riavvio può causare tempi di inattività del servizio.
+ *customSelector*: impostazioni per selezionare namespace o carichi di lavoro Kubernetes specifici per Monitor automatico.
  + *java*: specifica i carichi di lavoro per l'instrumentazione automatica con Java
  + *python*: specifica i carichi di lavoro per l'instrumentazione automatica con Python
  + *nodejs*: specifica i carichi di lavoro per l'instrumentazione automatica con Node.js
  + *dotnet*: specifica i carichi di lavoro per l'instrumentazione automatica con .NET

  Per ciascuno dei linguaggi di cui sopra, è possibile configurare i seguenti campi.
  + *namespaces*: un elenco di stringhe che specifica i namespace da selezionare. Il valore predefinito è un elenco vuoto, ossia []
  + *implementazioni*: un elenco di stringhe che specifica le implementazioni da selezionare. Specifica il valore nel formato `namespace/deployment`. Il valore predefinito è un elenco vuoto, ossia []
  + *daemonsets*: un elenco di stringhe che specifica i daemonsets da selezionare. Specifica il valore nel formato `namespace/daemonset`. Il valore predefinito è un elenco vuoto, ossia []
  + *statefulsets*: un elenco di stringhe che specifica gli statefulsets da selezionare. Specifica il valore nel formato `namespace/statefulset`. Il valore predefinito è un elenco vuoto, ossia []
+ *exclude*: impostazioni per escludere namespace o carichi di lavoro Kubernetes specifici da Monitor automatico. L'esclusione di un carico di lavoro ha la precedenza quando lo stesso carico di lavoro rientra anche nell'ambito di `monitorAllServices` o `customSelector`.
  + *java*: specifica i carichi di lavoro da escludere dall'instrumentazione automatica con Java
  + *python*: specifica i carichi di lavoro da escludere dall'instrumentazione automatica con Python
  + *nodejs*: specifica i carichi di lavoro da escludere dall'instrumentazione automatica con Node.js
  + *dotnet*: specifica i carichi di lavoro da escludere dall'instrumentazione automatica con .NET

  Per ciascuno dei linguaggi di cui sopra, è possibile configurare i seguenti campi.
  + *namespaces*: un elenco di stringhe che specifica i namespace da escludere. Il valore predefinito è un elenco vuoto, ossia []
  + *implementazioni*: un elenco di stringhe che specifica le implementazioni da escludere. Specifica il valore nel formato `namespace/deployment`. Il valore predefinito è un elenco vuoto, ossia []
  + *daemonsets*: un elenco di stringhe che specifica i daemonsets da escludere. Specifica il valore nel formato `namespace/daemonset`. Il valore predefinito è un elenco vuoto, ossia []
  + *statefulsets*: un elenco di stringhe che specifica gli statefulsets da escludere. Specifica il valore nel formato `namespace/statefulset`. Il valore predefinito è un elenco vuoto, ossia []

Di seguito è riportato un esempio di configurazione che abilita automaticamente Application Signals per tutti i carichi di lavoro di servizio esistenti e nuovi sul cluster.

```
manager:
  applicationSignals:
    autoMonitor:
      monitorAllServices: true
      restartPods: true
```

Di seguito è riportato un esempio di configurazione che abilita automaticamente Application Signals per ogni nuovo carico di lavoro di servizio che viene attivato e per qualsiasi carico di lavoro di servizio esistente che viene riavviato in modo esplicito nel cluster.

```
manager:
  applicationSignals:
    autoMonitor:
      monitorAllServices: true
```

Di seguito è riportato un esempio di configurazione che abilita automaticamente Application Signals con Java per tutti i pod esistenti e nuovi che corrispondono a un carico di lavoro nel namespace `pet-warehouse`.

```
manager:
  applicationSignals:
    autoMonitor:
      restartPods: true
      customSelector:
        java:
          namespaces: ["pet-warehouse"]
```

Di seguito è riportato un esempio di configurazione che abilita automaticamente Application Signals con Python per tutti i carichi di lavoro di servizio esistenti e nuovi sul cluster, ad eccezione dell'implementazione `pet-clinic`.

```
manager:
  applicationSignals:
    autoMonitor:
      monitorAllServices: true
      languages: ["python"]
      restartPods: true
      exclude:
        python:
          deployments: ["pet-warehouse/pet-clinic"]
```

Di seguito è riportato un esempio di configurazione che abilita automaticamente Application Signals con Java per tutti i carichi di lavoro di servizio nel cluster, ad eccezione di quelli nel namespace `python-apps`, e inoltre abilita Application Signals con Python specificamente per l'implementazione `sample-python-app` nel namespace `python-apps`.

```
manager:
  applicationSignals:
    autoMonitor:
      monitorAllServices: true
      languages: ["java"]
      restartPods: true
      customSelector:
        python:
          deployments: ["python-apps/sample-python-app"]
      exclude:
        java:
          namespaces: ["python-apps"]
```

## Risoluzione dei problemi relativi al componente aggiuntivo Amazon CloudWatch Observability EKS o al grafico Helm
<a name="Container-Insights-setup-EKS-addon-troubleshoot"></a>

Utilizza le seguenti informazioni per risolvere i problemi con il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Helm

**Topics**
+ [Aggiornamento ed eliminazione del componente aggiuntivo Amazon CloudWatch Observability EKS o del grafico Helm](#EKS-addon-troubleshoot-update)
+ [Verifica la versione dell' CloudWatch agente utilizzato dal componente aggiuntivo Amazon CloudWatch Observability EKS o dal grafico Helm](#EKS-addon-troubleshoot-version)
+ [Gestione di un ConfigurationConflict durante la gestione del componente aggiuntivo o del grafico Helm](#EKS-addon-troubleshoot-conflict)

### Aggiornamento ed eliminazione del componente aggiuntivo Amazon CloudWatch Observability EKS o del grafico Helm
<a name="EKS-addon-troubleshoot-update"></a>

Per istruzioni sull'aggiornamento o l'eliminazione del componente aggiuntivo Amazon CloudWatch Observability EKS, consulta Managing [Amazon](https://docs.aws.amazon.com/eks/latest/userguide/managing-add-ons.html) EKS add-on. Usa `amazon-cloudwatch-observability` come nome del componente aggiuntivo. 

Per eliminare il grafico Helm in un cluster, immetti il comando seguente.

```
helm delete amazon-cloudwatch-observability -n amazon-cloudwatch --wait
```

### Verifica la versione dell' CloudWatch agente utilizzato dal componente aggiuntivo Amazon CloudWatch Observability EKS o dal grafico Helm
<a name="EKS-addon-troubleshoot-version"></a>

Il componente aggiuntivo Amazon CloudWatch Observability EKS e il grafico Helm installano una risorsa personalizzata `AmazonCloudWatchAgent` che controlla il comportamento del daemset dell' CloudWatch agente sul cluster, inclusa la versione dell'agente utilizzata. CloudWatch È possibile ottenere un elenco di tutte le risorse `AmazonCloudWatchAgent` personalizzate installate sul cluster u immettendo il seguente comando:

```
kubectl get amazoncloudwatchagent -A
```

Nell'output di questo comando, dovresti essere in grado di controllare la versione dell'agente. CloudWatch In alternativa, puoi anche descrivere la risorsa `amazoncloudwatchagent` o uno dei pod `cloudwatch-agent-*` in esecuzione sul cluster per ispezionare l'immagine utilizzata.

### Gestione di un ConfigurationConflict durante la gestione del componente aggiuntivo o del grafico Helm
<a name="EKS-addon-troubleshoot-conflict"></a>

Quando installi o aggiorni il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Helm, se noti un errore causato dalle risorse esistenti, probabilmente è perché hai già l' CloudWatch agente e i relativi componenti associati come ServiceAccount, il ClusterRole e il ClusterRoleBinding installato nel cluster.

L'errore visualizzato dal componente aggiuntivo includerà `Conflicts found when trying to apply. Will not continue due to resolve conflicts mode`, 

L'errore visualizzato dal grafico Helm sarà simile a `Error: INSTALLATION FAILED: Unable to continue with install and invalid ownership metadata.`.

Quando il componente aggiuntivo o il grafico Helm tenta di installare l' CloudWatch agente e i componenti associati, se rileva modifiche nei contenuti, per impostazione predefinita fallisce l'installazione o l'aggiornamento per evitare di sovrascrivere lo stato delle risorse sul cluster.

Se stai tentando di effettuare l'onboarding al componente aggiuntivo Amazon CloudWatch Observability EKS e riscontri questo errore, ti consigliamo di eliminare una configurazione di CloudWatch agente esistente che avevi precedentemente installato sul cluster e quindi di installare il componente aggiuntivo EKS o il grafico Helm. Assicurati di eseguire il backup di tutte le personalizzazioni che potresti aver apportato alla configurazione originale dell' CloudWatch agente, ad esempio una configurazione personalizzata dell'agente, e di fornirle al componente aggiuntivo o al diagramma di Helm alla successiva installazione o aggiornamento. Se in precedenza avevi installato l' CloudWatch agente per l'onboarding su Container Insights, consulta per ulteriori informazioni. [Eliminazione dell' CloudWatch agente e di Fluent Bit for Container Insights](ContainerInsights-delete-agent.md)

In alternativa, il componente aggiuntivo supporta un'opzione di configurazione per la risoluzione dei conflitti che può specificare `OVERWRITE`. È possibile utilizzare questa opzione per procedere con l'installazione o l'aggiornamento del componente aggiuntivo sovrascrivendo i conflitti nel cluster. Se utilizzi la console Amazon EKS, trovi il **metodo di risoluzione dei conflitti** selezionando le **impostazioni di configurazione facoltative** quando crei o aggiorni il componente aggiuntivo. Se utilizzi il AWS CLI, puoi fornire il comando `--resolve-conflicts OVERWRITE` al tuo comando per creare o aggiornare il componente aggiuntivo. 

## Disattiva Application Signals
<a name="Opting-out-App-Signals"></a>

Ottimizza le tue preferenze di monitoraggio del servizio nella CloudWatch console o con l'SDK.

Per le versioni precedenti alla 5.0.0, per disabilitare il monitoraggio automatico di Application Signals, segui la procedura seguente:

**Utilizzo di CLI o SDK**

La seguente configurazione può essere applicata come configurazione avanzata al componente aggiuntivo EKS o come sovrascrittura dei valori quando si utilizza il helm chart.

```
{
  "manager": {
    "applicationSignals": {
      "autoMonitor": {
        "monitorAllServices": false
      }
    }
  }
}
```

Riavviate i servizi per rendere effettive le modifiche.

**Utilizzo della console**

Apri la CloudWatch console all'indirizzo [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Nel pannello di navigazione, in **Application Signals (APM)**, scegli **Servizi**.

1.  Scegli **Abilita Application Signals** per visualizzare la pagina di abilitazione.

1. Deseleziona la casella di controllo **Auto-Monitor** per ogni servizio che non desideri monitorare.

1. Riavvia i servizi per rendere effettive le modifiche.

# Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux
<a name="CloudWatch-Agent-SELinux"></a>

Se sul sistema è abilitato Linux (SELinux) con funzionalità di sicurezza avanzata, è necessario applicare le politiche di sicurezza appropriate per garantire che l' CloudWatch agente funzioni in un dominio limitato. 

## Prerequisiti
<a name="CloudWatch-Agent-SELinux-prerequisites"></a>

**Prima di eseguire la configurazione SELinux per l'agente, verificate i seguenti prerequisiti:**

**Per completare i prerequisiti per l'utilizzo dell' CloudWatch agente con SELinux**

1. Se non l'hai ancora fatto, installa i seguenti pacchetti di sviluppo delle SELinux politiche:

   ```
   sudo yum update
   sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git
   ```

1. Eseguite il comando seguente per verificare SELinux lo stato del sistema:

   ```
   sestatus
   ```

   Output di esempio:

   ```
   SELinux status:                 enabled
   SELinuxfs mount:                /sys/fs/selinux
   SELinux root directory:         /etc/selinux
   Loaded policy name:             targeted
   Current mode:                   permissive
   Mode from config file:          permissive
   Policy MLS status:              enabled
   Policy deny_unknown status:     allowed
   Memory protection checking:     actual (secure)
   Max kernel policy version:      33
   ```

   Se ritieni che SELinux sia attualmente disabilitato, procedi come segue:

   1. Apri il SELinux file inserendo il seguente comando:

      ```
      sudo vi /etc/selinux/config
      ```

   1. Imposta il parametro `SELINUX` su `permissive` o `enforcing`. Esempio:

      ```
      SELINUX=enforcing
      ```

   1. Salva il file e riavvia il sistema per applicare le modifiche.

      ```
      sudo reboot
      ```

1. Assicuratevi che l' CloudWatch agente sia in esecuzione come `systemd` servizio. Questo è necessario per utilizzarlo all'interno di un SELinux dominio limitato.

   ```
   sudo systemctl status amazon-cloudwatch-agent
   ```

   Se l'agente è configurato correttamente, l'output dovrebbe indicare che è `active (running)` e `enabled` all'avvio.

## Configura SELinux per l'agente
<a name="CloudWatch-Agent-SELinux-configure"></a>

Dopo aver completato i prerequisiti, è possibile eseguire la configurazione SELinux.

**Per configurare SELinux per l'agente CloudWatch**

1. Clona la SELinux politica per l' CloudWatch agente inserendo il seguente comando:

   ```
   git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git
   ```

1. Passa al repository clonato e quindi aggiorna le autorizzazioni dello script immettendo i seguenti comandi:

   ```
   cd amazon-cloudwatch-agent-selinux  
   chmod +x amazon_cloudwatch_agent.sh
   ```

1. Utilizzare `sudo` per eseguire lo script di installazione della SELinux politica immettendo il seguente comando. Durante l'esecuzione, lo script richiede di inserire `y` o `n` per consentire il riavvio automatico. Questo riavvio assicura che l'agente passi al SELinux dominio corretto.

   ```
   sudo ./amazon_cloudwatch_agent.sh
   ```

1. Se l' CloudWatch agente non è stato ancora riavviato, riavvialo per assicurarti che passi al dominio corretto: SELinux 

   ```
   sudo systemctl restart amazon-cloudwatch-agent
   ```

1. Verifica che CloudWatch l'agente sia in esecuzione nel dominio limitato immettendo il seguente comando:

   ```
   ps -efZ | grep amazon-cloudwatch-agent
   ```

   Se l'agente è confinato correttamente, l'output dovrebbe indicare un dominio SELinux -confined anziché. `unconfined_service_t`

   Di seguito è riportato un esempio di output quando l'agente è confinato correttamente.

   ```
   system_u:system_r:confined_t:s0 root 1234 1 0 12:00 ? 00:00:10 /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent
   ```

Dopo la configurazione, SELinux è possibile procedere alla configurazione dell'agente per raccogliere metriche, log e tracce. Per ulteriori informazioni, consulta [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md).

# Create il file di configurazione dell' CloudWatch agente
<a name="create-cloudwatch-agent-configuration-file"></a>

Prima di eseguire l' CloudWatch agente su qualsiasi server, è necessario creare uno o più file di configurazione CloudWatch dell'agente. 

Il file di configurazione dell'agente è un file JSON che specifica i parametri, i log e le tracce che l'agente deve raccogliere, inclusi i parametri personalizzati. Puoi crearlo utilizzando la procedura guidata oppure partendo da zero. Puoi anche utilizzare la procedura guidata per creare inizialmente il file di configurazione e quindi modificarlo manualmente. Se decidi di creare o modificare manualmente il file, la procedura risulterà più complessa. Tuttavia, avrai un maggiore controllo sui parametri raccolti e potrai specificare i parametri non disponibili nella procedura guidata.

Ogni volta che modifichi il file di configurazione dell'agente, è necessario riavviare l'agente affinché le modifiche diventino effettive. Per riavviare l'agente, segui le istruzioni descritte in [(Facoltativo) Modificate la configurazione comune e il profilo denominato per CloudWatch l'agente](installing-cloudwatch-agent-ssm.md#CloudWatch-Agent-profile-instance-fleet).

Dopo avere creato un file di configurazione, puoi salvarlo manualmente come file JSON e utilizzarlo al momento dell'installazione dell'agente nel server. In alternativa, puoi memorizzarlo in Systems Manager Parameter Store se hai intenzione di utilizzare Systems Manager al momento dell'installazione dell'agente nei server.

L' CloudWatch agente supporta l'utilizzo di più file di configurazione. Per ulteriori informazioni, consulta [Creazione di più file di configurazione degli CloudWatch agenti](#CloudWatch-Agent-multiple-config-files).

Le metriche, i log e le tracce raccolti dall' CloudWatch agente comportano costi. Per ulteriori informazioni sui prezzi, consulta la pagina [ CloudWatchdei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing).

**Topics**
+ [Crea il file di configurazione CloudWatch dell'agente con la procedura guidata](create-cloudwatch-agent-configuration-file-wizard.md)
+ [Creazione di più file di configurazione degli CloudWatch agenti](#CloudWatch-Agent-multiple-config-files)
+ [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md)

# Crea il file di configurazione CloudWatch dell'agente con la procedura guidata
<a name="create-cloudwatch-agent-configuration-file-wizard"></a>

 La procedura guidata per i file di configurazione dell'agente`amazon-cloudwatch-agent-config-wizard`, pone una serie di domande per aiutarti a configurare l' CloudWatch agente in base alle tue esigenze. Questa sezione descrive le credenziali richieste per il file di configurazione. Descrive come eseguire la procedura guidata di configurazione CloudWatch dell'agente. Descrive inoltre le metriche predefinite nella procedura guidata. 

## Credenziali obbligatorie
<a name="create-cloudwatch-agent-wizard-credentials"></a>

La procedura guidata può rilevare automaticamente le credenziali e la AWS regione da utilizzare se le AWS credenziali e i file di configurazione sono disponibili prima di avviare la procedura guidata. Per ulteriori informazioni su questi file, consulta la pagina relativa ai [file di configurazione e delle credenziali](https://docs.aws.amazon.com/cli/latest/userguide/cli-config-files.html) nella *Guida per l'utente AWS Systems Manager *.

Nel file delle AWS credenziali, la procedura guidata verifica le credenziali predefinite e cerca anche una sezione come la seguente: `AmazonCloudWatchAgent`

```
[AmazonCloudWatchAgent]
aws_access_key_id = my_access_key
aws_secret_access_key = my_secret_key
```

La procedura guidata visualizza le credenziali predefinite, quelle di `AmazonCloudWatchAgent` e un'opzione `Others`. Puoi scegliere il tipo di credenziali da utilizzare. Se scegli `Others`, puoi immettere le credenziali.

Per *my\$1access\$1key* e*my\$1secret\$1key*, usa le chiavi dell'utente IAM che dispone delle autorizzazioni per scrivere su Systems Manager Parameter Store. 

Nel file AWS di configurazione, puoi specificare la regione a cui l'agente invia le metriche se è diversa dalla `[default]` sezione. L'impostazione predefinita prevede la pubblicazione dei parametri nella regione in cui si trova l'istanza Amazon EC2. Se intendi pubblicare i parametri in una regione differente, specifica qui la regione. Nell'esempio seguente, i parametri vengono pubblicati nella regione `us-west-1`.

```
[AmazonCloudWatchAgent]
region = us-west-1
```

## Esegui la procedura guidata di configurazione CloudWatch dell'agente
<a name="cloudwatch-agent-running-wizard"></a>

**Per creare il file di configurazione CloudWatch dell'agente**

1. Avvia la procedura guidata di configurazione dell' CloudWatch agente inserendo quanto segue:

   ```
   sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
   ```

   Su un server che esegue Windows Server, emetti i seguenti comandi per avviare la procedura guidata:

   ```
   cd "C:\Program Files\Amazon\AmazonCloudWatchAgent"
   ```

   ```
   .\amazon-cloudwatch-agent-config-wizard.exe
   ```

1. Rispondi alle domande per personalizzare il file di configurazione per il tuo server.

1. Se stai archiviando il file di configurazione in locale, il file di configurazione `config.json` viene archiviato in `/opt/aws/amazon-cloudwatch-agent/bin/` su server Linux e viene archiviato in `C:\Program Files\Amazon\AmazonCloudWatchAgent` su Windows Server. Sarà possibile copiare questo file negli altri server in cui si desidera installare l'agente.

   Se si intende utilizzare Systems Manager per installare e configurare l'agente, assicurarti di rispondere **Yes (Sì)** quando viene richiesto se archiviare il file in Systems Manager Parameter Store. Puoi anche scegliere di archiviare il file in Parameter Store anche se non stai utilizzando l'agente SSM per installare l' CloudWatch agente. Per poter archiviare il file in Parameter Store, devi utilizzare un ruolo IAM con autorizzazioni sufficienti. 

## CloudWatch set di metriche predefiniti dell'agente
<a name="cloudwatch-agent-preset-metrics"></a>

La procedura guidata è configurata con set predefiniti di parametri, con diversi livelli di dettaglio. Questi set di parametri sono illustrati nelle tabelle seguenti. Per ulteriori informazioni su questi parametri, consulta [Metriche raccolte dall'agente CloudWatch](metrics-collected-by-CloudWatch-agent.md). 

**Nota**  
Parameter Store supporta i parametri nei livelli Standard e Advanced. Questi livelli di parametri non sono correlati ai livelli Basic, Standard e Advanced dei dettagli dei parametri descritti in queste tabelle.

**Istanze Amazon EC2 che eseguono Linux**


| Livello di dettaglio | Parametri inclusi | 
| --- | --- | 
|  **Di base** |  **Mem:** mem\$1used\$1percent **Disk:** disk\$1used\$1percent I parametri `disk`, ad esempio `disk_used_percent`, hanno una dimensione per `Partition`, il che significa che il numero di parametri personalizzati generati dipende dal numero di partizioni associate all'istanza. Il numero di partizioni disponibili dipende dall'AMI in uso e dal numero di volumi Amazon EBS che colleghi al server.  | 
|  **Standard** |  **CPU:** `cpu_usage_idle`, `cpu_usage_iowait`, `cpu_usage_user`, `cpu_usage_system` **Disk:** `disk_used_percent`, `disk_inodes_free` **Diskio:** `diskio_io_time` **Mem:** `mem_used_percent` **Swap:** `swap_used_percent`  | 
|  **Avanzato** |  **CPU:** `cpu_usage_idle`, `cpu_usage_iowait`, `cpu_usage_user`, `cpu_usage_system` **Disk:** `disk_used_percent`, `disk_inodes_free` **Diskio:** `diskio_io_time`, `diskio_write_bytes`, `diskio_read_bytes`, `diskio_writes`, `diskio_reads` **Mem:** `mem_used_percent` **Netstat:** `netstat_tcp_established`, `netstat_tcp_time_wait` **Swap:** `swap_used_percent`  | 

**Server locali che eseguono Linux**


| Livello di dettaglio | Parametri inclusi | 
| --- | --- | 
|  **Di base** |  **Disk:** `disk_used_percent` **Diskio:** `diskio_write_bytes`, `diskio_read_bytes`, `diskio_writes`, `diskio_reads` **Mem:** `mem_used_percent` **Net:** `net_bytes_sent`, `net_bytes_recv`, `net_packets_sent`, `net_packets_recv` **Swap:** `swap_used_percent`  | 
|  **Standard** |  **CPU:** `cpu_usage_idle`, `cpu_usage_iowait` **Disk:** `disk_used_percent`, `disk_inodes_free` **Diskio:** `diskio_io_time`, `diskio_write_bytes`, `diskio_read_bytes`, `diskio_writes`, `diskio_reads` **Mem:** `mem_used_percent` **Net:** `net_bytes_sent`, `net_bytes_recv`, `net_packets_sent`, `net_packets_recv` **Swap:** `swap_used_percent`  | 
|  **Avanzato** |  **CPU:** `cpu_usage_guest`, `cpu_usage_idle`, `cpu_usage_iowait`, `cpu_usage_steal`, `cpu_usage_user`, `cpu_usage_system` **Disk:** `disk_used_percent`, `disk_inodes_free` **Diskio:** `diskio_io_time`, `diskio_write_bytes`, `diskio_read_bytes`, `diskio_writes`, `diskio_reads`  **Mem:** `mem_used_percent`  **Net:** `net_bytes_sent`, `net_bytes_recv`, `net_packets_sent`, `net_packets_recv` **Netstat:** `netstat_tcp_established`, `netstat_tcp_time_wait` **Swap:** `swap_used_percent`  | 

**Istanze Amazon EC2 che eseguono Windows Server**

**Nota**  
I nomi dei parametri riportati in questa tabella mostrano come il parametro viene visualizzato nella console. Il nome effettivo del parametro potrebbe non includere la prima parola. Ad esempio, il nome effettivo del parametro per `LogicalDisk % Free Space` è solo `% Free Space`.


| Livello di dettaglio | Parametri inclusi | 
| --- | --- | 
|  **Di base** |  **Memory:** `Memory % Committed Bytes In Use` **LogicalDisk:** `LogicalDisk % Free Space`  | 
|  **Standard** |  **Memory:** `Memory % Committed Bytes In Use` **Paging:** `Paging File % Usage` **Processor:** `Processor % Idle Time`, `Processor % Interrupt Time`, `Processor % User Time` **PhysicalDisk:** `PhysicalDisk % Disk Time` **LogicalDisk:** `LogicalDisk % Free Space`  | 
|  **Avanzato** |  **Memory:** `Memory % Committed Bytes In Use` **Paging:** `Paging File % Usage` **Processor:** `Processor % Idle Time`, `Processor % Interrupt Time`, `Processor % User Time` **LogicalDisk:** `LogicalDisk % Free Space` **PhysicalDisk:** `PhysicalDisk % Disk Time`, `PhysicalDisk Disk Write Bytes/sec`, `PhysicalDisk Disk Read Bytes/sec`, `PhysicalDisk Disk Writes/sec`, `PhysicalDisk Disk Reads/sec` **TCP:** `TCPv4 Connections Established`, `TCPv6 Connections Established`  | 

**Server locale che esegue Windows Server**

**Nota**  
I nomi dei parametri riportati in questa tabella mostrano come il parametro viene visualizzato nella console. Il nome effettivo del parametro potrebbe non includere la prima parola. Ad esempio, il nome effettivo del parametro per `LogicalDisk % Free Space` è solo `% Free Space`.


| Livello di dettaglio | Parametri inclusi | 
| --- | --- | 
|  **Di base** |  **Paging: **`Paging File % Usage` **Processor:** `Processor % Processor Time` **LogicalDisk:**`LogicalDisk % Free Space`  **PhysicalDisk:** `PhysicalDisk Disk Write Bytes/sec`, `PhysicalDisk Disk Read Bytes/sec`, `PhysicalDisk Disk Writes/sec`, `PhysicalDisk Disk Reads/sec` **Memory:** `Memory % Committed Bytes In Use` **Network Interface:** `Network Interface Bytes Sent/sec`, `Network Interface Bytes Received/sec`, `Network Interface Packets Sent/sec`, `Network Interface Packets Received/sec`  | 
|  **Standard** |  **Paging:** `Paging File % Usage` **Processor:** `Processor % Processor Time`, `Processor % Idle Time`, `Processor % Interrupt Time` **LogicalDisk:** `LogicalDisk % Free Space` **PhysicalDisk:** `PhysicalDisk % Disk Time`, `PhysicalDisk Disk Write Bytes/sec`, `PhysicalDisk Disk Read Bytes/sec`, `PhysicalDisk Disk Writes/sec`, `PhysicalDisk Disk Reads/sec` **Memory:** `Memory % Committed Bytes In Use` **Network Interface:** `Network Interface Bytes Sent/sec`, `Network Interface Bytes Received/sec`, `Network Interface Packets Sent/sec`, `Network Interface Packets Received/sec`  | 
|  **Avanzato** |  **Paging:**`Paging File % Usage` **Processor:** `Processor % Processor Time`, `Processor % Idle Time`, `Processor % Interrupt Time`, `Processor % User Time` **LogicalDisk:** `LogicalDisk % Free Space` **PhysicalDisk:** `PhysicalDisk % Disk Time`, `PhysicalDisk Disk Write Bytes/sec`, `PhysicalDisk Disk Read Bytes/sec`, `PhysicalDisk Disk Writes/sec`, `PhysicalDisk Disk Reads/sec` **Memory:** `Memory % Committed Bytes In Use` **Network Interface:** `Network Interface Bytes Sent/sec`, `Network Interface Bytes Received/sec`, `Network Interface Packets Sent/sec`, `Network Interface Packets Received/sec` **TCP:** `TCPv4 Connections Established`, `TCPv6 Connections Established`  | 

# Esempi di file di configurazione
<a name="create-cloudwatch-agent-configuration-file-examples"></a>

**Configurazione delle metriche di sistema di base** 

```
{
  "agent": {
    "metrics_collection_interval": 60,
    "region": "us-east-1"
  },
  "metrics": {
    "namespace": "MySystem",
    "metrics_collected": {
      "cpu": {
        "resources": ["*"],
        "measurement": ["usage_active", "usage_system", "usage_user"]
      },
      "mem": {
        "measurement": ["used_percent"]
      },
      "disk": {
        "resources": ["/"],
        "measurement": ["used_percent"]
      }
    },
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}"
    }
  }
}
```

**Configurazione del monitoraggio del server web** 

```
{
  "agent": {
    "metrics_collection_interval": 60,
    "region": "us-east-1"
  },
  "metrics": {
    "namespace": "WebServer",
    "metrics_collected": {
      "cpu": {
        "resources": ["*"],
        "measurement": ["usage_active"]
      },
      "mem": {
        "measurement": ["used_percent"]
      },
      "net": {
        "resources": ["eth0"],
        "measurement": ["bytes_sent", "bytes_recv"]
      }
    }
  },
  "logs": {
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/var/log/apache2/access.log",
            "log_group_name": "apache-access-logs",
            "log_stream_name": "{instance_id}-access"
          },
          {
            "file_path": "/var/log/apache2/error.log",
            "log_group_name": "apache-error-logs",
            "log_stream_name": "{instance_id}-error"
          }
        ]
      }
    }
  }
}
```

**Configurazione del server di database **

```
{
  "agent": {
    "metrics_collection_interval": 30,
    "region": "us-east-1"
  },
  "metrics": {
    "namespace": "DatabaseServer",
    "metrics_collected": {
      "cpu": {
        "resources": ["*"],
        "measurement": ["usage_active", "usage_iowait"]
      },
      "mem": {
        "measurement": ["used_percent", "available_percent"]
      },
      "disk": {
        "resources": ["/", "/data"],
        "measurement": ["used_percent", "inodes_free"]
      },
      "diskio": {
        "resources": ["*"],
        "measurement": ["read_bytes", "write_bytes", "io_time"]
      }
    },
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}",
      "InstanceType": "${aws:InstanceType}",
      "AutoScalingGroupName": "${aws:AutoScalingGroupName}"
    }
  }
}
```

## Creazione di più file di configurazione degli CloudWatch agenti
<a name="CloudWatch-Agent-multiple-config-files"></a>

Sia sui server Linux che sui server Windows, è possibile configurare l' CloudWatch agente per utilizzare più file di configurazione. Ad esempio, puoi utilizzare un file di configurazione comune che raccoglie un set di parametri e i log che desideri raccogliere da tutti i server dell'infrastruttura. Potrai quindi possibile utilizzare altri file di configurazione che raccolgono i parametri da determinate applicazioni o in determinate situazioni.

Per effettuare tale configurazione, dovrai innanzitutto creare i file di configurazione da utilizzare. I file di configurazione che verranno utilizzati insieme nello stesso server devono avere nomi diversi. È possibile archiviare i file di configurazione nei server o in Parameter Store.

Avviate l' CloudWatch agente utilizzando l'`fetch-config`opzione e specificate il primo file di configurazione. Per aggiungere il secondo file di configurazione all'agente in esecuzione, utilizzare lo stesso comando, ma con l'opzione `append-config`. Verranno raccolti tutti i parametri, i log e le tracce elencati in entrambi i file di configurazione. I seguenti comandi di esempio illustrano questo scenario utilizzando gli archivi di configurazione come file. La prima riga avvia l'agente utilizzando il file di configurazione `infrastructure.json`, mentre la seconda aggiunge il file di configurazione `app.json`.

I seguenti comandi di esempio sono per 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
```

I seguenti comandi di esempio sono per 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"
```

I seguenti file di configurazione di esempio mostrano l'utilizzo di questa funzione. Il primo file di configurazione viene utilizzato per tutti i server dell'infrastruttura, mentre il secondo raccoglie solo i log da una determinata applicazione e viene aggiunto ai server che eseguono tale applicazione.

**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"
                    }
                ]
            }
        }
    }
}
```

Tutti i file di configurazione aggiunti alla configurazione devono avere nomi diversi fra loro e rispetto al file di configurazione iniziale. Se usi `append-config` con un file di configurazione con lo stesso nome di quello già in uso dall'agente, il comando di aggiunta sovrascriverà le informazioni del primo file di configurazione, anziché aggiungerle. Ciò vale anche se i due file di configurazione con lo stesso nome si trovano in percorsi diversi.

L'esempio precedente mostra l'uso di due file di configurazione, ma non vi è alcun limite al numero di file di configurazione che puoi aggiungere all'agente di configurazione. Puoi anche combinare l'uso di file di configurazione che si trovano nei server e le configurazioni situate in Parameter Store.

# Crea o modifica manualmente il file di configurazione CloudWatch dell'agente
<a name="CloudWatch-Agent-Configuration-File-Details"></a>

 Il file di configurazione dell' CloudWatch agente è un file JSON con quattro sezioni:`agent`, `metrics``logs`, e`traces`. 
+ La sezione `agent` include campi per la configurazione generale dell'agente. 
+ La `metrics` sezione specifica le metriche personalizzate per la raccolta e la pubblicazione su. CloudWatch Se intendi utilizzare l'agente solo per raccogliere log, puoi omettere dal file la sezione `metrics`.
+ La `logs` sezione specifica quali file di registro vengono pubblicati in Logs. CloudWatch Questo può includere eventi del log eventi di Windows, se Windows Server è in esecuzione nel server.
+ La `traces` sezione specifica le fonti per le tracce che vengono raccolte e inviate. AWS X-Ray

 Questa sezione spiega la struttura e i campi del file di configurazione dell' CloudWatch agente. Puoi visualizzare la definizione di schema di questo file di configurazione. La definizione di schema è ubicata in `installation-directory/doc/amazon-cloudwatch-agent-schema.json` sui server Linux e in `installation-directory/amazon-cloudwatch-agent-schema.json` sui server che eseguono Windows Server. 

Se crei o modifichi manualmente il file di configurazione dell'agente di , puoi assegnargli qualsiasi nome. Per semplicità nella risoluzione dei problemi, consigliamo di denominarlo `/opt/aws/amazon-cloudwatch-agent/etc/cloudwatch-agent.json` su un server Linux e `$Env:ProgramData\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent.json` sui server che eseguono Windows Server. Dopo avere creato il file, potrai copiarlo negli altri server in cui desideri installare l'agente.

All'avvio, l'agente crea una copia di ogni file di configurazione nella directory `/opt/aws/amazon-cloudwatch/etc/amazon-cloudwatch-agent.d`, con il nome del file preceduto da `file_` (per le origini di file locali) o `ssm_` (per le sorgenti di archiviazione dei parametri di Systems Manager) per indicare l'origine della configurazione.

**Nota**  
Le metriche, i log e le tracce raccolti dall' CloudWatch agente comportano costi. Per ulteriori informazioni sui prezzi, consulta la pagina [ CloudWatchdei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing).

## CloudWatch file di configurazione dell'agente: sezione Agente
<a name="CloudWatch-Agent-Configuration-File-Agentsection"></a>

La sezione `agent` può includere i seguenti campi. La procedura guidata non crea una sezione `agent`. Al contrario, la procedura guidata la omette e utilizza i valori predefiniti per tutti i campi della sezione.
+ `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta di tutti i parametri specificati in questo file di configurazione. Puoi ignorare questo valore per determinati tipi di parametri.

  Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

  Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 

  Il valore predefinito è 60. 
+ `region`: specifica la regione da utilizzare per l' CloudWatch endpoint quando viene monitorata un'istanza Amazon EC2. I parametri raccolti vengono inviati a questa regione, ad esempio `us-west-1`. Se ometti questo campo, l'agente invia i parametri alla regione in cui si trova l'istanza Amazon EC2.

  Se monitori un server locale, questo campo non viene utilizzato e l'agente legge la regione dal profilo `AmazonCloudWatchAgent` del file di configurazione AWS .
+ `credentials`— Speciifica un ruolo IAM da utilizzare per l'invio di metriche, log e tracce a un altro account. AWS Se specificato, questo campo contiene un parametro, `role_arn`.
  + `role_arn`: specifica l'Amazon Resource Name (ARN) di un ruolo IAM da utilizzare per l'autenticazione quando si inviano metriche, log e tracce a un altro account. AWS Per ulteriori informazioni, consulta [Invio di parametri, log e tracce a un altro account](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-send-to-different-AWS-account).
+ `debug` Facoltativo. Speciifica l'esecuzione dell' CloudWatch agente con messaggi di log di debug. Il valore predefinito è `false`. 
+ `aws_sdk_log_level` Facoltativo. Supportato solo nelle versioni 1.247350.0 e successive dell'agente. CloudWatch 

  È possibile specificare questo campo per consentire all'agente di eseguire la registrazione per gli endpoint SDK. AWS Il valore di questo campo può includere una o più opzioni tra le seguenti. Separare più opzioni con il carattere `|`.
  + `LogDebug`
  + `LogDebugWithSigning`
  + `LogDebugWithHTTPBody`
  + `LogDebugRequestRetries`
  + `LogDebugWithEventStreamBody`

  Per ulteriori informazioni su queste opzioni, consulta [LogLevelType](https://docs.aws.amazon.com/sdk-for-go/api/aws/#LogLevelType).
+ `logfile`— Speciifica la posizione in cui l' CloudWatch agente scrive i messaggi di registro. Se specifichi una stringa vuota, il log passa a stderr. Se non specifichi questa opzione, le ubicazioni predefinite sono le seguenti:
  + Linux: `/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log`
  + Windows Server: `c:\\ProgramData\\Amazon\\CloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log` 

  L' CloudWatch agente ruota automaticamente il file di registro che crea. Un file di log viene ruotato in uscita fino a quando raggiunge la dimensione di 100 MB. L'agente mantiene i file di log ruotati fino a sette giorni e mantiene cinque file di log di backup che sono stati ruotati in uscita. Al nome dei file di backup dei log viene aggiunto un timestamp, che mostra la data e l'ora in cui il file è stato rimosso: ad esempio, `amazon-cloudwatch-agent-2018-06-08T21-01-50.247.log.gz`.
+ `omit_hostname` Facoltativo. Per impostazione predefinita, il nome host viene pubblicato come una dimensione di parametri che sono raccolti dall'agente, a meno che non venga usato il campo `append_dimensions` nella sezione `metrics`. Imposta da `omit_hostname ` a `true` per impedire che il nome host venga pubblicato come una dimensione anche se non si utilizza `append_dimensions`. Il valore predefinito è `false`. 
+ `run_as_user` Facoltativo. Specifica un utente da usare per eseguire l'agente CloudWatch . Se non si specifica questo parametro, viene utilizzato l'utente root. Questa opzione è valida solo su server Linux.

  Se si specifica questa opzione, l'utente deve esistere prima di avviare l' CloudWatch agente. Per ulteriori informazioni, consulta [Esecuzione dell' CloudWatch agente come utente diverso](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-run-as-user).
+ `user_agent` Facoltativo. Speciifica la `user-agent` stringa utilizzata dall' CloudWatch agente quando effettua chiamate API al CloudWatch backend. Il valore predefinito è una stringa costituita dalla versione dell'agente, dalla versione del linguaggio di programmazione Go utilizzata per compilare l'agente, dal sistema operativo di default runtime e dall'architettura, dal tempo di compilazione e dai plug-in abilitati.
+ `usage_data` : Opzionale. Per impostazione predefinita, l' CloudWatch agente invia dati sullo stato e sulle prestazioni su se stesso a CloudWatch ogni volta che pubblica metriche o esegue i log. CloudWatch Questi dati non comportano alcun costo. È possibile impedire all'agente di inviare questi dati specificando `false` per `usage_data`. Se si omette questo parametro, viene utilizzata l'impostazione predefinita di `true` e l'agente invia i dati dell'integrità e delle prestazioni.

  Se si imposta questo valore su `false`, affinché la modifica abbia effetto sarà necessario arrestare e riavviare l'agente.
+ `service.name` : Opzionale. Specifica il nome del servizio da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
+ `deployment.environment` : Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
+ `use_dualstack_endpoint` : Opzionale. In tal caso`true`, l' CloudWatch agente utilizzerà [endpoint dual stack](https://docs.aws.amazon.com/general/latest/gr/rande.html#dual-stack-endpoints) per tutte le chiamate API.

Di seguito è riportato un esempio di una sezione `agent`.

```
"agent": {
   "metrics_collection_interval": 60,
   "region": "us-west-1",
   "logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log",
   "debug": false,
   "run_as_user": "cwagent"
  }
```

## CloudWatch file di configurazione dell'agente: sezione Metrics
<a name="CloudWatch-Agent-Configuration-File-Metricssection"></a>

### Campi comuni a Linux e Windows
<a name="CloudWatch-Agent-Common"></a>

Nei server in cui è in esecuzione Linux o Windows Server, la sezione `metrics` include i seguenti campi:
+ `namespace` Facoltativo. Lo spazio dei nomi da utilizzare per i parametri raccolti dall'agente. Il valore predefinito è `CWAgent`. La lunghezza massima è 255 caratteri. Di seguito è riportato un esempio:

  ```
  {
    "metrics": {
      "namespace": "Development/Product1Metrics",
     ......
     },
  }
  ```
+ `append_dimensions` Facoltativo. Aggiunge le dimensioni dei parametri Amazon EC2 a tutti i parametri raccolti dall'agente. In questo modo l'agente non pubblica il nome host come dimensione.

  Le uniche coppie chiave-valore supportate per `append_dimensions` sono mostrate nell'elenco seguente. Qualsiasi altra coppia chiave-valore viene ignorata. L'agente supporta queste coppie chiave-valore esattamente come sono mostrate nell'elenco seguente. Non è possibile modificare i valori della chiave per pubblicare nomi di dimensione diversi.
  + `"ImageId":"${aws:ImageId}"` imposta l'ID AMI dell'istanza come valore della dimensione `ImageId`.
  + `"InstanceId":"${aws:InstanceId}"` imposta l'ID istanza dell'istanza come valore della dimensione `InstanceId`.
  + `"InstanceType":"${aws:InstanceType}"` imposta il tipo di istanza dell'istanza come valore della dimensione `InstanceType`.
  + `"AutoScalingGroupName":"${aws:AutoScalingGroupName}"` imposta il nome del gruppo Auto Scaling dell'istanza come valore della dimensione `AutoScalingGroupName`.

  Se si desidera aggiungere dimensioni ai parametri con coppie chiave-valore arbitrarie, utilizza il parametro `append_dimensions` nel campo per quel particolare tipo di parametro.

  Se specifichi un valore 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)](https://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region) nella *Riferimenti generali di Amazon Web Services*.
+ `aggregation_dimensions` Facoltativo. Specifica le dimensioni su cui devono essere aggregati i parametri raccolti. Ad esempio, se esegui il rollup dei parametri nella dimensione `AutoScalingGroupName`, vengono aggregati i parametri da tutte le istanze in ogni gruppo Auto Scaling, che possono essere visualizzati complessivamente.

  Puoi eseguire il rollup dei parametri lungo una o più dimensioni. Ad esempio, specificando `[["InstanceId"], ["InstanceType"], ["InstanceId","InstanceType"]]` aggrega i parametri per ID istanza singolarmente, tipo di istanza singolarmente e per la combinazione delle due dimensioni.

  Puoi inoltre specificare `[]` per eseguire il rollup di tutti i parametri in un'unica raccolta, ignorando tutte le dimensioni.
+ `endpoint_override`: specifica un endpoint FIPS o un collegamento privato da utilizzare come endpoint in cui l'agente invia i parametri. La specifica relativa e l'impostazione di un collegamento privato consente di inviare i parametri a un endpoint Amazon VPC. Per ulteriori informazioni, consulta [Cos'è Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html). 

  Il valore di `endpoint_override` deve essere una stringa che è un URL.

  Ad esempio, la parte seguente della sezione dei parametri del file di configurazione imposta l'agente per utilizzare un endpoint VPC durante l'invio dei parametri. 

  ```
  {
    "metrics": {
      "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.monitoring.us-east-1.vpce.amazonaws.com",
     ......
     },
  }
  ```
+ `metrics_collected`: obbligatorio. Specifica i parametri da raccogliere, inclusi quelli personalizzati raccolti tramite `StatsD` o `collectd`. Questa sezione include varie sottosezioni. 

  Il contenuto della sezione `metrics_collected` varia se il file di configurazione è per un server che esegue Linux o Windows Server.
+ `metrics_destinations` : Opzionale. Specifica una o più destinazioni per tutte le metriche definite in `metrics_collected`. Se viene specificato qui, sostituisce la destinazione predefinita di `cloudwatch`. 
  + `cloudwatch`— Amazon CloudWatch.
  + `amp`: Servizio gestito da Amazon per Prometheus
    + `workspace_id`: l'ID corrispondente al workspace di Servizio gestito da Amazon per Prometheus.

  ```
  {
    "metrics": {
      "metrics_destinations": {
        "cloudwatch": {},
        "amp": {
          "workspace_id": "ws-abcd1234-ef56-7890-ab12-example"
        }
      }
    }
  }
  ```
+ `force_flush_interval`: specifica in secondi la quantità massima di tempo in cui i parametri rimangono nel buffer di memoria prima di essere inviati al server. Indipendentemente dall'impostazione, se la dimensione dei parametri nel buffer raggiunge 1 MB o 1.000 parametri differenti, i parametri vengono immediatamente inviati al server.

  Il valore predefinito è 60.
+ `credentials`: specifica un ruolo IAM da utilizzare durante l'invio di parametri a un account diverso. Se specificato, questo campo contiene un parametro, `role_arn`.
  + `role_arn`: specifica l'ARN di un ruolo IAM da utilizzare per l'autenticazione durante l'invio di parametri a un account diverso. Per ulteriori informazioni, consulta la pagina [Invio di parametri, log e tracce a un altro account](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-send-to-different-AWS-account). Se specificato qui, questo valore sostituisce il `role_arn` specificato nella sezione `agent` del file di configurazione, se presente.
  + `service.name` : Opzionale. Specifica il nome del servizio da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
  + `deployment.environment` : Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).

### Sezione Linux
<a name="CloudWatch-Agent-Linux-section"></a>

Nei server con Linux in esecuzione, la sezione `metrics_collected` del file di configurazione può anche includere i seguenti campi.

Molti di questi campi possono includere una sezione `measurement` che elenca i parametri che si desidera raccogliere per quella risorsa. Queste sezioni `measurement` possono specificare il nome di parametro completo, ad esempio `swap_used`, oppure solo la parte del nome parametro che verrà aggiunta al tipo della risorsa. Ad esempio, specificando `reads` nella sezione `measurement` della sezione `diskio` si causa la raccolta del parametro `diskio_reads`.
+ `collectd` Facoltativo. Specifica che desideri recuperare i parametri personalizzati utilizzando il protocollo `collectd`. Utilizzi `collectd` un software per inviare le metriche all' CloudWatch agente. Per ulteriori informazioni sulle opzioni di configurazione disponibili per collectd, consulta [Recupero dei parametri personalizzati con collectd](CloudWatch-Agent-custom-metrics-collectd.md). 
+ `cpu` Facoltativo. Specifica che è necessario raccogliere i parametri della CPU. Questa sezione è valida solo per le istanze Linux. È necessario includere almeno uno dei campi `totalcpu` e `resources` per tutti i parametri CPU da raccogliere. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `resources` : Opzionale. Specifica questo campo con il valore `*` per far sì che i parametri per CPU vengano raccolti. L’unico valore consentito è `*`. 
  + `totalcpu` Facoltativo. Specifica se segnalare i parametri di CPU aggregati in tutti i core CPU. Il valore predefinito è true.
  + `measurement`: specifica la matrice di parametri cpu da raccogliere. I valori possibili sono `time_active`, `time_guest`, `time_guest_nice`, `time_idle`, `time_iowait`, `time_irq`, `time_nice`, `time_softirq`, `time_steal`, `time_system`, `time_user`, `usage_active`, `usage_guest`, `usage_guest_nice`, `usage_idle`, `usage_iowait`, `usage_irq`, `usage_nice`, `usage_softirq`, `usage_steal`, `usage_system` e `usage_user`. Il campo è obbligatorio se includi `cpu`.

    Per impostazione predefinita, l'unità di misura dei parametri `cpu_usage_*` è `Percent`, mentre i parametri `cpu_time_*` non hanno un'unità di misura.

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di CPU, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di CPU. Se specifichi questo campo, verrà utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions` globale, usato per tutti i tipi di parametri raccolti dall'agente.
+ `disk` Facoltativo. Specifica che i parametri del disco devono essere raccolti. Raccoglie le metriche solo per i volumi montati. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `resources` Facoltativo. Specifica una matrice di punti di montaggio su disco. Questo campo si limita CloudWatch a raccogliere metriche solo dai punti di montaggio elencati. Puoi specificare `*` come valore per raccogliere parametri da tutti i punti di montaggio. Il valore predefinito raccoglie i parametri da tutti i punti di montaggio. 
  + `measurement`: specifica la matrice di parametri disk da raccogliere. I valori possibili sono `free`, `total`, `used`, `used_percent`, `inodes_free`, `inodes_used` e `inodes_total`. Il campo è obbligatorio se includi `disk`.
**Nota**  
I parametri `disk` hanno una dimensione per `Partition`, il che significa che il numero di parametri personalizzati generati dipende dal numero di partizioni associate all'istanza. Il numero di partizioni disponibili dipende dall'AMI in uso e dal numero di volumi Amazon EBS che colleghi al server.

    Per visualizzare le unità di misura predefinite per ciascun parametro `disk`, consulta [Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS](metrics-collected-by-CloudWatch-agent.md#linux-metrics-enabled-by-CloudWatch-agent).

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come elencato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `ignore_file_system_types`: specifica i tipi di file system da escludere durante la raccolta di parametri disk. Tra i valori validi figurano `sysfs`, `devtmpfs` e così via.
  + `drop_device`: impostando questa opzione su `true`, `Device` non viene incluso come dimensione per i parametri disk.

    Impedire che `Device` venga utilizzato come dimensione può essere utile sulle istanze che utilizzano il sistema Nitro perché su tali istanze i nomi dei dispositivi cambiano per ogni montaggio del disco quando l'istanza viene riavviata. Ciò può causare dati incoerenti nei parametri e che gli allarmi basati su tali parametri vadano in stato `INSUFFICIENT DATA`.

    Il valore predefinito è `false`.
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri del disco, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni, consulta la pagina [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Specifica le coppie chiave-valore da utilizzare come dimensioni aggiuntive solo per le metriche del disco. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.

    Una coppia chiave-valore che è possibile utilizzare è la seguente. Puoi anche specificare altre coppie chiave-valore personalizzate.
    + `"VolumeId":"${aws:VolumeId}"` aggiunge una dimensione `VolumeId` alle metriche del disco del dispositivo a blocchi. Per i volumi Amazon EBS, questo sarà l'ID del volume Amazon EBS. Per l'archivio dell'istanza EC2, questo sarà il numero di serie del dispositivo. L'utilizzo di questo richiede che il parametro `drop_device` sia impostato su `false`.
+ `diskio` : Opzionale. Speciifica che le i/o metriche del disco devono essere raccolte. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `resources` : Opzionale. Se specifichi una serie di dispositivi, CloudWatch raccoglie le metriche solo da tali dispositivi. In caso contrario, verranno raccolti parametri da tutti i dispositivi. Puoi inoltre specificare \$1 come valore per raccogliere parametri da tutti i dispositivi.
  + `measurement`: specifica l'array di parametri dei driver diskio e AWS NVMe da raccogliere per i volumi Amazon EBS e i volumi di instance store collegati alle istanze Amazon EC2. I valori possibili per diskio sono `reads`, `writes`, `read_bytes`, `write_bytes`, `read_time`, `write_time`, `io_time` e `iops_in_progress`. Per un elenco delle metriche dei driver NVMe per i volumi Amazon EBS e i volumi di archivio dell'istanza Amazon EC2, consulta [Raccogli i parametri dei NVMe driver di Amazon EBS](Container-Insights-metrics-EBS-Collect.md) e [Raccogli i parametri del driver del volume NVMe di Amazon EC2 Instance Store](Container-Insights-metrics-instance-store-Collect.md). Il campo è obbligatorio se includi `diskio`.

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella descrizione in. `Unit` [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)

    Per informazioni sulle unità predefinite e la descrizione delle metriche, consulta [Raccogli i parametri dei NVMe driver di Amazon EBS](Container-Insights-metrics-EBS-Collect.md).
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri diskio, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri diskio. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.
+ `swap` Facoltativo. Specifica che i parametri di memoria di scambio devono essere raccolti. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `measurement`: specifica la matrice di parametri swap da raccogliere. I valori possibili sono `free`, `used` e `used_percent`. Il campo è obbligatorio se includi `swap`.

    Per visualizzare le unità di misura predefinite per ciascun parametro `swap`, consulta [Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS](metrics-collected-by-CloudWatch-agent.md#linux-metrics-enabled-by-CloudWatch-agent).

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di scambio, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi. 

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di scambio. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions` globale, usato per tutti i tipi di parametri raccolti dall'agente. Viene raccolto come parametro ad alta risoluzione. 
+ `mem` Facoltativo. Specifica che i parametri di memoria devono essere raccolti. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `measurement`: specifica la matrice di parametri memory da raccogliere. I valori possibili sono `active`, `available`, `available_percent`, `buffered`, `cached`, `free`, `inactive`, `shared`, `total`, `used` e `used_percent`. Il campo è obbligatorio se includi `mem`.

    Per visualizzare le unità di misura predefinite per ciascun parametro `mem`, consulta [Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS](metrics-collected-by-CloudWatch-agent.md#linux-metrics-enabled-by-CloudWatch-agent).

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di memoria, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di memoria. Se specifichi questo campo, verrà utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.
+ `net` Facoltativo. Specifica che i parametri di rete devono essere raccolti. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `resources` : Opzionale. Se specifichi una serie di interfacce di rete, CloudWatch raccoglie le metriche solo da tali interfacce. In caso contrario, verranno raccolti parametri da tutti i dispositivi. Puoi inoltre specificare `*` come valore per raccogliere parametri da tutte le interfacce.
  + `measurement`: specifica la matrice di parametri di rete da raccogliere. I valori possibili sono `bytes_sent`, `bytes_recv`, `drop_in`, `drop_out`, `err_in`, `err_out`, `packets_sent` e `packets_recv`. Il campo è obbligatorio se includi `net`.

    Per visualizzare le unità di misura predefinite per ciascun parametro `net`, consulta [Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS](metrics-collected-by-CloudWatch-agent.md#linux-metrics-enabled-by-CloudWatch-agent).

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come elencato nella descrizione in. `Unit` [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di rete, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di rete. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.
+ `netstat` Facoltativo. Specifica che i parametri della connessione TCP e della connessione UDP devono essere raccolti. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `measurement`: specifica la matrice di parametri netstat da raccogliere. I valori possibili sono `tcp_close`, `tcp_close_wait`, `tcp_closing`, `tcp_established`, `tcp_fin_wait1`, `tcp_fin_wait2`, `tcp_last_ack`, `tcp_listen`, `tcp_none`, `tcp_syn_sent`, `tcp_syn_recv`, `tcp_time_wait` e `udp_socket`. Il campo è obbligatorio se includi `netstat`.

    Per visualizzare le unità di misura predefinite per ciascun parametro `netstat`, consulta [Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS](metrics-collected-by-CloudWatch-agent.md#linux-metrics-enabled-by-CloudWatch-agent).

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri netstat, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni sui parametri ad alta risoluzione, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics).
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di netstat. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.
+ `processes` Facoltativo. Specifica che i parametri di processo devono essere raccolti. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `measurement`: specifica la matrice di parametri processes da raccogliere. I valori possibili sono `blocked`, `dead`, `idle`, `paging`, `running`, `sleeping`, `stopped`, `total`, `total_threads`, `wait` e `zombies`. Il campo è obbligatorio se includi `processes`.

    Per tutti i parametri `processes`, l'unità di misura predefinita è `None`.

    Nelle voci di ciascun parametro individuale, potresti specificare uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di processo, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

    Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

    Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni, consulta la pagina [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
  + `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di processo. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.
+ `nvidia_gpu` Facoltativo. Specifica che i parametri della GPU NVIDIA devono essere raccolti. Questa sezione è valida solo per le istanze Linux su host configurati con un acceleratore della GPU NVIDIA e hanno NVIDIA System Management Interface (nvidia-smi) installato.

  I parametri della GPU NVIDIA raccolti hanno come prefisso la stringa `nvidia_smi_` per distinguerli da quelli raccolti per altri tipi di acceleratori. Questa sezione può includere i seguenti campi.
  + `drop_original_metrics` Facoltativo. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.
  + `measurement`: specifica la matrice dei parametri della GPU NVIDIA da raccogliere. Per un elenco dei possibili valori da utilizzare, consulta la colonna **Metric** (Parametri) della tabella in [Raccolta dei parametri della GPU NVIDIA](CloudWatch-Agent-NVIDIA-GPU.md).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, la quale sostituisce l'unità di misura predefinita di `None` per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
  + `metrics_collection_interval` : Opzionale. Specifica la frequenza di raccolta dei parametri della GPU NVIDIA, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.
+ `jmx` : Opzionale. Specifica che desideri recuperare le metriche di Java Management Extensions (JMX) dall'istanza. Per ulteriori informazioni sui parametri che è possibile utilizzare in questa sezione e sulle metriche che è possibile raccogliere, consulta [Raccolta delle metriche di Java Management Extensions (JMX)](CloudWatch-Agent-JMX-metrics.md). 
+  `otlp` : Opzionale. Specifica che desideri raccogliere le metriche dall'SDK. OpenTelemetry Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta [Raccogli metriche e tracce con OpenTelemetry](CloudWatch-Agent-OpenTelemetry-metrics.md). 
+ `procstat` Facoltativo. Specifica che si desidera recuperare i parametri dai singoli processi. Per ulteriori informazioni sulle opzioni di configurazione disponibili per procstat, consulta [Raccolta di parametri dei processi con il plug-in procstat](CloudWatch-Agent-procstat-process-metrics.md). 
+ `statsd` Facoltativo. Specifica che desideri recuperare i parametri personalizzati utilizzando il protocollo `StatsD`. L' CloudWatch agente funge da demone per il protocollo. Utilizzi qualsiasi `StatsD` client standard per inviare le metriche all'agente. CloudWatch Per ulteriori informazioni sulle opzioni di configurazione disponibili per StatsD, consulta [Recupero dei parametri personalizzati con StatsD](CloudWatch-Agent-custom-metrics-statsd.md). 
+ `ethtool` Facoltativo. Specifica che desideri recuperare i parametri di rete utilizzando il plug-in `ethtool`. Questo plug-in può importare sia i parametri raccolti dall'utilità standard ethtool, sia i parametri delle prestazioni di rete dalle istanze Amazon EC2. Per ulteriori informazioni sulle opzioni di configurazione disponibili per ethtool, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md). 

Di seguito è riportato un esempio di una sezione `metrics` per un server Linux. In questo esempio vengono raccolti tre parametri CPU, tre parametri netstat, tre parametri di processo e un parametro del disco e l'agente è impostato per ricevere ulteriori parametri da un client `collectd`.

```
"metrics": {
    "aggregation_dimensions" : [["AutoScalingGroupName"], ["InstanceId", "InstanceType"],[]],
    "metrics_collected": {
      "collectd": {},
      "cpu": {
        "resources": [
          "*"
        ],
        "measurement": [
          {"name": "cpu_usage_idle", "rename": "CPU_USAGE_IDLE", "unit": "Percent"},
          {"name": "cpu_usage_nice", "unit": "Percent"},
          "cpu_usage_guest"
        ],
        "totalcpu": false,
        "drop_original_metrics": [ "cpu_usage_guest" ],
        "metrics_collection_interval": 10,
        "append_dimensions": {
          "test": "test1",
          "date": "2017-10-01"
        }
      },
      "netstat": {
        "measurement": [
          "tcp_established",
          "tcp_syn_sent",
          "tcp_close"
        ],
        "metrics_collection_interval": 60
      },
       "disk": {
        "measurement": [
          "used_percent"
        ],
        "resources": [
          "*"
        ],
        "drop_device": true
      },  
      "processes": {
        "measurement": [
          "running",
          "sleeping",
          "dead"
        ]
      }
    },
    "append_dimensions": {
      "ImageId": "${aws:ImageId}",
      "InstanceId": "${aws:InstanceId}",
      "InstanceType": "${aws:InstanceType}",
      "AutoScalingGroupName": "${aws:AutoScalingGroupName}"
    }
  }
```

### Windows Server
<a name="CloudWatch-Agent-Windows-section"></a>

Nella sezione `metrics_collected` per Windows Server, puoi avere sottosezioni per ciascun oggetto prestazione di Windows, ad esempio `Memory`, `Processor` e `LogicalDisk`. Per informazioni sugli oggetti e sui contatori disponibili, consulta [Contatori delle prestazioni](https://learn.microsoft.com/en-us/windows/win32/perfctrs/performance-counters-portal) nella documentazione di Microsoft Windows.

All'interno della sottosezione per ciascun oggetto, è necessario specificare una matrice `measurement` dei contatori da raccogliere. La matrice `measurement` è obbligatoria per ciascun oggetto specificato nel file di configurazione. Puoi inoltre specificare un campo `resources` per denominare le istanze da cui raccogliere i parametri. Puoi inoltre specificare `*` per `resources` per raccogliere parametri separati per ogni istanza. Se ometti `resources` per i contatori che hanno istanze, i dati per tutte le istanze vengono aggregati in un unico set. Se ometti `resources` per i contatori che non hanno istanze, i contatori non vengono raccolti dall'agente. CloudWatch Per determinare se i contatori dispongono della istanza, è possibile utilizzare uno dei seguenti comandi.

Powershell:

```
Get-Counter -ListSet *
```

Riga di comando (non Powershell):

```
TypePerf.exe –q
```

All'interno di ogni sezione di oggetti, puoi inoltre specificare i seguenti campi facoltativi:
+ `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di questo oggetto, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

  Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

  Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni, consulta la pagina [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 
+ `append_dimensions` Facoltativo. Specifica le dimensioni aggiuntive da utilizzare solo per i parametri di questo oggetto. Se specifichi questo campo, verrà utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions` globale, usato per tutti i tipi di parametri raccolti dall'agente. 
+ `drop_original_metrics` : Opzionale. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.

All'interno di ogni sezione di contatori, puoi inoltre specificare i seguenti campi facoltativi:
+ `rename`: specifica un nome diverso da utilizzare per questa metrica CloudWatch .
+ `unit`: specifica l'unità di misura da utilizzare per questo parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)

Esistono altre sezioni facoltative che puoi includere in `metrics_collected`:
+ `statsd`: consente di recuperare i parametri personalizzati utilizzando il protocollo `StatsD`. L' CloudWatch agente funge da demone per il protocollo. Puoi utilizzare qualsiasi client `StatsD` standard per inviare i parametri all'agente di CloudWatch. Per ulteriori informazioni, consulta [Recupero dei parametri personalizzati con StatsD](CloudWatch-Agent-custom-metrics-statsd.md).
+ `procstat`: consente di recuperare i parametri dai singoli processi. Per ulteriori informazioni, consulta [Raccolta di parametri dei processi con il plug-in procstat](CloudWatch-Agent-procstat-process-metrics.md).
+  `jmx` Facoltativo. Specifica che desideri recuperare le metriche di Java Management Extensions (JMX) dall'istanza. Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione e sulle metriche che è possibile raccogliere, consulta [Raccolta delle metriche di Java Management Extensions (JMX)](CloudWatch-Agent-JMX-metrics.md). 
+  `otlp` : Opzionale. Specifica che desideri raccogliere le metriche dall'SDK. OpenTelemetry Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta [Raccogli metriche e tracce con OpenTelemetry](CloudWatch-Agent-OpenTelemetry-metrics.md). 

Di seguito è riportato un esempio di una sezione `metrics` per l'uso su Windows Server. In questo esempio, vengono raccolti molti parametri di Windows e il computer è impostato per ricevere ulteriori parametri da un client `StatsD`.

```
"metrics": {
    "metrics_collected": {
      "statsd": {},
      "Processor": {
        "measurement": [
          {"name": "% Idle Time", "rename": "CPU_IDLE", "unit": "Percent"},
          "% Interrupt Time",
          "% User Time",
          "% Processor Time"
        ],
        "resources": [
          "*"
        ],
        "append_dimensions": {
          "d1": "win_foo",
          "d2": "win_bar"
        }
      },
      "LogicalDisk": {
        "measurement": [
          {"name": "% Idle Time", "unit": "Percent"},
          {"name": "% Disk Read Time", "rename": "DISK_READ"},
          "% Disk Write Time"
        ],
        "resources": [
          "*"
        ]
      },
      "Memory": {
        "metrics_collection_interval": 5,
        "measurement": [
          "Available Bytes",
          "Cache Faults/sec",
          "Page Faults/sec",
          "Pages/sec"
        ],
        "append_dimensions": {
          "d3": "win_bo"
        }
      },
      "Network Interface": {
        "metrics_collection_interval": 5,
        "measurement": [
          "Bytes Received/sec",
          "Bytes Sent/sec",
          "Packets Received/sec",
          "Packets Sent/sec"
        ],
        "resources": [
          "*"
        ],
        "append_dimensions": {
          "d3": "win_bo"
        }
      },
      "System": {
        "measurement": [
          "Context Switches/sec",
          "System Calls/sec",
          "Processor Queue Length"
        ],
        "append_dimensions": {
          "d1": "win_foo",
          "d2": "win_bar"
        }
      }
    },
    "append_dimensions": {
      "ImageId": "${aws:ImageId}",
      "InstanceId": "${aws:InstanceId}",
      "InstanceType": "${aws:InstanceType}",
      "AutoScalingGroupName": "${aws:AutoScalingGroupName}"
    },
    "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]]
    }
  }
```

## CloudWatch file di configurazione dell'agente: sezione Logs
<a name="CloudWatch-Agent-Configuration-File-Logssection"></a>

La sezione `logs` include i seguenti campi:
+ `service.name` : Opzionale. Specifica il nome del servizio da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
+ `deployment.environment` : Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
+ `backpressure_mode` : Opzionale. Speciifica il comportamento quando l' CloudWatch agente inserisce i log più velocemente di quanto possa inviarli a CloudWatch Logs, con conseguente contropressione. La contropressione può verificarsi a causa di problemi di rete, limitazione delle API o volume di log elevato.

  L'agente supporta i seguenti valori:
  + `fd_release`— Rilascia i descrittori di file per i file eliminati in condizioni di contropressione. Questa opzione può aiutare a prevenire l'esaurimento dello spazio su disco quando i processi di rotazione o pulizia dei registri esterni rimuovono i file mentre l'agente mantiene i descrittori di file aperti. L'`auto_removal`opzione ha la precedenza sull'`backpressure_mode`opzione impostata su. `fd_release` Quando `auto_removal` è abilitata, l' CloudWatch agente elabora il file fino al completamento senza rilasciare il descrittore di file.
**Importante**  
L'utilizzo `fd_release` può impedire all' CloudWatch agente di leggere i file di registro fino al completamento, con conseguente perdita del registro.
+ `concurrency` : Opzionale. Speciifica il numero di editori di log condivisi utilizzati per pubblicare contemporaneamente i file di registro in Logs. CloudWatch 

  Se si omette questo campo, ogni destinazione di file di registro (gruppo di log, combinazione di flussi) ha un unico editore di log condiviso, il che può causare problemi per file di grandi dimensioni o quando si scrivono più file nella stessa destinazione. L'abilitazione della concorrenza può contribuire alla velocità effettiva.
+ `logs_collected`: obbligatorio se è inclusa la sezione `logs`. Specifica quali file di log e log di eventi Windows devono essere raccolti dal server. Può includere due campi: `files` e `windows_events`.
  + `files`— Speciifica quali file di registro regolari l' CloudWatch agente deve raccogliere. Include il campo `collect_list`, che definisce ulteriormente questi file.
    + `collect_list`: campo obbligatorio se `files` è incluso. Contiene una matrice di voci, ciascuna delle quali specifica un file di log da raccogliere. Ciascuna di queste voci può includere i seguenti campi:
      + `file_path`— specifica il percorso del file di registro da caricare su Logs. CloudWatch Le regole di corrispondenza glob Standard Unix sono accettate, con l'aggiunta di `**` come *super asterisco*. Ad esempio, specificando `/var/log/**.log`, tutti i file `.log` nella struttura di directory `/var/log` verranno raccolti. Per ulteriori esempi, consulta la pagina Web [Glob Library](https://github.com/gobwas/glob).

        Puoi anche utilizzare l'asterisco standard come carattere jolly. Ad esempio, `/var/log/system.log*` corrisponde ai file, ad esempio `system.log_1111`, `system.log_2222` e così via in `/var/log`.

        Solo il file più recente viene inviato ai CloudWatch registri in base all'ora di modifica del file. Ti consigliamo di utilizzare i caratteri jolly per specificare una serie di file dello stesso tipo, ad esempio `access_log.2018-06-01-01` e `access_log.2018-06-01-02`, ma non file di più tipi, ad esempio `access_log_80` e `access_log_443`. Per specificare più tipi di file, aggiungi un'altra voce di flusso di log al file di configurazione dell'agente in modo che ciascun tipo di file di log abbia come destinazione un flusso di log distinto.
      + `auto_removal` : Opzionale. In tal caso`true`, l' CloudWatch agente elimina automaticamente questo file di registro dopo averlo letto ed è stato ruotato. In genere i file di registro vengono eliminati dopo che l'intero contenuto è stato caricato su CloudWatch Logs, ma se l'agente raggiunge l'EOF (fine del file) e rileva anche un altro file di registro più recente che corrisponde allo stesso`file_path`, l'agente elimina il VECCHIO file, quindi è necessario assicurarsi di aver finito di scrivere sul file VECCHIO prima di creare il NUOVO file. La [libreria di tracciamento RUST](https://docs.rs/tracing/latest/tracing/) presenta un'incompatibilità nota perché potrebbe creare un NUOVO file di log e quindi tentare comunque di scrivere sul VECCHIO file di log.

        L'agente rimuove solo i file completi dai log che creano più file, ad esempio i log che creano file separati per ogni data. Se un log scrive continuamente in un singolo file, non viene rimosso.

        Se hai già un metodo di rotazione o rimozione dei file di log, si consiglia di omettere questo campo o impostarlo su `false`.

        Se non compili questo campo, verrà utilizzato il valore predefinito `false`.
      + `log_group_name` : Opzionale. Speciifica cosa usare come nome del gruppo di log in Logs. CloudWatch 

        È consigliabile usare questo campo per specificare un nome del gruppo di log per evitare confusione. Se `log_group_name` non è specificato, viene utilizzato come nome del gruppo di log il valore del `file_path`, fino al punto finale. Ad esempio, se il percorso del file è `/tmp/TestLogFile.log.2017-07-11-14`, il nome del gruppo di log sarà `/tmp/TestLogFile.log`. 

        Se specifichi un nome del gruppo di log, puoi utilizzare `{instance_id}`, `{hostname}`, `{local_hostname}` e `{ip_address}` come variabili all'interno del nome. `{hostname}` recupera il nome host dai metadati EC2, mentre `{local_hostname}` utilizza il nome host dal file di configurazione di rete.

        Se utilizzi queste variabili per creare diversi gruppi di log, devi tenere presente il limite di 1.000.000 gruppi di log per Regione in ogni account.

        I caratteri consentiti includono a-z, A-Z, 0-9, '\$1' (trattino basso), '-' (trattino), '/' (barra) e '.' (punto).
      + `log_group_class` : Opzionale. Specifica quale classe di gruppo di log usare per il nuovo gruppo di log. Per ulteriori informazioni sulle classi dei gruppi di log, consulta [Classi di log](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html).

        I valori validi sono `STANDARD` e `INFREQUENT_ACCESS`. Se ometti questo campo, verrà utilizzato il valore predefinito `STANDARD`.
**Importante**  
Dopo la creazione di un gruppo di log, la relativa classe non può essere modificata.
      + `log_stream_name` : Opzionale. Specifica cosa usare come nome del flusso di log in Logs. CloudWatch Nel nome, puoi utilizzare `{instance_id}`, `{hostname}`, `{local_hostname}` e `{ip_address}` come variabili all'interno del nome. `{hostname}` recupera il nome host dai metadati EC2, mentre `{local_hostname}` utilizza il nome host dal file di configurazione di rete.

        Se ometti questo campo, viene utilizzato il valore del parametro `log_stream_name` nella sezione `logs` globale. Se anche questo viene omesso, viene utilizzato il valore predefinito di `{instance_id}`.

        Se non esiste, il flusso di log verrà creato automaticamente.
      + `retention_in_days` : Opzionale. Specifica il numero di giorni in cui mantenere gli eventi di log nel gruppo di log specificato.
        + Se l'agente sta creando questo gruppo di log e si omette questo campo, la conservazione non avrà scadenza.
        + Se questo gruppo di flussi di log esiste già e si specifica questo campo, viene utilizzata la nuova conservazione specificata. Se si omette questo campo per un gruppo di flussi di log già esistente, la conservazione del gruppo non viene modificata.

          La procedura guidata dell' CloudWatch agente utilizza `-1` come valore predefinito per questo campo quando viene utilizzato per creare il file di configurazione dell'agente e non si specifica un valore per la conservazione dei log. Questo valore `-1` impostato dalla procedura guidata specifica che gli eventi nel gruppo di log non scadono. Tuttavia, la modifica manuale di questo valore su `-1` non ha alcun effetto.

        I valori validi sono 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288 e 3653.

        Se configuri l'agente in modo che scriva più flussi di log nello stesso gruppo, la specificazione del parametro `retention_in_days` in un'unica posizione imposterà la conservazione dei log per l'intero gruppo. Se definisci il parametro `retention_in_days` per lo stesso gruppo di log in più posizioni, la conservazione viene impostata se tutti i valori sono uguali. Tuttavia, se sono specificati valori del parametro `retention_in_days` diversi per lo stesso gruppo di log in più posizioni, la conservazione dei log non verrà impostata e l'agente si fermerà, restituendo un errore.
**Nota**  
Per poter impostare le policy di conservazione, il ruolo o l'utente IAM dell'agente deve disporre della `logs:PutRetentionPolicy`. 
**avvertimento**  
Se hai impostato la `retention_in_days` per un gruppo di log già esistente, tutti i log del gruppo pubblicati prima del numero di giorni definito verranno eliminati. Ad esempio, se si imposta il valore su 3, sarebbero eliminati tutti i log antecedenti agli ultimi 3 giorni. 
      + `filters` : Opzionale. Può contenere una matrice di voci, ognuna delle quali definisce un'espressione regolare e un tipo di filtro per definire se pubblicare o eliminare le voci di log corrispondenti al filtro. Se si omette questo campo, tutti i log del file di registro vengono pubblicati in Logs. CloudWatch Se si include questo campo, l'agente elabora ogni messaggio di registro con tutti i filtri specificati e solo gli eventi di registro che superano tutti i filtri vengono pubblicati in Logs. CloudWatch Le voci di registro che non superano tutti i filtri rimarranno comunque nel file di registro dell'host, ma non verranno inviate a CloudWatch Logs.

        Ogni voce nella matrice dei filtri può includere i seguenti campi:
        + `type`: indica il tipo di filtro. I valori validi sono `include` e `exclude`. Con`include`, la voce di registro deve corrispondere all'espressione da pubblicare in CloudWatch Logs. Con`exclude`, ogni voce di registro che corrisponde al filtro non viene inviata a CloudWatch Logs.
        + `expression`— Una stringa di espressioni regolari che segue la [RE2 sintassi](https://github.com/google/re2/wiki/Syntax).
**Nota**  
L' CloudWatch agente non controlla le prestazioni di alcuna espressione regolare fornita né limita il tempo di esecuzione della valutazione delle espressioni regolari. Consigliamo di fare attenzione a non scrivere un'espressione dispendiosa da valutare. Per ulteriori informazioni sui possibili problemi, vedete [Regular expression Denial of Service - S ReDo](https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS)

        Ad esempio, il seguente estratto del file di configurazione dell' CloudWatch agente pubblica i log che sono richieste PUT e POST nei registri, ma CloudWatch escludono i log provenienti da Firefox.

        ```
        "collect_list": [ 
          {
            "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/test.log", 
            "log_group_name": "test.log", 
            "log_stream_name": "test.log",
            "filters": [
              {
                "type": "exclude",
                "expression": "Firefox"
              },
              {
                "type": "include",
                "expression": "P(UT|OST)"
              }
            ]
          },
          .....
        ]
        ```
**Nota**  
L'ordine dei filtri nel file di configurazione influisce sulle prestazioni. Nell'esempio precedente, l'agente elimina tutti i log corrispondenti a `Firefox` prima di iniziare a valutare il secondo filtro. Per fare in modo che vengano valutate meno voci di log da più di un filtro, inserisci prima il filtro che prevedi escluda più log nel file di configurazione.
      + `timezone` : Opzionale. Specifica il fuso orario da utilizzare per l'inserimento di timestamp negli eventi di log. I valori validi sono `UTC` e `Local`. Il valore predefinito è `Local`.

        Questo parametro viene ignorato se non specifichi un valore per `timestamp_format`.
      + `timestamp_format` : Opzionale. Specifica il formato del timestamp, utilizzando testo normale e simboli speciali che iniziano con %. Se ometti questo campo, verrà utilizzata l'ora corrente. Se utilizzi questo campo, puoi utilizzare i simboli del seguente elenco nel formato.
**Nota**  
Questo parametro non viene considerato quando `file_path` è impostato su `amazon-cloudwatch-agent.log` 

        Se una singola voce di log contiene due timestamp che corrispondono al formato, viene utilizzato il primo timestamp.

        Questo elenco di simboli è diverso dall'elenco utilizzato dal precedente agente Logs. CloudWatch Per un riepilogo delle differenze, consulta [Differenze nel timestamp tra l' CloudWatch agente e l'agente Logs precedente CloudWatch](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-logs-timestamp-differences).  
`%y`  
Anno senza secolo come numero decimale a cui è aggiunto uno zero Ad esempio, `19` per rappresentare 2019.  
`%Y`  
Anno con secolo come numero decimale Ad esempio, `2019`.  
`%b`  
Mese come il nome abbreviato nella lingua locale  
`%B`  
Mese come il nome completo nella lingua locale  
`%m`  
Mese come numero decimale a cui è aggiunto uno zero  
`%-m`  
Mese come numero decimale (senza l'aggiunta di uno zero)  
`%d`  
Giorno del mese come numero decimale a cui è aggiunto uno zero  
`%-d`  
Giorno del mese come numero decimale (senza l'aggiunta di uno zero)  
`%A`  
Nome completo di giorno feriale, ad esempio `Monday`  
`%a`  
Abbreviazione di giorno feriale, ad esempio `Mon`  
`%H`  
Ora (formato di 24 ore) come numero decimale a cui è aggiunto uno zero  
`%I`  
Ora (formato di 12 ore) come numero decimale a cui è aggiunto uno zero  
`%-I`  
Ora (formato di 12 ore) come numero decimale (senza l'aggiunta di uno zero)  
`%p`  
AM o PM  
`%M`  
Minuti come numero decimale a cui è aggiunto uno zero  
`%-M`  
Minuti come numero decimale (senza l'aggiunta di uno zero)  
`%S`  
Secondi come numero decimale a cui è aggiunto uno zero  
`%-S`  
Secondi come numero decimale (senza l'aggiunta di uno zero)  
`%f`  
Secondi frazionati come numero decimale (1-9 cifre), con l'aggiunta di zero a sinistra.  
`%Z`  
Fuso orario, ad esempio `PST`  
`%z`  
Fuso orario, espresso come la differenza tra il fuso orario locale e UTC. Ad esempio, `-0700`. È supportato solo questo formato. Ad esempio, `-07:00` non è un formato valido.  

      + `multi_line_start_pattern`: specifica il modello per identificare l'inizio di un messaggio di log. Un messaggio di log è composto da una riga corrispondente al modello e da tutte le righe successive non corrispondenti al modello.

        Se questo campo viene omesso, la modalità a più righe viene disabilitata e le righe che iniziano con caratteri diversi da spazi vuoti chiudono il messaggio di log precedente e iniziano un nuovo messaggio di log.

        Se includi questo campo, puoi specificare `{timestamp_format}` per utilizzare la stessa espressione regolare come formato del timestamp. Altrimenti, è possibile specificare un'espressione regolare diversa per CloudWatch Logs da utilizzare per determinare le righe iniziali delle voci su più righe.
      + `encoding`: specifica la codifica del file di log in modo che il file possa essere letto correttamente. Se specifichi una codifica non corretta, potrebbe verificarsi una perdita di dati, in quanto i caratteri che non possono essere decodificati saranno sostituiti da altri caratteri.

        Il valore predefinito è `utf-8`. Di seguito sono riportati i valori possibili:

         `ascii, big5, euc-jp, euc-kr, gbk, gb18030, ibm866, iso2022-jp, iso8859-2, iso8859-3, iso8859-4, iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-8-i, iso8859-10, iso8859-13, iso8859-14, iso8859-15, iso8859-16, koi8-r, koi8-u, macintosh, shift_jis, utf-8, utf-16, utf-16le, UTF-16, UTF-16LE, windows-874, windows-1250, windows-1251, windows-1252, windows-1253, windows-1254, windows-1255, windows-1256, windows-1257, windows-1258, x-mac-cyrillic` 
      + `service.name` : Opzionale. Specifica il nome del servizio da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
      + `deployment.environment` : Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la [ricerca della telemetria correlata](ExploreRelated.md).
      + `trim_timestamp` : Opzionale. Se questo è vero, l' CloudWatch agente rimuoverà il timestamp corrispondente `timestamp_format` dalla riga prima di inviarlo a Logs. CloudWatch Il testamento LogEvent conterrà ancora il campo. `timestamp`

        Se non compili questo campo, verrà utilizzato il valore predefinito `false`.
  + La sezione `windows_events` specifica il tipo di eventi Windows da raccogliere dai server con Windows Server in esecuzione. Include i seguenti campi:
    + `collect_list`: campo obbligatorio se `windows_events` è incluso. Specifica i tipi e i livelli di eventi Windows da raccogliere. Ciascun log da raccogliere presenta una voce in questa sezione, che può includere i seguenti campi:
      + `event_name`: specifica il tipo di eventi Windows da registrare. Equivale al nome del canale del log degli eventi di Windows, ad esempio `System`, `Security`, `Application` e così via. Questo campo è obbligatorio per ogni tipo di evento Windows da registrare.
**Nota**  
Quando CloudWatch recupera i messaggi da un canale di registro di Windows, cerca il canale di registro in base alla sua `Full Name` proprietà. Nel frattempo, nel riquadro di spostamento del Visualizzatore eventi di Windows vengono visualizzate le proprietà `Log Name` dei canali di log. `Full Name` e `Log Name` non sempre corrispondono. Per verificare il `Full Name` di un canale, fare clic con il pulsante destro del mouse nel Visualizzatore eventi di Windows e aprire **Properties** (Proprietà).
      + `event_levels` : Opzionale. Specifica i livelli di evento da registrare. È necessario specificare ciascun livello da registrare. I valori possibili sono `INFORMATION`, `WARNING`, `ERROR`, `CRITICAL` e `VERBOSE`. Questo campo è facoltativo per ogni tipo di evento Windows da registrare e può essere utilizzato con altre opzioni di filtro come `event_ids` e `filters`.
      + `event_ids` : Opzionale. Contiene una serie di eventi di Windows IDs per specificare quali eventi raccogliere dal registro eventi di Windows. Quando questo campo è escluso, vengono raccolti tutti gli eventi del log eventi specificato. Quando questo campo è incluso, l'agente raccoglie solo gli eventi che corrispondono all'evento IDs specificato.

        Ogni voce dell'array `event_ids` deve essere un valore numerico di ID evento e può essere utilizzata con altre opzioni di filtro. Vedi la terza voce nell'esempio di configurazione riportato di seguito.
**Nota**  
L'utilizzo di `event_ids` per il filtraggio è consigliato rispetto alle espressioni regex quando è necessario filtrare in base all'ID evento, in quanto offre prestazioni migliori.
      + `filters` : Opzionale. Contiene un array di voci. Ogni voce specifica un'espressione regolare e un tipo di filtro per definire se pubblicare o eliminare le voci di log corrispondenti al filtro. Quando il campo è incluso, l'agente elabora ogni messaggio di registro con tutti i filtri specificati e solo gli eventi di registro che superano tutti i filtri vengono pubblicati nei CloudWatch registri. I registri degli eventi di Windows che non superano tutti i filtri verranno eliminati e non inviati a CloudWatch Logs. La sezione dei filtri può essere utilizzata anche con altri meccanismi di filtraggio come gli ID degli eventi [4624, 4625] e i livelli di sistema (Information, Error o Critical) per filtrare efficacemente i log e inviarli a. CloudWatch

        Ogni voce nella matrice dei filtri può includere i seguenti campi:
        + `type`: specifica il tipo di filtro. I valori validi sono `include` e `exclude`. Con include, la voce degli eventi di Windows deve corrispondere all'espressione da pubblicare su Logs. CloudWatch Con exclude, ogni voce del registro eventi di Windows che corrisponde al filtro non viene inviata a CloudWatch Logs.
        + `expression`— Una stringa di espressioni regolari che segue la RE2 sintassi.
**Nota**  
L' CloudWatch agente non convalida le espressioni regolari fornite dall'utente. Inoltre, non limita il loro tempo di valutazione. Scrivi le espressioni con attenzione per evitare problemi di prestazioni. Per ulteriori informazioni sui rischi di sicurezza, vedere [Regular expression Denial of Service](https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS) - S. ReDo

        Nell'esempio di configurazione dell'agente riportato di seguito:

        Come prima immissione, l'agente invia i log che contengono i messaggi di errore del database, tutte le attività relative all'autenticazione e tutti gli eventi di accesso (tentativi riusciti e falliti) a. CloudWatch Tutti i log che non corrispondono a questo schema vengono scartati.

        Nella seconda voce, il filtraggio iniziale viene eseguito in base agli ID degli eventi per l'abbonamento agli eventi Windows. L'agente raccoglie tutti i log che contengono la stringa utente, eliminando i log che non corrispondono a questi schemi. L'agente quindi elimina i log contenenti `successful` prima di inviare i log rimanenti a Logs. CloudWatch Ogni tipo di filtro viene applicato a ogni registro eventi di Windows prima dell'invio a. CloudWatch

        ```
        "collect_list": [ 
          {
                "event_name": "Application",
                "log_group_name": "ApplicationEvents",
                "log_stream_name": "ApplicationEvents", 
                "filters": [
                    {
                        "type": "include",
                        "expression": "Database.*failed|Authentication.*|login.*"
                    }
                ]
            },
            {
                "event_name": "System", 
                "log_group_name": "SystemEvents",
                "log_stream_name": "Logon-events",
                "event_ids": [
                    4624,
                    4625
                 ],
                "filters": [
                    {
                        "type": "include",
                        "expression": ".*user.*"
                    },
                    {
                        "type": "exclude",
                        "expression": ".*successful.*"
                    }
                 ]
             }
          .....
        ]
        ```
**Nota**  
L'ordine dei filtri nella configurazione influisce sulle prestazioni. Nella seconda voce, l'agente scarta tutti i log corrispondenti all'utente prima di iniziare a valutare la seconda espressione di filtro. Per prestazioni ottimali, ordina i filtri dal tasso di esclusione più alto a quello più basso.

        Sebbene sia possibile filtrare i log relativi agli ID degli eventi e ai livelli di sistema nell'espressione del filtro, per migliorare le prestazioni si consiglia di utilizzare `event_ids` e `log_level` come mostrato nella seconda voce.
**avvertimento**  
Anche se tutti i meccanismi di filtraggio (event\$1levels, event\$1ids, filters) sono facoltativi, durante la configurazione dell'agente è necessario specificarne almeno uno per filtrare i log.
      + `log_group_name`: obbligatorio Specifica cosa usare come nome del gruppo di log in CloudWatch Logs. 
      + `log_stream_name` : Opzionale. Specifica cosa usare come nome del flusso di log in Logs. CloudWatch Nel nome, puoi utilizzare `{instance_id}`, `{hostname}`, `{local_hostname}` e `{ip_address}` come variabili all'interno del nome. `{hostname}` recupera il nome host dai metadati EC2, mentre `{local_hostname}` utilizza il nome host dal file di configurazione di rete.

        Se ometti questo campo, viene utilizzato il valore del parametro `log_stream_name` nella sezione `logs` globale. Se anche questo viene omesso, viene utilizzato il valore predefinito di `{instance_id}`.

        Se non esiste, il flusso di log verrà creato automaticamente.
      + `event_format` : Opzionale. Speciifica il formato da utilizzare per la memorizzazione degli eventi di Windows nei registri. CloudWatch `xml`utilizza il formato XML come in Windows Event Viewer. `text`utilizza il formato legacy dell'agente CloudWatch Logs.
      + `retention_in_days` : Opzionale. Specifica il numero di giorni in cui mantenere gli eventi di Windows nel gruppo di log specificato.
        + Se l'agente sta creando questo gruppo di log e si omette questo campo, la conservazione non avrà scadenza.
        + Se questo gruppo di flussi di log esiste già e si specifica questo campo, viene utilizzata la nuova conservazione specificata. Se si omette questo campo per un gruppo di flussi di log già esistente, la conservazione del gruppo non viene modificata.

          La procedura guidata dell' CloudWatch agente utilizza `-1` come valore predefinito per questo campo quando viene utilizzato per creare il file di configurazione dell'agente e non si specifica un valore per la conservazione dei log. Questo valore `-1` specificato dalla procedura guidata specifica che gli eventi nel gruppo di log non scadono. Tuttavia, la modifica manuale di questo valore su `-1` non ha alcun effetto.

        I valori validi sono 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, 2192, 2557, 2922, 3288 e 3653.

        Se configuri l'agente in modo che scriva più flussi di log nello stesso gruppo, la specificazione del parametro `retention_in_days` in un'unica posizione imposterà la conservazione dei log per l'intero gruppo. Se definisci il parametro `retention_in_days` per lo stesso gruppo di log in più posizioni, la conservazione viene impostata se tutti i valori sono uguali. Tuttavia, se sono specificati valori del parametro `retention_in_days` diversi per lo stesso gruppo di log in più posizioni, la conservazione dei log non verrà impostata e l'agente si fermerà, restituendo un errore.
**Nota**  
Per poter impostare le policy di conservazione, il ruolo o l'utente IAM dell'agente deve disporre della `logs:PutRetentionPolicy`. 
**avvertimento**  
Se hai impostato la `retention_in_days` per un gruppo di log già esistente, tutti i log del gruppo pubblicati prima del numero di giorni definito verranno eliminati. Ad esempio, se si imposta il valore su 3, sarebbero eliminati tutti i log antecedenti agli ultimi 3 giorni. 
+ `log_stream_name` : Opzionale. Specifica il nome del flusso di log predefinito da utilizzare per tutti i log o gli eventi Windows che non dispongono di nomi del flusso di log individuali definiti nel parametro `log_stream_name` all'interno della voce in `collect_list`.
+ `endpoint_override`: specifica un endpoint FIPS o un collegamento privato da utilizzare come endpoint in cui l'agente invia i log. Specificando questo campo e impostando un collegamento privato potrai inviare i log a un endpoint Amazon VPC. Per ulteriori informazioni, consulta [Cos'è Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html). 

  Il valore di `endpoint_override` deve essere una stringa che è un URL.

  Ad esempio, la parte seguente della sezione dei log del file di configurazione imposta l'agente per utilizzare un endpoint VPC durante l'invio dei log. 

  ```
  {
    "logs": {
      "endpoint_override": "vpce-XXXXXXXXXXXXXXXXXXXXXXXXX.logs.us-east-1.vpce.amazonaws.com",
     ......
     },
  }
  ```
+ `force_flush_interval`: specifica in secondi la quantità massima di tempo in cui i log rimangono nel buffer di memoria prima di essere inviati al server. Indipendentemente dall'impostazione di questo campo, se la dimensione dei log nel buffer raggiunge 1 MB, i log vengono immediatamente inviati al server. Il valore predefinito è 5.

  Se utilizzi l'agente per segnalare parametri ad alta risoluzione in formato dei parametri incorporati e stai impostando allarmi su tali parametri, mantieni questo parametro impostato sul valore predefinito di 5. In caso contrario, i parametri vengono segnalati con un ritardo che può causare allarmi su dati parziali o incompleti.
+ `credentials`— Speciifica un ruolo IAM da utilizzare per l'invio dei log a un account diverso. AWS Se specificato, questo campo contiene un parametro, `role_arn`.
  + `role_arn`— specifica l'ARN di un ruolo IAM da utilizzare per l'autenticazione quando si inviano i log a un account diverso. AWS Per ulteriori informazioni, consulta [Invio di parametri, log e tracce a un altro account](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-send-to-different-AWS-account). Se specificato qui, sostituisce il `role_arn` specificato nella sezione `agent` del file di configurazione, se presente.
+ `metrics_collected`— Questo campo può contenere sezioni per specificare che l'agente deve raccogliere i log per abilitare casi d'uso come CloudWatch Application Signals e Container Insights con osservabilità migliorata per Amazon EKS.
  + `application_signals`(Facoltativo) Indica che desideri abilitare [CloudWatchApplication Signals](CloudWatch-Application-Monitoring-Sections.md). Per ulteriori informazioni su questa configurazione, consulta. [Abilita CloudWatch Application Signals](CloudWatch-Agent-Application_Signals.md)
  + `kubernetes`: questo campo può contenere un parametro `enhanced_container_insights`, che può essere utilizzato per abilitare Approfondimenti sui container con osservabilità migliorata per Amazon EKS.
    + `enhanced_container_insights`: imposta questo valore su `true` per abilitare Approfondimenti sui container con osservabilità migliorata per Amazon EKS. Per ulteriori informazioni, consulta [Container Insights con osservabilità migliorata per Amazon EKS](container-insights-detailed-metrics.md).
    + `accelerated_compute_metrics`: imposta questa opzione su `false` per disattivare la raccolta delle metriche di GPU Nvidia sui cluster Amazon EKS. Per ulteriori informazioni, consulta [Metriche della GPU NVIDIA](Container-Insights-metrics-enhanced-EKS.md#Container-Insights-metrics-EKS-GPU).
  + `emf`: per raccogliere i parametri integrati nei log, non è più necessario aggiungere questo campo `emf`. Questo è un campo legacy che specifica che l'agente deve raccogliere i log con formato del parametro integrato. È possibile generare dati di parametro da questi log. Per ulteriori informazioni, consulta [Incorporamento dei parametri nei log](CloudWatch_Embedded_Metric_Format.md).
  + `otlp` Facoltativo. Speciifica che desideri raccogliere metriche dall'SDK. OpenTelemetry Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta [Raccogli metriche e tracce con OpenTelemetry](CloudWatch-Agent-OpenTelemetry-metrics.md).

Di seguito è riportato un esempio di una sezione `logs`.

```
"logs":{
    "logs_collected": {
    "files": {
            "collect_list": [
                   {
                        "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log",
                       "log_group_name": "amazon-cloudwatch-agent.log",
                       "log_stream_name": "my_log_stream_name_1"
                   },
                   {
                       "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\test.log",
                       "log_group_name": "test.log",
                       "log_stream_name": "my_log_stream_name_2"
                   }
               ]
           },
      "windows_events": {
                "collect_list": [
                                {
                       "event_name": "System",
                       "event_ids": [
                           1001,
                           1008
                       ],
                       "log_group_name": "System",
                       "log_stream_name": "System"
                   },
                   {
                       "event_name": "CustomizedName",
                       "event_levels": [
                           "INFORMATION",
                           "ERROR"
                       ],
                       "log_group_name": "CustomizedLogGroup",
                       "log_stream_name": "CustomizedLogStream"
                   },
                   {
                       "event_name": "Application",
                       "event_levels": [
                           "INFORMATION",
                           "ERROR"
                       ],
                       "event_ids":[
                            7369,
                            5624
                       ],
                       "log_group_name": "CustomizedLogGroup",
                       "log_stream_name": "CustomizedLogStream"
                   }
               ]
           }
       },
       "log_stream_name": "my_log_stream_name",
       "metrics_collected": {
        "kubernetes": {
        "enhanced_container_insights": true
      }
    }
  }
```

## CloudWatch file di configurazione dell'agente: sezione Traces
<a name="CloudWatch-Agent-Configuration-File-Tracessection"></a>

Aggiungendo una `traces` sezione al file di configurazione dell' CloudWatch agente, è possibile abilitare CloudWatch Application Signals o raccogliere tracce da X-Ray e dall'SDK di OpenTelemetry strumentazione e inviarle a X-Ray.

**Importante**  
Il ruolo IAM dell'agente o l'utente IAM deve disporre della **AWSXrayWriteOnlyAccess**policy per inviare i dati di traccia a X-Ray. 

Per iniziare rapidamente a raccogliere le tracce, puoi aggiungere solo quanto segue al file di configurazione dell' CloudWatchagente.

```
"traces_collected": {
        "xray": {
        },
        "otlp": {
        }
      }
```

Se si aggiunge la sezione precedente al file di configurazione dell' CloudWatch agente e si riavvia l'agente, l'agente inizia a raccogliere le tracce utilizzando le seguenti opzioni e valori predefiniti. Per ulteriori informazioni su questi parametri, consulta le definizioni dei parametri più avanti in questa sezione.

```
"traces_collected": {
        "xray": {
            "bind_address": "127.0.0.1:2000",
            "tcp_proxy": {
              "bind_address": "127.0.0.1:2000"
            }
        },
        "otlp": {
            "grpc_endpoint": "127.0.0.1:4317",
            "http_endpoint": "127.0.0.1:4318"
        }
      }
```

La sezione `traces` può includere i seguenti campi:
+ `traces_collected`: obbligatorio se è inclusa la sezione `traces`. Speciifica SDKs da quale raccogliere le tracce. Include i seguenti campi:
  + `application_signals` : Opzionale. Specifica che si desidera abilitare [CloudWatchApplication Signals](CloudWatch-Application-Monitoring-Sections.md). Per ulteriori informazioni su questa configurazione, vedere. [Abilita CloudWatch Application Signals](CloudWatch-Agent-Application_Signals.md)
  + `xray` : Opzionale. Specifica che desideri raccogliere le tracce dall'SDK X-Ray. Questa sezione può includere i seguenti campi.
    + `bind_address` Facoltativo. Speciifica l'indirizzo UDP dell' CloudWatch agente da utilizzare per ascoltare le tracce X-Ray. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato nell'SDK X-Ray.

      Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:2000`.
    + `tcp_proxy` : Opzionale. Configura l'indirizzo di un proxy utilizzato per supportare il campionamento remoto di X-Ray. Per ulteriori informazioni, consulta [Configurazione delle regole di campionamento](https://docs.aws.amazon.com/xray/latest/devguide/xray-console-sampling.html) nella console di X-Ray.

      Questa sezione può contenere i seguenti campi.
      + `bind_address` : Opzionale. Speciifica l'indirizzo TCP su cui l' CloudWatch agente deve configurare il proxy. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato nell'SDK X-Ray.

        Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:2000`.
  + `otlp` : Opzionale. Specifica che si desidera raccogliere tracce dall'SDK. OpenTelemetry Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta [Raccogli metriche e tracce con OpenTelemetry](CloudWatch-Agent-OpenTelemetry-metrics.md). [Per ulteriori informazioni su AWS Distro for OpenTelemetry, consulta AWS Distro for. OpenTelemetry](https://aws.amazon.com/otel/) [Per ulteriori informazioni su AWS Distro for OpenTelemetry SDKs, vedere Introduzione.](https://aws-otel.github.io/docs/introduction)

    Questa sezione può includere i seguenti campi.
    + `grpc_endpoint` Facoltativo. Speciifica l'indirizzo che l' CloudWatch agente deve utilizzare per ascoltare le OpenTelemetry tracce inviate utilizzando le chiamate di procedura remota gRPC. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore gRPC nell'SDK. OpenTelemetry

      Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:4317`.
    + `http_endpoint` : Opzionale. Speciifica l'indirizzo che l' CloudWatch agente deve utilizzare per ascoltare le tracce OTLP inviate tramite HTTP. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore HTTP nell'SDK. OpenTelemetry 

      Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:4318`.
+ `concurrency` : Opzionale. Specifica il numero massimo di chiamate simultanee a X-Ray che possono essere utilizzate per caricare tracce. Il valore predefinito è `8`.
+ `local_mode` : Opzionale. Se `true`, l'agente non raccoglie i metadati delle istanze Amazon EC2. Il valore predefinito è `false`.
+ `endpoint_override` : Opzionale. Speciifica un endpoint FIPS o un link privato da utilizzare come endpoint in cui l'agente invia le tracce. CloudWatch Specificando questo campo e impostando un collegamento privato potrai inviare le tracce a un endpoint Amazon VPC. Per ulteriori informazioni, consulta [Cos'è Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).

  Il valore di `endpoint_override` deve essere una stringa che è un URL.
+ `region_override` : Opzionale. Specifica la Regione da utilizzare per l'endpoint X-Ray. L' CloudWatch agente invia le tracce a X-Ray nella regione specificata. Se ometti questo campo, l'agente invia i parametri alla Regione in cui si trova l'istanza Amazon EC2.

  Se si specifica una Regione qui, questa avrà la precedenza sull'impostazione del parametro `region` nella sezione `agent` del file di configurazione.
+ `proxy_override` : Opzionale. Speciifica l'indirizzo del server proxy per l' CloudWatch agente da utilizzare per l'invio di richieste a X-Ray. Il protocollo del server proxy deve essere specificato come parte di questo indirizzo.
+ `credentials`— Speciifica un ruolo IAM da utilizzare per l'invio di tracce a un account diverso. AWS Se specificato, questo campo contiene un parametro, `role_arn`.
  + `role_arn`— specifica l'ARN di un ruolo IAM da utilizzare per l'autenticazione quando si inviano tracce a un AWS account diverso. Per ulteriori informazioni, consulta [Invio di parametri, log e tracce a un altro account](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-send-to-different-AWS-account). Se specificato qui, sostituisce il `role_arn` specificato nella sezione `agent` del file di configurazione, se presente.
+ `transit_spans_in_otlp_format` : Opzionale. If`true`, invia tracce a X-Ray nel formato OpenTelemetry Protocol, che supporta gli eventi span in Transaction Search. Per ulteriori informazioni, consulta [Aggiunta degli attributi personalizzati](CloudWatch-Transaction-Search-add-custom-attributes.md). Il valore predefinito è `false`. 

## CloudWatch file di configurazione dell'agente: esempi completi
<a name="CloudWatch-Agent-Configuration-File-Complete-Example"></a>

Di seguito è riportato un esempio di file completo di configurazione CloudWatch dell'agente per un server Linux.

Gli elementi elencati nelle sezioni `measurement` per i parametri che si desidera raccogliere possono specificare il nome parametro completo oppure solo la parte del nome del parametro che verrà aggiunta al tipo della risorsa. Ad esempio, specificando `reads` o `diskio_reads` nella sezione `measurement` della sezione `diskio` si causa la raccolta del parametro `diskio_reads`.

Questo esempio include entrambi i modi di specificare i parametri nella `measurement` sezione.

```
    {
      "agent": {
        "metrics_collection_interval": 10,
        "logfile": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log"
      },
      "metrics": {
        "namespace": "MyCustomNamespace",
        "metrics_collected": {
          "cpu": {
            "resources": [
              "*"
            ],
            "measurement": [
              {"name": "cpu_usage_idle", "rename": "CPU_USAGE_IDLE", "unit": "Percent"},
              {"name": "cpu_usage_nice", "unit": "Percent"},
              "cpu_usage_guest"
            ],
            "totalcpu": false,
            "metrics_collection_interval": 10,
            "append_dimensions": {
              "customized_dimension_key_1": "customized_dimension_value_1",
              "customized_dimension_key_2": "customized_dimension_value_2"
            }
          },
          "disk": {
            "resources": [
              "/",
              "/tmp"
            ],
            "measurement": [
              {"name": "free", "rename": "DISK_FREE", "unit": "Gigabytes"},
              "total",
              "used"
            ],
             "ignore_file_system_types": [
              "sysfs", "devtmpfs"
            ],
            "metrics_collection_interval": 60,
            "append_dimensions": {
              "customized_dimension_key_3": "customized_dimension_value_3",
              "customized_dimension_key_4": "customized_dimension_value_4"
            }
          },
          "diskio": {
            "resources": [
              "*"
            ],
            "measurement": [
              "reads",
              "writes",
              "read_time",
              "write_time",
              "io_time"
            ],
            "metrics_collection_interval": 60
          },
          "swap": {
            "measurement": [
              "swap_used",
              "swap_free",
              "swap_used_percent"
            ]
          },
          "mem": {
            "measurement": [
              "mem_used",
              "mem_cached",
              "mem_total"
            ],
            "metrics_collection_interval": 1
          },
          "net": {
            "resources": [
              "eth0"
            ],
            "measurement": [
              "bytes_sent",
              "bytes_recv",
              "drop_in",
              "drop_out"
            ]
          },
          "netstat": {
            "measurement": [
              "tcp_established",
              "tcp_syn_sent",
              "tcp_close"
            ],
            "metrics_collection_interval": 60
          },
          "processes": {
            "measurement": [
              "running",
              "sleeping",
              "dead"
            ]
          }
        },
        "append_dimensions": {
          "ImageId": "${aws:ImageId}",
          "InstanceId": "${aws:InstanceId}",
          "InstanceType": "${aws:InstanceType}",
          "AutoScalingGroupName": "${aws:AutoScalingGroupName}"
        },
        "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]],
        "force_flush_interval" : 30
      },
      "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",
                "log_stream_name": "amazon-cloudwatch-agent.log",
                "timezone": "UTC"
              },
              {
                "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/test.log",
                "log_group_name": "test.log",
                "log_stream_name": "test.log",
                "timezone": "Local"
              }
            ]
          }
        },
        "log_stream_name": "my_log_stream_name",
        "force_flush_interval" : 15,
        "metrics_collected": {
           "kubernetes": {
                "enhanced_container_insights": true
      }
    }
  }
}
```

Di seguito è riportato un esempio di file di configurazione completo CloudWatch dell'agente per un server che esegue Windows Server.

```
{
      "agent": {
        "metrics_collection_interval": 60,
        "logfile": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log"
      },
      "metrics": {
        "namespace": "MyCustomNamespace",
        "metrics_collected": {
          "Processor": {
            "measurement": [
              {"name": "% Idle Time", "rename": "CPU_IDLE", "unit": "Percent"},
              "% Interrupt Time",
              "% User Time",
              "% Processor Time"
            ],
            "resources": [
              "*"
            ],
            "append_dimensions": {
              "customized_dimension_key_1": "customized_dimension_value_1",
              "customized_dimension_key_2": "customized_dimension_value_2"
            }
          },
          "LogicalDisk": {
            "measurement": [
              {"name": "% Idle Time", "unit": "Percent"},
              {"name": "% Disk Read Time", "rename": "DISK_READ"},
              "% Disk Write Time"
            ],
            "resources": [
              "*"
            ]
          },
          "customizedObjectName": {
            "metrics_collection_interval": 60,
            "customizedCounterName": [
              "metric1",
              "metric2"
            ],
            "resources": [
              "customizedInstances"
            ]
          },
          "Memory": {
            "metrics_collection_interval": 5,
            "measurement": [
              "Available Bytes",
              "Cache Faults/sec",
              "Page Faults/sec",
              "Pages/sec"
            ]
          },
          "Network Interface": {
            "metrics_collection_interval": 5,
            "measurement": [
              "Bytes Received/sec",
              "Bytes Sent/sec",
              "Packets Received/sec",
              "Packets Sent/sec"
            ],
            "resources": [
              "*"
            ],
            "append_dimensions": {
              "customized_dimension_key_3": "customized_dimension_value_3"
            }
          },
          "System": {
            "measurement": [
              "Context Switches/sec",
              "System Calls/sec",
              "Processor Queue Length"
            ]
          }
        },
        "append_dimensions": {
          "ImageId": "${aws:ImageId}",
          "InstanceId": "${aws:InstanceId}",
          "InstanceType": "${aws:InstanceType}",
          "AutoScalingGroupName": "${aws:AutoScalingGroupName}"
        },
        "aggregation_dimensions" : [["ImageId"], ["InstanceId", "InstanceType"], ["d1"],[]]
      },
      "logs": {
        "logs_collected": {
          "files": {
            "collect_list": [
              {
                "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\amazon-cloudwatch-agent.log",
                "log_group_name": "amazon-cloudwatch-agent.log",
                "timezone": "UTC"
              },
              {
                "file_path": "c:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\Logs\\test.log",
                "log_group_name": "test.log",
                "timezone": "Local"
              }
            ]
          },
          "windows_events": {
            "collect_list": [
              {
                "event_name": "System",
                "event_levels": [
                  "INFORMATION",
                  "ERROR"
                ],
                "log_group_name": "System",
                "log_stream_name": "System",
                "event_format": "xml"
              },
              {
                "event_name": "CustomizedName",
                "event_levels": [
                  "WARNING",
                  "ERROR"
                ],
                "log_group_name": "CustomizedLogGroup",
                "log_stream_name": "CustomizedLogStream",
                "event_format": "xml"
              }
            ]
          }
        },
        "log_stream_name": "example_log_stream_name"
      }
    }
```

## Salvate il file di configurazione CloudWatch dell'agente manualmente
<a name="Saving-Agent-Configuration-File"></a>

Se si crea o si modifica manualmente il file di configurazione dell' CloudWatch agente, è possibile assegnargli un nome qualsiasi. Dopo avere creato il file, potrai copiarlo negli altri server in cui desideri eseguire l'agente.

## Caricamento del file di configurazione CloudWatch dell'agente in Systems Manager Parameter Store
<a name="Upload-CloudWatch-Agent-Configuration-To-Parameter-Store"></a>

Se si prevede di utilizzare l'agente SSM per installare l' CloudWatch agente sui server, dopo aver modificato manualmente il file di configurazione dell' CloudWatch agente, è possibile caricarlo in Systems Manager Parameter Store. Per eseguire questa operazione, utilizza il comando `put-parameter` di Systems Manager.

Per poter archiviare il file in Parameter Store, devi utilizzare un ruolo IAM con autorizzazioni sufficienti. 

Usa il seguente comando, dove *parameter name* è il nome da usare per questo file in Parameter Store e *configuration\$1file\$1pathname* indica il percorso e il nome del file di configurazione che hai modificato.

```
aws ssm put-parameter --name "parameter name" --type "String" --value file://configuration_file_pathname
```

# Abilita CloudWatch Application Signals
<a name="CloudWatch-Agent-Application_Signals"></a>

Usa CloudWatch Application Signals per strumentare automaticamente le tue applicazioni AWS in modo da monitorare le prestazioni delle applicazioni rispetto ai tuoi obiettivi aziendali. Application Signals offre una visione unificata e incentrata sulle applicazioni delle applicazioni Java, delle loro dipendenze e dei loro edge. Per ulteriori informazioni, consulta [Segnali applicativi](CloudWatch-Application-Monitoring-Sections.md).

CloudWatch Application Signals sfrutta l' CloudWatch agente per ricevere metriche e tracce dalle applicazioni con strumentazione automatica, applicare facoltativamente regole per ridurre la cardinalità elevata e quindi pubblicare la telemetria elaborata su. CloudWatch È possibile fornire una configurazione personalizzata all' CloudWatch agente specificamente per Application Signals utilizzando il file di configurazione dell'agente. Innanzitutto, la presenza di una `application_signals` sezione sotto la sezione all'interno della `metrics_collected` sezione del `logs` file di configurazione dell'agente specifica che l' CloudWatch agente riceverà le metriche dalle applicazioni con strumentazione automatica. Allo stesso modo, la presenza di una `application_signals` sezione sotto la `traces_collected` sezione all'interno della `traces` sezione del file di configurazione dell'agente specifica che l' CloudWatch agente è abilitato a ricevere tracce dalle applicazioni con strumentazione automatica. Inoltre, puoi facoltativamente inoltrate regole di configurazione personalizzate per ridurre la pubblicazione di telemetria ad alta cardinalità, come indicato in questa sezione.
+ Per i cluster Amazon EKS, quando installi il componente aggiuntivo [Amazon CloudWatch Observability](install-CloudWatch-Observability-EKS-addon.md) EKS, l' CloudWatch agente è abilitato per impostazione predefinita a ricevere sia metriche che tracce dalle tue applicazioni con strumentazione automatica. Se desideri facoltativamente inoltrare regole di configurazione personalizzate, puoi farlo inoltrando una configurazione dell'agente personalizzata al componente aggiuntivo Amazon EKS quando lo crei o lo aggiorni utilizzando una configurazione aggiuntiva, come indicato in [(Facoltativo) Configurazione aggiuntiva](install-CloudWatch-Observability-EKS-addon.md#install-CloudWatch-Observability-EKS-addon-configuration).
+ Per RedHat for OpenShift on AWS (ROSA), quando si installa l'operatore dell' CloudWatch agente utilizzando helm chart, l' CloudWatch agente è abilitato per impostazione predefinita a ricevere sia metriche che tracce dalle applicazioni con strumentazione automatica. Se desideri facoltativamente inoltrare regole di configurazione personalizzate, puoi farlo inoltrando una configurazione dell'agente personalizzata al grafico Helm, come indicato in [(Facoltativo) Configurazione aggiuntiva](install-CloudWatch-Observability-EKS-addon.md#install-CloudWatch-Observability-EKS-addon-configuration).
+ Per altre piattaforme supportate, tra cui Amazon EC2, è necessario avviare l' CloudWatch agente con una configurazione dell'agente che abiliti Application Signals specificando le `application_signals` sezioni e, facoltativamente, eventuali regole di configurazione personalizzate, come descritto più avanti in questa sezione.

Di seguito è riportata una panoramica dei campi del file di configurazione dell' CloudWatch agente relativi ad Application Signals. CloudWatch 
+ `logs`
  + `metrics_collected`— Questo campo può contenere sezioni per specificare che l'agente deve raccogliere i log per abilitare casi d'uso come CloudWatch Application Signals e Container Insights con osservabilità migliorata per Amazon EKS.
**Nota**  
In precedenza, questa sezione veniva utilizzata anche per specificare che l'agente deve raccogliere i log con formato del parametro incorporato. Queste impostazioni non sono più necessarie.
    + `application_signals`(Facoltativo) Specificate che desiderate abilitare CloudWatch Application Signals a ricevere metriche dalle vostre applicazioni con strumentazione automatica per facilitare i segnali applicativi. CloudWatch 
      + `rules` (Facoltativo) Una serie di regole per selezionare parametri e tracce in modo condizionale e applicare azioni per gestire scenari ad alta cardinalità. Ogni regola può contenere i seguenti campi:
        + `rule_name` (Facoltativo) Il nome della regola.
        + `selectors` (Facoltativo) Una serie di corrispondenze tra le dimensioni di parametri e tracce. Ogni selettore deve fornire i campi riportati di seguito:
          + `dimension` Obbligatorio se `selectors` non è vuoto. Questo specifica la dimensione delle metriche e delle tracce da utilizzare come filtro.
          + `match` Obbligatorio se `selectors` non è vuoto. Un modello jolly utilizzato per i valori corrispondenti della dimensione specificata.
        + `action` (Facoltativo) L'operazione da applicare ai parametri e alle tracce che corrispondono ai selettori specificati. `action` deve essere una delle seguenti parole chiave.
          + `keep`Speciifica di inviare solo le metriche e le tracce a, se corrisponde a. CloudWatch `selectors`
          + `drop` Specifica di eliminare il parametro e le tracce che corrispondono ai `selectors`.
          + `replace` Specifica di sostituire le dimensioni dei parametri e delle tracce che corrispondono ai `selectors`. Le sostituzioni sono effettuate in base alla sezione `replacements`.
        + `replacements` Obbligatorio se `action` è `replace`. Una serie di coppie di dimensioni e valori che verranno applicate a parametri e tracce che corrispondono ai `selectors` specificati quando `action` è `replace`. Ogni sostituzione deve fornire i campi riportati di seguito:
          + `target_dimension` Obbligatorio se `replacements` non è vuoto. Specifica la dimensione che deve essere sostituita.
          + `value` Obbligatorio se `replacements` non è vuoto. Il valore con cui sostituire il valore originale di `target_dimension`.
      + `limiter`(Facoltativo) Utilizzate questa sezione per limitare il numero di metriche e dimensioni a cui vengono inviate Application Signals CloudWatch, per ottimizzare i costi.
        + `disabled` (Facoltativo) Se `true`, la funzionalità di limitazione delle metriche è disabilitata. Il valore predefinito è `false`.
        + `drop_threshold`(Facoltativo) Il numero massimo di metriche distinte per servizio in un intervallo di rotazione che possono essere esportate da un agente. CloudWatch L'impostazione predefinita è 500.
        + `rotation_interval` (Facoltativo) L'intervallo in base al quale il limitatore reimposta i record delle metriche per il conteggio delle distinzioni. Viene espresso sotto forma di una stringa con una sequenza di numeri e un suffisso di unità. Le frazioni sono supportate. I suffissi di unità supportati sono`s`,,`m`, `h` `ms``us`, e. `ns` Il valore predefinito è `1h` per un'ora.
        + `log_dropped_metrics`(Facoltativo) Speciifica se l'agente deve scrivere i log nei log dell' CloudWatch agente quando le metriche di Application Signals vengono eliminate. Il valore predefinito è `false`.
**Nota**  
Per attivare questa registrazione, anche il parametro `debug` nella sezione `agent` deve essere impostato su `true`.
+ `traces`
  + `traces_collected`
    + `application_signals` Facoltativo. Specificalo per consentire all' CloudWatchagente di ricevere tracce dalle tue applicazioni con strumentazione automatica per facilitare CloudWatch i segnali applicativi.

**Nota**  
Anche se le regole `application_signals` personalizzate sono specificate nella sezione `metrics_collected` contenuta nella sezione `logs`, si applicano implicitamente anche alla sezione `traces_collected`. Lo stesso insieme di regole si applicherà sia ai parametri che alle tracce.

Quando sono presenti più regole con operazioni diverse, queste si applicano nella seguente sequenza: `keep`, poi `drop`, quindi `replace`.

Di seguito è riportato un esempio di file di configurazione completo CloudWatch dell'agente che applica regole personalizzate.

```
{
  "logs": {
    "metrics_collected": {
      "application_signals": {
        "rules": [
          {
            "rule_name": "keep01",
            "selectors": [
              {
                "dimension": "Service",
                "match": "pet-clinic-frontend"
              },
              {
                "dimension": "RemoteService",
                "match": "customers-service"
              }
            ],
            "action": "keep"
          },
          {
            "rule_name": "drop01",
            "selectors": [
              {
                "dimension": "Operation",
                "match": "GET /api/customer/owners/*"
              }
            ],
            "action": "drop"
          },
          {
            "rule_name": "replace01",
            "selectors": [
              {
                "dimension": "Operation",
                "match": "PUT /api/customer/owners/*/pets/*"
              },
              {
                "dimension": "RemoteOperation",
                "match": "PUT /owners"
              }
            ],
            "replacements": [
              {
                "target_dimension": "Operation",
                "value": "PUT /api/customer/owners/{ownerId}/pets{petId}"
              }
            ],
            "action": "replace"
          }
        ]
      }
    }
  },
  "traces": {
    "traces_collected": {
      "application_signals": {}
    }
  }
}
```

Per il file di configurazione di esempio precedente, le `rules` vengono elaborate come segue:

1. La regola `keep01` assicura che tutte i parametri e le tracce con la dimensione `Service` come `pet-clinic-frontend` e la dimensione `RemoteService` come `customers-service` vengano mantenute.

1. Per i parametri e le tracce elaborati dopo l'applicazione di `keep01`, la regola `drop01` garantisce che i parametri e le tracce con la dimensione `Operation` come `GET /api/customer/owners/*` vengano eliminati.

1. Per i parametri e le tracce elaborati dopo l'applicazione di `drop01`, la regola `replace01` aggiorna i parametri e le tracce che hanno la dimensione `Operation` come `PUT /api/customer/owners/*/pets/*` e la dimensione `RemoteOperation` come `PUT /owners` in modo che la dimensione `Operation` venga ora sostituita da `PUT /api/customer/owners/{ownerId}/pets{petId}`.

Di seguito è riportato un esempio completo di file di CloudWatch configurazione che gestisce la cardinalità in Application Signals modificando il limite delle metriche a 100, abilitando la registrazione delle metriche eliminate e impostando l'intervallo di rotazione su due ore.

```
{
    "logs": {
        "metrics_collected": {
            "application_signals": {
                "limiter": {
                    "disabled": false,
                    "drop_threshold": 100,
                    "rotation_interval": "2h",
                    "log_dropped_metrics": true
                }
            }
        },
        "traces": {
            "traces_collected": {
                "application_signals": {}
            }
        }
    }
}
```

# Raccolta di parametri sulle prestazioni di rete
<a name="CloudWatch-Agent-network-performance"></a>

Le istanze EC2 in esecuzione su Linux che utilizzano Elastic Network Adapter (ENA) pubblicano parametri delle prestazioni di rete. La versione 1.246396.0 e successive dell' CloudWatch agente consentono di importare questi parametri delle prestazioni di rete in. CloudWatch Quando si importano queste metriche delle prestazioni di rete in CloudWatch, vengono addebitate come metriche personalizzate. CloudWatch 

Per ulteriori informazioni sul driver ENA, consulta [Abilitazione delle reti avanzate con Elastic Network Adapter (ENA) sulle istanze Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking-ena.html) e [Abilitazione delle reti avanzate con Elastic Network Adapter (ENA) sulle istanze Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/enhanced-networking-ena.html).

La modalità di impostazione della raccolta dei parametri delle prestazioni di rete varia nei server Linux e nei server Windows.

Nella tabella seguente sono elencati i parametri delle prestazioni di rete abilitati dall'adattatore ENA. Quando l' CloudWatch agente importa queste metriche CloudWatch da istanze Linux, queste vengono anteposte all'inizio di ciascuna `ethtool_` di queste metriche.


| Metrica | Description | 
| --- | --- | 
|  Nome su server Linux: `bw_in_allowance_exceeded` Nome su server Windows: `Aggregate inbound BW allowance exceeded`  |  Il numero di pacchetti in coda è and/or diminuito perché la larghezza di banda aggregata in entrata ha superato il massimo per l'istanza. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](#CloudWatch-Agent-network-performance) Unità: nessuna  | 
|   Nome su server Linux: `bw_out_allowance_exceeded` Nome su server Windows: `Aggregate outbound BW allowance exceeded` |  Il numero di pacchetti in coda è and/or diminuito perché la larghezza di banda aggregata in uscita ha superato il massimo per l'istanza. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](#CloudWatch-Agent-network-performance) Unità: nessuna  | 
|  Nome su server Linux: `conntrack_allowance_available` Nome su server Windows: `Available connection tracking allowance` |  Riporta il numero di connessioni tracciate che possono essere stabilite dall'istanza prima di raggiungere il limite Connessioni tracciate di quel tipo di istanza. Questa metrica è disponibile solo sulle istanze EC2 basate su Nitro che utilizzano il driver Linux per l'adattatore elastico di rete (ENA) a partire dalla versione 2.8.1 e sui computer che utilizzano il driver Windows per l'adattatore elastico di rete (ENA) a partire dalla versione 2.6.0. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione `metrics_collected` dell' CloudWatch agente. Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](#CloudWatch-Agent-network-performance) Unità: nessuna  | 
|  Nome su server Linux: `ena_srd_mode` Nome su server Windows: `ena srd mode` |  Descrive quali funzionalità ENA Express sono abilitate. Per maggiori informazioni su ENA Express, consulta [ Improve network performance with ENA Express on Linux instances](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ena-express.html). I valori sono i seguenti: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-network-performance.html)  | 
|  Nome su server Linux: `ena_srd_eligible_tx_pkts` Nome su server Windows: `ena srd eligible tx pkts` |  Il numero di pacchetti di rete inviati in un determinato periodo di tempo che soddisfano i requisiti AWS Scalable Reliable Datagram (SRD) di idoneità, come indicato di seguito: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-network-performance.html)  | 
|  Nome su server Linux: `ena_srd_tx_pkts` Nome su server Windows: `ena srd tx pkts` |  Il numero di pacchetti SRD trasmessi in un determinato periodo di tempo.  | 
|  Nome su server Linux: `ena_srd_rx_pkts` Nome su server Windows: `ena srd rx pkts` |  Il numero di pacchetti SRD ricevuti in un determinato periodo di tempo.  | 
|  Nome su server Linux: `ena_srd_resource_utilization` Nome su server Windows: `ena srd resource utilization` |  La percentuale di utilizzo massimo della memoria consentita per le connessioni SRD simultanee adoperate dall'istanza.  | 
|  Nome su server Linux: `linklocal_allowance_exceeded` Nome su server Windows: `Link local packet rate allowance exceeded`  |  Il numero di pacchetti accodati o rilasciati perché il PPS del traffico verso i servizi proxy locali ha superato il valore massimo per l'interfaccia di rete. Ciò influisce sul traffico verso il servizio DNS, il servizio di metadati dell'istanza e il servizio di sincronizzazione oraria di Amazon, ma non influisce sul traffico verso i resolver DNS personalizzati. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione `metrics_collected` dell' CloudWatch agente. Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](#CloudWatch-Agent-network-performance) Unità: nessuna  | 
|  Nome su server Linux: `pps_allowance_exceeded` Nome su server Windows: `PPS allowance exceeded` |  Il numero di pacchetti in coda è and/or diminuito perché il PPS bidirezionale ha superato il massimo consentito per l'istanza.  Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](#CloudWatch-Agent-network-performance) Unità: nessuna  | 

## Configurazione di Linux
<a name="CloudWatch-Agent-network-performance-Linux"></a>

Sui server Linux, il *plugin ethtool* consente di importare le metriche delle prestazioni di rete in. CloudWatch

ethtool è un'utility Linux standard in grado di raccogliere statistiche sui dispositivi Ethernet sui server Linux. Le statistiche raccolte dipendono dal dispositivo di rete e dal driver. Esempi di queste statistiche includono `tx_cnt`, `rx_bytes`, `tx_errors` e `align_errors`. Quando utilizzi il plugin ethtool con l' CloudWatch agente, puoi anche importare queste statistiche CloudWatch, insieme alle metriche delle prestazioni di rete EC2 elencate in precedenza in questa sezione.

**Suggerimento**  
Per trovare le statistiche disponibili sul nostro sistema operativo e dispositivo di rete, usa il comando `ethtool –S`.

Quando l' CloudWatch agente importa le metriche in CloudWatch, aggiunge un `ethtool_` prefisso ai nomi di tutte le metriche importate. Quindi viene richiamata la statistica standard di ethtool e `rx_bytes` viene richiamata `ethtool_rx_bytes` la metrica delle prestazioni di rete EC2. CloudWatch `bw_in_allowance_exceeded` `ethtool_bw_in_allowance_exceeded` CloudWatch

Sui server Linux, per importare le metriche ethtool, aggiungi una `ethtool` sezione alla sezione del file di configurazione dell'agente`metrics_collected`. CloudWatch La sezione `ethtool` può includere le seguenti sottosezioni:
+ **interface\$1include**: l'inclusione di questa sezione fa sì che l'agente raccolga i parametri solo dalle interfacce con i nomi elencati in questa sezione. Se si omette questa sezione, i parametri vengono raccolti da tutte le interfacce Ethernet non elencate in `interface_exclude`.

  L'interfaccia ethernet predefinita è `eth0`.
+ **interface\$1exclude**: se si include questa sezione, elencare le interfacce Ethernet da cui non si desidera raccogliere i parametri.

  Il plug-in ethtool ignora sempre le interfacce di loopback.
+ **metrics\$1include** — Questa sezione elenca le metriche in cui importare. CloudWatch Può includere sia le statistiche standard raccolte da ethtool che i parametri di rete ad alta risoluzione di Amazon EC2.

L'esempio seguente visualizza parte del file di configurazione dell'agente. CloudWatch Questa configurazione raccoglie i parametri standard ethtool `rx_packets` e `tx_packets` e i parametri sulle prestazioni rete Amazon EC2 provenienti solo dall'interfaccia `eth1`.

Per ulteriori informazioni sul file di configurazione CloudWatch dell'agente, vedere[Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md).

```
{
"metrics": {
    "append_dimensions": {
      "InstanceId": "${aws:InstanceId}"
    },
    "metrics_collected": {
      "ethtool": {
        "interface_include": [
          "eth1"
        ],
        "metrics_include": [
          "bw_in_allowance_exceeded",
          "bw_out_allowance_exceeded",
          "conntrack_allowance_exceeded",
          "linklocal_allowance_exceeded",
          "pps_allowance_exceeded"
         ]
      }
   }
}
}
```

## Configurazione su Windows
<a name="CloudWatch-Agent-network-performance-Windows"></a>

Sui server Windows, le metriche delle prestazioni di rete sono disponibili tramite Windows Performance Counters, da cui l' CloudWatch agente raccoglie già le metriche. Non è quindi necessario alcun plug-in per raccogliere queste metriche dai server Windows.

Di seguito è riportato un file di configurazione di esempio per raccogliere le metriche delle prestazioni di rete da Windows. Per ulteriori informazioni sulla modifica del file di configurazione dell' CloudWatch agente, vedere. [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md)

```
{
    "metrics": {
        "append_dimensions": {
            "InstanceId": "${aws:InstanceId}"
        },
        "metrics_collected": {
            "ENA Packets Shaping": {
                "measurement": [
                    "Aggregate inbound BW allowance exceeded",
                    "Aggregate outbound BW allowance exceeded",
                    "Connection tracking allowance exceeded",
                    "Link local packet rate allowance exceeded",
                    "PPS allowance exceeded"
                ],
                "metrics_collection_interval": 60,
                "resources": [
                    "*"
                ]
            }
        }
    }
}
```

## Visualizzazione dei parametri sulle prestazioni di rete
<a name="CloudWatch-view-ENA-metrics"></a>

Dopo aver importato le metriche delle prestazioni di rete in CloudWatch, puoi visualizzare queste metriche come grafici di serie temporali e creare allarmi in grado di monitorare queste metriche e avvisarti se superano una soglia specificata. La procedura seguente mostra come visualizzare i parametri ethtool come grafici di serie temporali. Per ulteriori informazioni sull'impostazione degli allarmi, consulta [Utilizzo degli CloudWatch allarmi Amazon](CloudWatch_Alarms.md).

Poiché tutte queste metriche sono contatori aggregati, puoi utilizzare funzioni matematiche metriche, ad esempio per calcolare la frequenza di queste CloudWatch metriche nei grafici o `RATE(METRICS())` utilizzarle per impostare allarmi. Per ulteriori informazioni sulle funzioni matematiche dei parametri, consulta [Utilizzo di espressioni matematiche con metriche CloudWatch](using-metric-math.md)

**Per visualizzare le metriche delle prestazioni di rete nella console CloudWatch**

1. Apri la CloudWatch console all'indirizzo [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Nel riquadro di navigazione, seleziona **Parametri**.

1. Scegli lo spazio dei nomi da utilizzare per i parametri raccolti dall'agente. Per impostazione predefinita, lo è **CWAgent**, ma è possibile che sia stato specificato uno spazio dei nomi diverso nel file di configurazione dell' CloudWatch agente.

1. Scegli una dimensione di parametro (ad esempio, **Per-Instance Metrics** (Parametri per istanza)).

1. La scheda **All metrics** (Tutti i parametri) visualizza tutti i parametri per tale dimensione nello spazio dei nomi. È possibile effettuare le seguenti operazioni:

   1. Per creare il grafico di un parametro, seleziona la casella di controllo accanto al parametro. Per selezionare tutte i parametri, seleziona la casella di controllo nella riga dell'intestazione della tabella.

   1. Per ordinare la tabella, utilizza l'intestazione della colonna.

   1. Per filtrare in base a una risorsa, scegli l'ID della risorsa e quindi **Add to search** (Aggiungi alla ricerca).

   1. Per filtrare in base a un parametro, scegli il nome del parametro e quindi **Add to search** (Aggiungi alla ricerca).

1. (Facoltativo) Per aggiungere questo grafico a una CloudWatch dashboard, scegli **Azioni**, quindi scegli **Aggiungi alla dashboard**.

# Raccogli i parametri dei NVMe driver di Amazon EBS
<a name="Container-Insights-metrics-EBS-Collect"></a>

Per consentire all' CloudWatch agente di raccogliere i parametri dei driver AWS NVMe per i volumi Amazon EBS collegati a un'istanza Amazon EC2, aggiungi la `diskio` sezione all'interno della sezione del file di configurazione dell'`metrics_collected`agente. CloudWatch 

Inoltre, il file binario dell' CloudWatch agente richiede `ioctl` le autorizzazioni per i dispositivi NVMe driver per raccogliere i parametri dai volumi Amazon EBS collegati.

È possibile raccogliere i seguenti parametri. 


| Metrica | Nome della metrica in CloudWatch | Description | 
| --- | --- | --- | 
|  `ebs_total_read_ops` |  `diskio_ebs_total_read_ops`  | Il numero di operazioni di lettura completate. | 
|  `ebs_total_write_ops` |  `diskio_ebs_total_write_ops`  | Il numero di operazioni di scrittura completate. | 
|  `ebs_total_read_bytes` |  `diskio_ebs_total_read_bytes`  | Il numero totale di byte letti trasferiti. | 
|  `ebs_total_write_bytes` |  `diskio_ebs_total_write_bytes`  | Il numero totale di byte scritti trasferiti. | 
|  `ebs_total_read_time` |  `diskio_ebs_total_read_time`  | Il tempo totale impiegato, in microsecondi, da tutte le operazioni di lettura completate. | 
|  `ebs_total_write_time` |  `diskio_ebs_total_write_time`  | Il tempo totale impiegato, in microsecondi, da tutte le operazioni di scrittura completate. | 
|  `ebs_volume_performance_exceeded_iops` |  `diskio_ebs_volume_performance_exceeded_iops`  | Il tempo totale, in microsecondi, durante il quale la richiesta di IOPS ha superato le prestazioni di capacità di IOPS allocata del volume. | 
|  `ebs_volume_performance_exceeded_tp` |  `diskio_ebs_volume_performance_exceeded_tp`  | Il tempo totale, in microsecondi, durante il quale la richiesta di throughput ha superato le prestazioni di throughput allocato del volume. | 
|  `ebs_ec2_instance_performance_exceeded_iops` |  `diskio_ebs_ec2_instance_performance_exceeded_iops`  | Il tempo totale, in microsecondi, durante il quale il volume EBS ha superato le prestazioni di IOPS massime dell'istanza Amazon EC2 collegata. | 
|  `ebs_ec2_instance_performance_exceeded_tp` |  `diskio_ebs_ec2_instance_performance_exceeded_tp`  | Il tempo totale, in microsecondi, durante il quale il volume EBS ha superato le prestazioni di throughput massime dell'istanza Amazon EC2 collegata. | 
|  `ebs_volume_queue_length` |  `diskio_ebs_volume_queue_length`  | Il numero di operazioni di lettura e scrittura in attesa di completamento. | 

# Raccogli i parametri del driver del volume NVMe di Amazon EC2 Instance Store
<a name="Container-Insights-metrics-instance-store-Collect"></a>

Per consentire all' CloudWatch agente di raccogliere i parametri dei driver AWS NVMe, ad esempio di archiviare i volumi collegati a un'istanza Amazon EC2, aggiungi la `diskio` sezione all'interno della sezione del file di configurazione `metrics_collected` dell'agente. CloudWatch 

Inoltre, il file binario dell' CloudWatch agente richiede `ioctl` le autorizzazioni per i dispositivi NVMe driver per raccogliere i parametri dai volumi di Instance Store collegati.

È possibile raccogliere i seguenti parametri. 


| Metrica | Nome della metrica in CloudWatch | Description | 
| --- | --- | --- | 
|  `instance_store_total_read_ops` |  `diskio_instance_store_total_read_ops`  | Il numero di operazioni di lettura completate. | 
|  `instance_store_total_write_ops` |  `diskio_instance_store_total_write_ops`  | Il numero di operazioni di scrittura completate. | 
|  `instance_store_total_read_bytes` |  `diskio_instance_store_total_read_bytes`  | Il numero totale di byte letti trasferiti. | 
|  `instance_store_total_write_bytes` |  `diskio_instance_store_total_write_bytes`  | Il numero totale di byte scritti trasferiti. | 
|  `instance_store_total_read_time` |  `diskio_instance_store_total_read_time`  | Il tempo totale impiegato, in microsecondi, da tutte le operazioni di lettura completate. | 
|  `instance_store_total_write_time` |  `diskio_instance_store_total_write_time`  | Il tempo totale impiegato, in microsecondi, da tutte le operazioni di scrittura completate. | 
|  `instance_store_performance_exceeded_iops` |  `diskio_instance_store_performance_exceeded_iops`  | Il tempo totale, in microsecondi, durante il quale la richiesta di IOPS ha superato le prestazioni di IOPS massime del volume. | 
|  `instance_store_performance_exceeded_tp` |  `diskio_instance_store_performance_exceeded_tp`  | Il tempo totale, in microsecondi, durante il quale la richiesta di throughput ha superato le prestazioni di throughput massimo del volume. | 
|  `instance_store_volume_queue_length` |  `diskio_instance_store_volume_queue_length`  | Il numero di operazioni di lettura e scrittura in attesa di completamento. | 

# Raccolta dei parametri della GPU NVIDIA
<a name="CloudWatch-Agent-NVIDIA-GPU"></a>

 Puoi utilizzare l' CloudWatch agente per raccogliere i parametri della GPU NVIDIA dai server Linux. Per configurarlo, aggiungi una `nvidia_gpu` sezione all'interno della `metrics_collected` sezione del file di configurazione dell' CloudWatch agente. Per ulteriori informazioni, consulta [Sezione Linux](CloudWatch-Agent-Configuration-File-Details.md#CloudWatch-Agent-Linux-section). 

Inoltre, sull'istanza deve essere installato un driver NVIDIA. I driver NVIDIA sono preinstallati su alcune Amazon Machine Images ()AMIs. In caso contrario, il driver può essere installato manualmente. Per ulteriori informazioni, consulta [Installazione dei driver NVIDIA sulle istanze Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-nvidia-driver.html). 

È possibile raccogliere i seguenti parametri. Tutte queste metriche vengono raccolte senza CloudWatch `Unit`, ma è possibile specificare un'unità per ogni metrica aggiungendo un parametro al file di configurazione dell' CloudWatch agente. Per ulteriori informazioni, consulta [Sezione Linux](CloudWatch-Agent-Configuration-File-Details.md#CloudWatch-Agent-Linux-section).


| Metrica | Nome della metrica in CloudWatch | Description | 
| --- | --- | --- | 
|  `utilization_gpu` |  `nvidia_smi_utilization_gpu` |  La percentuale di tempo nell'ultimo periodo di campionamento in cui erano in esecuzione uno o più kernel sulla GPU.  | 
|  `temperature_gpu` |  `nvidia_smi_temperature_gpu` |  La temperatura del core della GPU in gradi Celsius.  | 
|  `power_draw` |  `nvidia_smi_power_draw` |  L'ultimo assorbimento di potenza misurato per l'intera scheda, in watt.  | 
|  `utilization_memory` |  `nvidia_smi_utilization_memory` |  La percentuale di tempo nell'ultimo periodo di campionamento in cui la memoria globale (dispositivo) veniva letta o scritta.  | 
|  `fan_speed` |  `nvidia_smi_fan_speed` |  La percentuale di velocità massima attualmente prevista per il funzionamento della ventola del dispositivo.  | 
|  `memory_total` |  `nvidia_smi_memory_total` |  Memoria totale riportata, in MB.  | 
|  `memory_used` |  `nvidia_smi_memory_used` |  Memoria utilizzata, in MB.  | 
|  `memory_free` |  `nvidia_smi_memory_free` |  Memoria libera, in MB.  | 
|  `pcie_link_gen_current` |  `nvidia_smi_pcie_link_gen_current` |  L'attuale generazione del collegamento.  | 
|  `pcie_link_width_current` |  `nvidia_smi_pcie_link_width_current` |  L'attuale larghezza del collegamento.  | 
|  `encoder_stats_session_count` |  `nvidia_smi_encoder_stats_session_count` |  Il numero attuale di sessioni dell'encoder.  | 
|  `encoder_stats_average_fps` |  `nvidia_smi_encoder_stats_average_fps` |  La media mobile dei fotogrammi di codifica al secondo.  | 
|  `encoder_stats_average_latency` |  `nvidia_smi_encoder_stats_average_latency` |  La media mobile della latenza di codifica in microsecondi.  | 
|  `clocks_current_graphics` |  `nvidia_smi_clocks_current_graphics` |  L'attuale frequenza di clock della scheda video (shader).  | 
|  `clocks_current_sm` |  `nvidia_smi_clocks_current_sm` |  L'attuale frequenza di clock dello Streaming Multiprocessor (SM).  | 
|  `clocks_current_memory` |  `nvidia_smi_clocks_current_memory` |  L'attuale frequenza di clock della memoria.  | 
|  `clocks_current_video` |  `nvidia_smi_clocks_current_video` |  L'attuale frequenza di clock del video (encoder più decoder).  | 

Tutti questi parametri vengono raccolti con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
|  `index` |  Un identificatore univoco per la GPU su questo server. Rappresenta l'indice NVIDIA Management Library (NVML) del dispositivo.  | 
|  `name` |  Il tipo di GPU. Ad esempio, `NVIDIA Tesla A100`  | 
|  `arch` |  L'architettura del server.  | 

# Raccolta delle metriche di Java Management Extensions (JMX)
<a name="CloudWatch-Agent-JMX-metrics"></a>

Puoi utilizzare l' CloudWatch agente per raccogliere i parametri Java Management Extensions (JMX) dalle tue applicazioni Java.

L' CloudWatch agente supporta la raccolta di queste metriche dalle seguenti versioni:
+ JVM 8 e versioni successive
+ Kafka 0.8.2.x e versioni successive
+ Tomcat 9, 10.1 e 11 (beta)

------
#### [ Amazon EC2 ]

**Per abilitare JMX nella tua istanza JVM**  
Affinché l' CloudWatch agente sia in grado di raccogliere le metriche JMX, la JVM dell'applicazione deve collegarsi a una porta utilizzando la proprietà di sistema. `com.sun.management.jmxremote.port`

```
java -Dcom.sun.management.jmxremote.port=port-number -jar example.jar
```

Per ulteriori informazioni e altre configurazioni, consulta la [documentazione di JMX](https://docs.oracle.com/en/java/javase/17/management/monitoring-and-management-using-jmx-technology.html).

------
#### [ Amazon EKS ]

**Per abilitare JMX sui pod delle applicazioni Java**  
Quando si utilizza il componente aggiuntivo CloudWatch Observability EKS, è possibile gestire il modo in cui le metriche JMX sono abilitate con le annotazioni. Per ulteriori informazioni, consulta [Installa l' CloudWatch agente con il componente aggiuntivo Amazon CloudWatch Observability EKS o il grafico Helm](install-CloudWatch-Observability-EKS-addon.md). Per abilitare la raccolta di metriche JMX da un carico di lavoro, aggiungi le seguenti annotazioni al file manifesto del carico di lavoro nella sezione `PodTemplate`:
+ `instrumentation.opentelemetry.io/inject-java: "true"`
+ Uno o più dei seguenti:
  + Per le metriche JVM: `cloudwatch.aws.amazon.com/inject-jmx-jvm: "true"`
  + Per le metriche relative ai broker Kafka: `cloudwatch.aws.amazon.com/inject-jmx-kafka: "true"`
  + Per le metriche relative ai consumatori Kafka: `cloudwatch.aws.amazon.com/inject-jmx-kafka-consumer: "true"`
  + Per le metriche relative ai produttori Kafka: `cloudwatch.aws.amazon.com/inject-jmx-kafka-producer: "true"`
  + Per le metriche Tomcat: `cloudwatch.aws.amazon.com/inject-jmx-tomcat: "true"`

------

Per iniziare a raccogliere le metriche JMX, aggiungi una `jmx` sezione all'interno della sezione del file di configurazione dell'`metrics_collected`agente. CloudWatch La sezione `jmx` può contenere i seguenti campi.
+ `jvm` : Opzionale. Specifica che desideri recuperare le metriche di Java Virtual Machine (JVM) dall'istanza. Per ulteriori informazioni, consulta [Raccolta di metriche di JVM](#CloudWatch-Agent-JVM-metrics). 

  Questa sezione può includere i seguenti campi.
  + `measurement`: specifica l'array di metriche JVM da raccogliere. Per un elenco dei possibili valori da utilizzare, consulta la colonna **Metric** (Parametri) della tabella in [Raccolta di metriche di JVM](#CloudWatch-Agent-JVM-metrics).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, che sostituisce l'unità di misura predefinita per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come elencato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
+ `kafka` : Opzionale. Specifica che desideri recuperare le metriche del broker Apache Kafka dall'istanza. Per ulteriori informazioni, consulta [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics). 

  Questa sezione può includere i seguenti campi.
  + `measurement`: specifica l'array di metriche del broker Kafka da raccogliere. Per un elenco dei valori che è possibile utilizzare in questo campo, consulta la colonna **Metrica** della prima tabella in [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, che sostituisce l'unità di misura predefinita per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
+ `kafka-consumer` : Opzionale. Specifica che desideri recuperare le metriche del consumatore di Apache Kafka dall'istanza. Per ulteriori informazioni, consulta [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics). 

  Questa sezione può includere i seguenti campi.
  + `measurement`: specifica l'array di metriche del broker Kafka da raccogliere. Per un elenco dei valori che è possibile utilizzare in questo campo, consulta la colonna **Metrica** della seconda tabella delle metriche in [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, che sostituisce l'unità di misura predefinita per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
+ `kafka-producer` : Opzionale. Specifica che desideri recuperare le metriche del produttore di Apache Kafka dall'istanza. Per ulteriori informazioni, consulta [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics). 

  Questa sezione può includere i seguenti campi.
  + `measurement`: specifica l'array di metriche del broker Kafka da raccogliere. Per un elenco dei valori che è possibile utilizzare in questo campo, consulta la colonna **Metrica** della terza tabella delle metriche in [Raccolta di metriche di Kafka](#CloudWatch-Agent-Kafka-metrics).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, che sostituisce l'unità di misura predefinita per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)
+ `tomcat` : Opzionale. Specifica che desideri recuperare le metriche di Tomcat dall'istanza. Per ulteriori informazioni, consulta [Raccolta di metriche di Tomcat](#CloudWatch-Agent-Tomcat-metrics). 

  Questa sezione può includere i seguenti campi.
  + `measurement`: specifica l'array di metriche di Tomcat da raccogliere. Per un elenco dei possibili valori da utilizzare, consulta la colonna **Metric** (Parametri) della tabella in [Raccolta di metriche di Tomcat](#CloudWatch-Agent-Tomcat-metrics).

    Nelle voci di ciascun parametro individuale, puoi definire uno o più dei seguenti valori:
    + `rename`: specifica un nome diverso per questo parametro.
    + `unit`: specifica l'unità di misura da utilizzare per questo parametro, che sostituisce l'unità di misura predefinita per il parametro. L'unità specificata deve essere un'unità CloudWatch metrica valida, come indicato nella `Unit` descrizione in. [MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)

La sezione `jmx` può includere anche il campo facoltativo `append_dimensions`:
+ `append_dimensions` Facoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di processo. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campo `append_dimensions`, usato per tutti i tipi di parametri raccolti dall'agente.

**I seguenti campi sono solo per Amazon EC2.**
+ `endpoint`: l'indirizzo a cui il client JMX deve connettersi. Il formato è `ip:port`. Se l'endpoint non è il localhost, è necessario abilitare l'autenticazione tramite password e SSL.
+ `metrics_collection_interval` Facoltativo. Specifica la frequenza di raccolta dei parametri di processo, sostituendo il valore di `metrics_collection_interval` globale specificato nella sezione `agent` del file di configurazione.

  Questo valore è specificato in secondi. Ad esempio, il valore 10 causa la raccolta dei parametri ogni 10 secondi; il valore 300 specifica che i parametri devono essere raccolti ogni 5 minuti.

  Se imposti questo valore al di sotto di 60 secondi, ogni parametro viene raccolto come parametro ad alta risoluzione. Per ulteriori informazioni, consulta [Parametri ad alta risoluzione](publishingMetrics.md#high-resolution-metrics). 

Se JMX è stato abilitato con l'autenticazione tramite password o SSL per l'accesso remoto, puoi utilizzare i seguenti campi.
+ `password_file` : Opzionale. Specifica un file di proprietà Java contenente le chiavi delle password. Il file deve essere di sola lettura e riservato all'utente che esegue l'agente. CloudWatch Se l'autenticazione tramite password è abilitata, è necessaria la stessa coppia di nome utente e password della voce nel file di password JMX fornito nella proprietà `com.sun.management.jmxremote.password.file`. Se SSL è abilitato, è necessario specificare `keystore` e `truststore`, corrispondenti rispettivamente a `javax.net.ssl.keyStorePassword` e `javax.net.ssl.trustStorePassword`.
+ `username`: se l'autenticazione con password è abilitata, specifica il nome utente che corrisponde al nome utente nel file di password fornito.
+ `keystore_path`: se SSL è abilitato, specifica il percorso completo del keystore Java, che consiste in una chiave privata e un certificato per la chiave pubblica. Corrisponde alla proprietà `javax.net.ssl.keyStore`.
+ `keystore_type`: se SSL è abilitato, specifica il tipo di keystore utilizzato. Corrisponde alla proprietà `javax.net.ssl.keyStoreType`.
+ `truststore_path`: se SSL è abilitato, specifica il percorso completo del truststore Java, che deve contenere il certificato pubblico del server JMX remoto. Corrisponde alla proprietà `javax.net.ssl.trustStore`.
+ `truststore_type`: se SSL è abilitato, specifica il tipo di truststore utilizzato. Corrisponde alla proprietà `javax.net.ssl.trustStoreType`.
+ `remote_profile` : Opzionale. I profili remoti JMX supportati sono TLS in combinazione con i profili SASL: `SASL/PLAIN`, `SASL/DIGEST-MD5` e `SASL/CRAM-MD5`. Dovrebbe essere uno dei seguenti: `SASL/PLAIN`, `SASL/DIGEST-MD5`, `SASL/CRAM-MD5`, `TLS SASL/PLAIN`, `TLS SASL/DIGEST-MD5` o `TLS SASL/CRAM-MD5`
+ `realm` : Opzionale. Il realm richiesto dal profilo remoto `SASL/DIGEST-MD5`.
+ `registry_ssl_enabled`: se l'autenticazione del registro RMI è abilitata. Impostato su true se la JVM è stata configurata con `com.sun.management.jmxremote.registry.ssl=true`.
+ `insecure` Imposta il valore su `true` per disattivare la convalida richiesta se l'agente è configurato per un endpoint non localhost.

Di seguito è riportato un esempio della `jmx` sezione del file di configurazione dell' CloudWatch agente.

```
{
  "metrics": {
    "metrics_collected": {
      "jmx": [
        {
          "endpoint": "remotehost:1314",
          "jvm": {
            "measurement": [
              "jvm.memory.heap.init",
              "jvm.memory.nonheap.used"
            ]
          },
          "kafka": {
            "measurement": [
              "kafka.request.count",
              {
                "name": "kafka.message.count",
                "rename": "KAFKA_MESSAGE_COUNT",
                "unit": "Count"
              }
            ]
          },
          "username": "cwagent",
          "keystore_path": "/path/to/keystore",
          "keystore_type": "PKCS12",
          "truststore_path": "/path/to/truststore",
          "truststore_type": "PKCS12"
        },
        {
          "endpoint": "localhost:1315",
          "kafka-producer": {
            "measurement": [
              "kafka.producer.request-rate"
            ]
          },
          "append_dimensions": {
            "service.name": "kafka/1"
          }
        }
      ]
    }
  }
}
```

## Raccolta di metriche di JVM
<a name="CloudWatch-Agent-JVM-metrics"></a>

Puoi utilizzare l' CloudWatch agente per raccogliere i parametri della Java Virtual Machine (JVM). Per configurarlo, aggiungi una `jvm` sezione all'interno della `jmx` sezione del file di configurazione dell' CloudWatchagente.

È possibile raccogliere i seguenti parametri.


| Metrica | Dimensioni | Description | 
| --- | --- | --- | 
|  `jvm.classes.loaded` | [DEFAULT] |  Il numero totale di classi caricate. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.gc.collections.count` | [DEFAULT], `name` |  Il numero totale di rimozioni di oggetti inutili che si sono verificate. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.gc.collections.elapsed` | [DEFAULT], `name` |  Il tempo cumulativo e approssimativo trascorso di rimozione di oggetti inutili. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.heap.init` | [DEFAULT] |  La quantità iniziale di memoria richiesta dalla JVM al sistema operativo per l'heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.heap.max` |  [DEFAULT]  |  La quantità massima di memoria che può essere utilizzata per l'heap. **Unità:** byte **Statistiche significative**: massimo  | 
|  `jvm.memory.heap.used` | [DEFAULT] |  L'attuale utilizzo della memoria heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.heap.committed` | [DEFAULT] |  La quantità di memoria la cui disponibilità è garantita per l'heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.nonheap.init` | [DEFAULT] |  La quantità iniziale di memoria richiesta dalla JVM al sistema operativo per scopi diversi dall'heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.nonheap.max` | [DEFAULT] |  La quantità massima di memoria che può essere utilizzata per scopi diversi dall'heap. **Unità:** byte **Statistiche significative**: massimo  | 
|  `jvm.memory.nonheap.used` | [DEFAULT] |  L'attuale utilizzo della memoria non heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.nonheap.committed` | [DEFAULT] |  La quantità di memoria la cui disponibilità è garantita per scopi diversi dall'heap. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.pool.init` |  [DEFAULT], `name` |  La quantità iniziale di memoria richiesta dalla JVM al sistema operativo per il pool di memoria. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.pool.max` |  [DEFAULT], `name` |  La quantità massima di memoria che può essere utilizzata per il pool di memoria. **Unità:** byte **Statistiche significative**: massimo  | 
|  `jvm.memory.pool.used` |  [DEFAULT], `name` |  L'attuale utilizzo di memoria del pool di memoria. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.memory.pool.committed` |  [DEFAULT], `name` |  La quantità di memoria la cui disponibilità è garantita per il pool di memoria. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `jvm.threads.count` | [DEFAULT] |  Il numero corrente di thread. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 

Le metriche JVM vengono raccolte con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
| [DEFAULT] | Su Amazon EC2, per impostazione predefinita, l'host viene pubblicato anche come dimensione delle metriche raccolte dall' CloudWatch agente, a meno che non si utilizzi il `append_dimensions` campo nella sezione. `metrics` Per ulteriori informazioni, consulta `omit_hostname` nella sezione dell'agente di [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). Su Amazon EKS, per impostazione predefinita, il contesto relativo a k8s viene pubblicato anche come dimensioni delle metriche (`k8s.container.name`, `k8s.deployment.name`, `k8s.namespace.name`, `k8s.node.name`, `k8s.pod.name` e `k8s.replicaset.name`). Questi possono essere filtrati utilizzando il campo `aggregation_dimensions`.  | 
| `name` | Per le metriche `jvm.gc.collections`, il valore è il nome del raccoglitore di oggetti inutili. Per le metriche `jvm.memory.pool`, il valore è il nome del pool di memoria.  | 

## Raccolta di metriche di Kafka
<a name="CloudWatch-Agent-Kafka-metrics"></a>

Puoi utilizzare l' CloudWatch agente per raccogliere i parametri di Apache Kafka. Per configurarlo, aggiungi una o più delle seguenti sottosezioni all'interno della `jmx` sezione del file di configurazione dell'agente. CloudWatch
+ Utilizza una sezione `kafka` per raccogliere le metriche del broker Kafka.
+ Utilizza una sezione `kafka-consumer` per raccogliere le metriche del consumatore di Kafka.
+ Utilizza una sezione `kafka-producer` per raccogliere le metriche del produttore di Kafka.

**Metriche del broker Kafka**

È possibile raccogliere le seguenti metriche per i broker Kafka.


| Metrica | Dimensioni | Description | 
| --- | --- | --- | 
|  `kafka.message.count` | [DEFAULT] |  Il numero di messaggi ping ricevuti dal broker Kafka. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.count` |  [DEFAULT], `type` |  Il numero di richieste ricevute dal broker Kafka. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.failed` | [DEFAULT], `type` |  Il numero di richieste al broker Kafka che hanno portato a un errore. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.time.total` | [DEFAULT], `type` |  Il tempo totale impiegato dal broker Kafka per soddisfare le richieste di servizio. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.time.50p` | [DEFAULT], `type` |  Il 50° percentile impiegato dal broker Kafka per rispondere alle richieste di servizio. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.time.99p` | [DEFAULT], `type` |  Il 99° percentile impiegato dal broker Kafka per rispondere alle richieste di servizio. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.time.avg` | [DEFAULT], `type` |  Il tempo medio impiegato dal broker Kafka per soddisfare le richieste di servizio. **Unità:** millisecondi **Statistiche significative**: media  | 
|  `kafka.network.io` | [DEFAULT], `state` |  Il numero di byte ricevuti o inviati dal broker Kafka. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.purgatory.size` | [DEFAULT], `type` |  Il numero di richieste in attesa in purgatorio. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.partition.count` | [DEFAULT] |  Il numero di partizioni del broker Kafka. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.partition.offline` | [DEFAULT] |  Il numero di partizioni che sono offline. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.partition.under_replicated` | [DEFAULT] |  Il numero di partizioni sottoreplicate. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.isr.operation.count` | [DEFAULT], `operation` |  Il numero di operazioni di riduzione ed espansione delle repliche sincronizzate. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.max.lag` | [DEFAULT] |  Il ritardo massimo nei messaggi tra le repliche del follower e del leader. **Unità:** nessuna **Statistiche significative**: massimo  | 
|  `kafka.controller.active.count` |  [DEFAULT] |  Il numero di controller attivi sul broker. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.leader.election.rate` |  [DEFAULT] |  Il tasso di elezione dei leader. Se questo aumenta, indica gli errori del broker. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.unclean.election.rate` |  [DEFAULT] |  Il tasso di elezione non corretto per i leader. Se questo aumenta, indica gli errori del broker. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.request.queue` |  [DEFAULT] |  La dimensione della coda delle richieste. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.logs.flush.time.count`  |  [DEFAULT] |  Il numero di svuotamenti dei log. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.logs.flush.time.median` |  [DEFAULT] |  Il valore del 50° percentile del numero di svuotamenti dei log. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.logs.flush.time.99p` |  [DEFAULT] |  Il valore del 99° percentile del numero di svuotamenti dei log. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media  | 

Le metriche del broker Kafka vengono raccolte con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
| [DEFAULT] | Su Amazon EC2, per impostazione predefinita, l'host viene pubblicato anche come dimensione delle metriche raccolte dall' CloudWatch agente, a meno che non si utilizzi il `append_dimensions` campo nella sezione. `metrics` Per ulteriori informazioni, consulta `omit_hostname` nella sezione dell'agente di [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). Su Amazon EKS, per impostazione predefinita, il contesto relativo a k8s viene pubblicato anche come dimensioni delle metriche (`k8s.container.name`, `k8s.deployment.name`, `k8s.namespace.name`, `k8s.node.name`, `k8s.pod.name` e `k8s.replicaset.name`). Questi possono essere filtrati utilizzando il campo `aggregation_dimensions`.  | 
| `type` | Il tipo di richiesta. I valori possibili sono `produce`, `fetch`, `fetchconsumer` e `fetchfollower`. | 
| `state` | La direzione del traffico di rete. I valori possibili sono `in` e `out`. | 
| `operation` | Il tipo di operazione per la replica sincronizzata. I valori possibili sono `shrink` e `expand`. | 

**Metriche dei consumatori di Kafka**

È possibile raccogliere le seguenti metriche per i consumatori di Kafka.


| Metrica | Dimensioni | Description | 
| --- | --- | --- | 
|  `kafka.consumer.fetch-rate` | [DEFAULT], `client-id` |  Il numero di richieste di recupero per tutti gli argomenti al secondo. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.consumer.records-lag-max` |  [DEFAULT], `client-id` |  Il numero di messaggi di ritardo del consumatore rispetto al produttore. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.consumer.total.bytes-consumed-rate` |  [DEFAULT], `client-id` |  Il numero medio di byte consumati al secondo per tutti gli argomenti. **Unità:** byte **Statistiche significative**: media  | 
|  `kafka.consumer.total.fetch-size-avg` |  [DEFAULT], `client-id` |  Il numero di byte recuperati per richiesta per tutti gli argomenti. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.consumer.total.records-consumed-rate` |  [DEFAULT], `client-id` |  Il numero medio di record consumati al secondo per tutti gli argomenti. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.consumer.bytes-consumed-rate` |  [DEFAULT], `client-id`, `topic` |  Il numero medio di byte consumati al secondo. **Unità:** byte **Statistiche significative**: media  | 
|  `kafka.consumer.fetch-size-avg` | [DEFAULT], `client-id`, `topic` |  Il numero di byte recuperati per richiesta. **Unità:** byte **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.consumer.records-consumed-rate` | [DEFAULT], `client-id`, `topic` |  Il numero medio di record consumati al secondo. **Unità:** nessuna **Statistiche significative**: media  | 

Le metriche del consumatore Kafka vengono raccolte con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
| [DEFAULT] | Su Amazon EC2, per impostazione predefinita, l'host viene pubblicato anche come dimensione delle metriche raccolte dall' CloudWatch agente, a meno che non si utilizzi il `append_dimensions` campo nella sezione. `metrics` Per ulteriori informazioni, consulta `omit_hostname` nella sezione dell'agente di [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). Su Amazon EKS, per impostazione predefinita, il contesto relativo a k8s viene pubblicato anche come dimensioni delle metriche (`k8s.container.name`, `k8s.deployment.name`, `k8s.namespace.name`, `k8s.node.name`, `k8s.pod.name` e `k8s.replicaset.name`). Questi possono essere filtrati utilizzando il campo `aggregation_dimensions`.  | 
| `client-id` | ID del client. | 
| `topic` | L'argomento Kafka. | 

**Metriche dei produttori di Kafka**

È possibile raccogliere le seguenti metriche per i produttori di Kafka.


| Metrica | Dimensioni | Description | 
| --- | --- | --- | 
|  `kafka.producer.io-wait-time-ns-avg` | [DEFAULT], `client-id` |  Il tempo medio impiegato dal I/O thread in attesa che un socket fosse pronto per la lettura o la scrittura. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.producer.outgoing-byte-rate` | [DEFAULT], `client-id` |  Il numero medio di byte in uscita inviati al secondo a tutti i server. **Unità:** byte **Statistiche significative**: media  | 
|  `kafka.producer.request-latency-avg` | [DEFAULT], `client-id` |  La latenza media delle richieste. **Unità:** millisecondi **Statistiche significative**: media  | 
|  `kafka.producer.request-rate` | [DEFAULT], `client-id` |  Il numero medio di richieste inviate al secondo. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.producer.response-rate` | [DEFAULT], `client-id` |  Il numero di risposte ricevute al secondo. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `kafka.producer.byte-rate` | [DEFAULT], `client-id`, `topic` |  Il numero medio di byte inviati al secondo per un argomento. **Unità:** byte **Statistiche significative**: media  | 
|  `kafka.producer.compression-rate` | [DEFAULT], `client-id`, `topic` |  Il tasso di compressione medio dei batch di record per un argomento. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.producer.record-error-rate` | [DEFAULT], `client-id`, `topic` |  Il numero medio al secondo di invio di record che hanno generato errori per un argomento. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.producer.record-retry-rate` | [DEFAULT], `client-id`, `topic` |  Il numero medio al secondo di record ritentati inviati per un argomento. **Unità:** nessuna **Statistiche significative**: media  | 
|  `kafka.producer.record-send-rate` | [DEFAULT], `client-id`, `topic` |  Il numero medio di record inviati al secondo per un argomento. **Unità:** nessuna **Statistiche significative**: media  | 

Le metriche del produttore Kafka vengono raccolte con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
| [DEFAULT] | Su Amazon EC2, per impostazione predefinita, l'host viene pubblicato anche come dimensione delle metriche raccolte dall' CloudWatch agente, a meno che non si utilizzi il `append_dimensions` campo nella sezione. `metrics` Per ulteriori informazioni, consulta `omit_hostname` nella sezione dell'agente di [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). Su Amazon EKS, per impostazione predefinita, il contesto relativo a k8s viene pubblicato anche come dimensioni delle metriche (`k8s.container.name`, `k8s.deployment.name`, `k8s.namespace.name`, `k8s.node.name`, `k8s.pod.name` e `k8s.replicaset.name`). Questi possono essere filtrati utilizzando il campo `aggregation_dimensions`.  | 
| `client-id` | ID del client. | 
| `topic` | L'argomento Kafka. | 

## Raccolta di metriche di Tomcat
<a name="CloudWatch-Agent-Tomcat-metrics"></a>

Puoi utilizzare l' CloudWatch agente per raccogliere i parametri di Apache Tomcat. Per configurarlo, aggiungi una `tomcat` sezione all'interno della `metrics_collected` sezione del file di configurazione dell' CloudWatch agente.

È possibile raccogliere i seguenti parametri.


| Metrica | Dimensioni | Description | 
| --- | --- | --- | 
|  `tomcat.sessions` | [DEFAULT] |  Il numero di sessioni attive nel dominio. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `tomcat.errors`  | [DEFAULT], `proto_handler` |  Il numero di errori riscontrati. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media  | 
|  `tomcat.processing_time`  | [DEFAULT], `proto_handler` |  Il tempo totale di elaborazione. **Unità:** millisecondi **Statistiche significative:** minimo, massimo, media   | 
|  `tomcat.traffic`  | [DEFAULT], `proto_handler` |  Il numero di byte inviati e ricevuti. **Unità:** byte **Statistiche significative:** minimo, massimo, media   | 
|  `tomcat.threads`  | [DEFAULT], `proto_handler` |  Il numero di thread. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media   | 
|  `tomcat.max_time`  | [DEFAULT], `proto_handler`, `direction` |  Tempo massimo per elaborare una richiesta. **Unità:** millisecondi **Statistiche significative**: massimo   | 
|  `tomcat.request_count`  | [DEFAULT], `proto_handler` |  Il totale delle richieste. **Unità:** nessuna **Statistiche significative:** minimo, massimo, media   | 

Le metriche Tomcat vengono raccolte con le seguenti dimensioni:


| Dimensione | Description | 
| --- | --- | 
| [DEFAULT] | Su Amazon EC2, per impostazione predefinita, l'host viene pubblicato anche come dimensione delle metriche raccolte dall' CloudWatch agente, a meno che non si utilizzi il `append_dimensions` campo nella sezione. `metrics` Per ulteriori informazioni, consulta `omit_hostname` nella sezione dell'agente di [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). Su Amazon EKS, per impostazione predefinita, il contesto relativo a k8s viene pubblicato anche come dimensioni delle metriche (`k8s.container.name`, `k8s.deployment.name`, `k8s.namespace.name`, `k8s.node.name`, `k8s.pod.name` e `k8s.replicaset.name`). Questi possono essere filtrati utilizzando il campo `aggregation_dimensions`.  | 
| `proto_handler` | `proto_handler` è un identificativo per un connettore, fornito nel formato `<protocol>-<type>-<port>` (ad esempio, `http-nio-8080`). | 
| `direction` | La direzione del traffico. I valori possibili sono `received` e `sent`.  | 

# Raccogli metriche e tracce con OpenTelemetry
<a name="CloudWatch-Agent-OpenTelemetry-metrics"></a>

 Puoi raccogliere metriche e tracce dalle tue applicazioni o servizi utilizzando l' CloudWatchagente con il OpenTelemetry protocollo (OTLP), una popolare soluzione open source. Puoi utilizzare qualsiasi OpenTelemetry SDK per inviare metriche e tracce all'agente. CloudWatch Per ulteriori informazioni su ciò che è disponibile OpenTelemetry SDKs, consulta [Lingua OpenTelemetry APIs supportata &](https://opentelemetry.io/docs/languages/). SDKs .

Per raccogliere OpenTelemetry metriche e tracce, aggiungete una `otlp` sezione al file di configurazione dell' CloudWatch agente. La sezione contiene i seguenti campi:
+ `grpc_endpoint` : Opzionale. Speciifica l'indirizzo che l' CloudWatchagente deve utilizzare per ascoltare le OpenTelemetry metriche o le tracce inviate utilizzando chiamate di procedura remota gRPC. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore gRPC nell'SDK. OpenTelemetry Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:4317`.
+ `http_endpoint` : Opzionale. Speciifica l'indirizzo che l' CloudWatch agente deve utilizzare per ascoltare le OpenTelemetry metriche o le tracce inviate tramite HTTP. Il formato è `ip:port`. Questo indirizzo deve corrispondere all'indirizzo impostato per l'esportatore HTTP nell'SDK. OpenTelemetry Se ometti questo campo, verrà utilizzato il valore predefinito `127.0.0.1:4318`.
+ `tls` : Opzionale. Specifica che il server deve essere configurato con TLS.
  + `cert_file`: il percorso del certificato TLS da utilizzare per le connessioni TLS richieste.
  + `key_file`: il percorso della chiave TLS da utilizzare per le connessioni TLS richieste.

La `otlp` sezione può essere inserita in più sezioni all'interno del file di configurazione dell' CloudWatch agente a seconda di come e dove si desidera inviare le metriche e le tracce.

**Importante**  
Ogni sezione `otlp` richiede un endpoint e una porta univoci. Per informazioni dettagliate sulla suddivisione degli endpoint delle metriche e delle tracce, consulta [OTLP Exporter](https://opentelemetry.io/docs/languages/sdk-configuration/otlp-exporter/) Configuration nella documentazione SDK. OpenTelemetry 

Per inviare i parametri al CloudWatch nostro Amazon Managed Service for Prometheus, aggiungi `otlp` la sezione sottostante all'interno della sezione. `metrics_collected` `metrics` Per ulteriori informazioni sull'invio di metriche a destinazioni diverse, consulta[Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md). L'esempio seguente mostra una configurazione che invia metriche a: CloudWatch

**Nota**  
 Se esegui l'agente in ambienti containerizzati e invii telemetria dall'esterno della rete del container dell'agente, assicurati di specificare l'endpoint come `0.0.0.0` anziché l'endpoint predefinito `127.0.0.1`.

```
{
  "metrics": {
    "metrics_collected": {
      "otlp": {
        "grpc_endpoint": "127.0.0.1:4317",
        "http_endpoint": "127.0.0.1:4318"
      }
    }
  }
}
```

Per inviare i parametri ad Amazon CloudWatch Logs utilizzando il formato Embedded metric (EMF), aggiungi la `otlp` sezione sotto `metrics_collected` all'interno della sezione. `logs` Per impostazione predefinita, questo invia i log EMF al gruppo di log `/aws/cwagent` e un flusso di log generato. Per impostazione predefinita, le metriche vengono estratte nel namespace `CWAgent`. L'esempio seguente mostra una configurazione che invia le metriche come log EMF a Logs: CloudWatch 

```
{
  "logs": {
    "metrics_collected": {
      "otlp": {
        "grpc_endpoint": "127.0.0.1:4317",
        "http_endpoint": "127.0.0.1:4318"
      }
    }
  }
}
```

Per inviare tracce a AWS X-Ray, aggiungete la `otlp` sezione sottostante all'interno della sezione`traces_collected`. `traces` L'esempio seguente mostra una configurazione che invia le metriche a X-Ray:

```
{
  "traces": {
    "traces_collected": {
      "otlp": {
        "grpc_endpoint": "127.0.0.1:4317",
        "http_endpoint": "127.0.0.1:4318"
      }
    }
  }
}
```

# Raccolta di parametri dei processi con il plug-in procstat
<a name="CloudWatch-Agent-procstat-process-metrics"></a>

 Il plug-in *procstat* consente di recuperare i parametri dai singoli processi. Il plug-in è supportato su server Linux e server che eseguono una versione supportata di Windows Server. Questa sezione descrive come configurare l' CloudWatchagente per procstat e visualizzare le metriche importate dall' CloudWatch agente. Elenca anche le metriche raccolte da procstat. 

**Nota**  
Il plug-in `procstat` non è supportato per il tipo di avvio Fargate in ambienti Amazon ECS. 

**Topics**
+ [Configurare l'agente per procstat CloudWatch](#CloudWatch-Agent-procstat-configuration)
+ [Parametri raccolti da Procstat](#CloudWatch-Agent-procstat-process-metrics-collected)
+ [Visualizzazione delle metriche di processo importate dall'agente CloudWatch](#CloudWatch-view-procstat-metrics)

## Configurare l'agente per procstat CloudWatch
<a name="CloudWatch-Agent-procstat-configuration"></a>

Per utilizzare il plugin procstat, aggiungi una `procstat` sezione nella sezione del file di configurazione dell'`metrics_collected`agente. CloudWatch Esistono tre modi per specificare i processi da monitorare. Puoi usare solo uno di questi metodi, ma puoi specificare uno o più processi da monitorare.
+ `pid_file`: consente di selezionare i processi in base ai nomi dei file PID creati. 
+ `exe`: consente di selezionare i processi i cui nomi corrispondono alla stringa specificata, utilizzando regole di corrispondenza delle espressioni regolari. La corrispondenza è di tipo "contiene", ovvero se si specifica `agent` come il termine da abbinare, i processi con nomi come `cloudwatchagent` corrispondono al termine. Per ulteriori informazioni, consulta la pagina [Syntax](https://github.com/google/re2/wiki/Syntax).
+ `pattern`: consente di selezionare i processi in base alla righe di comando utilizzate per avviare i processi. Le righe di comando di tutti i processi selezionati corrispondono alla stringa specificata utilizzando regole di corrispondenza delle espressioni regolari. L'intera riga di comando è selezionata, inclusi i parametri e le opzioni utilizzati con il comando.

   La corrispondenza è di tipo "contiene", ovvero se si specifica `-config` come il termine da abbinare, i processi con parametri come `-c` corrispondono al termine. 

L' CloudWatch agente utilizza solo uno di questi metodi, anche se includi più di una delle sezioni precedenti. Se si specifica più di una sezione, l' CloudWatch agente utilizza la `pid_file` sezione se presente. In caso contrario, utilizza la sezione `exe`.

Su Linux server, le stringhe specificate in una sezione `exe` o `pattern` vengono valutate come espressioni regolari. Su server che eseguono Windows Server, queste stringhe vengono valutate come query WMI. Ad esempio, sarebbe `pattern: "%apache%"`. Per ulteriori informazioni, consulta la pagina [LIKE Operator](https://docs.microsoft.com/en-us/windows/desktop/WmiSdk/like-operator).

Indipendentemente dal metodo utilizzato, puoi includere un parametro `metrics_collection_interval` opzionale, che specifica la frequenza in secondi di raccolta di tali parametri. Se non specifichi questo parametro, verrà utilizzato il valore predefinito di 60 secondi.

Negli esempi nelle sezioni seguenti, la sezione `procstat` è la sola inclusa nella sezione `metrics_collected` del file di configurazione dell'agente. I file di configurazione effettivi possono anche includere altre sezioni in `metrics_collected`. Per ulteriori informazioni, consulta [Crea o modifica manualmente il file di configurazione CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md).

### Configurazione con pid\$1file
<a name="CloudWatch-Agent-procstat-configuration-pidfile"></a>

La sezione `procstat` di esempio seguente monitora i processi che creano i file PID `example1.pid` e `example2.pid`. Ogni processo raccogli parametri diversi. I parametri raccolti dal processo che crea `example2.pid` vengono raccolti ogni 10 secondi, mentre i parametri raccolti dal processo `example1.pid` vengono raccolti ogni 60 secondi, ovvero il valore predefinito. 

```
{
    "metrics": {
        "metrics_collected": {
            "procstat": [
                {
                    "pid_file": "/var/run/example1.pid",
                    "measurement": [
                        "cpu_usage",
                        "memory_rss"
                    ]
                },
                {
                    "pid_file": "/var/run/example2.pid",
                    "measurement": [
                        "read_bytes",
                        "read_count",
                        "write_bytes"
                    ],
                    "metrics_collection_interval": 10
                }
            ]
        }
    }
}
```

### Configurazione con exe
<a name="CloudWatch-Agent-procstat-configuration-exe"></a>

La sezione `procstat` di esempio seguente monitora tutti i processi con nomi che corrispondono alle stringhe `agent` o `plugin`. Ogni processo raccoglie gli stessi parametri. 

```
{
    "metrics": {
        "metrics_collected": {
            "procstat": [
                {
                    "exe": "agent",
                    "measurement": [
                        "cpu_time",
                        "cpu_time_system",
                        "cpu_time_user"
                    ]
                },
                {
                    "exe": "plugin",
                    "measurement": [
                        "cpu_time",
                        "cpu_time_system",
                        "cpu_time_user"
                    ]
                }
            ]
        }
    }
}
```

### Configurazione con modello
<a name="CloudWatch-Agent-procstat-configuration-pattern"></a>

La sezione `procstat` di esempio seguente monitora tutti i processi con righe di comando che corrispondono alle stringhe `config` o `-c`. Ogni processo raccoglie gli stessi parametri. 

```
{
    "metrics": {
        "metrics_collected": {
            "procstat": [
                {
                    "pattern": "config",
                    "measurement": [
                        "rlimit_memory_data_hard",
                        "rlimit_memory_data_soft",
                        "rlimit_memory_stack_hard",
                        "rlimit_memory_stack_soft"
                    ]
                },
                {
                    "pattern": "-c",
                    "measurement": [
                        "rlimit_memory_data_hard",
                        "rlimit_memory_data_soft",
                        "rlimit_memory_stack_hard",
                        "rlimit_memory_stack_soft"
                    ]
                }
            ]
        }
    }
}
```

## Parametri raccolti da Procstat
<a name="CloudWatch-Agent-procstat-process-metrics-collected"></a>

La tabella seguente elenca i parametri che puoi raccogliere con il plug-in `procstat`.

L' CloudWatch agente aggiunge `procstat` all'inizio dei seguenti nomi di metriche. La sintassi varia a seconda che la raccolta venga eseguita da un server Linux o da un server che esegue Windows Server. Ad esempio, il parametro `cpu_time` viene visualizzato come `procstat_cpu_time` quando viene raccolto da Linux e come `procstat cpu_time` quando viene raccolto da Windows Server.


| Nome parametro | Disponibile su | Description | 
| --- | --- | --- | 
|  `cpu_time` |  Linux |  Il tempo di utilizzo della CPU. Questo parametro è misurato in centesimi di secondo. Unità: numero  | 
|  `cpu_time_guest` |  Linux |  Il periodo di tempo durante il quale il processo si trova in modalità guest. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_guest_nice` |  Linux |  Il tempo in cui il processo è in esecuzione su un guest nice. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_idle` |  Linux |  Il periodo di tempo durante il quale il processo si trova in modalità di inattività. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_iowait` |  Linux |  Il periodo di attesa del processo per il completamento I/O delle operazioni. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_irq` |  Linux |  Il periodo di tempo durante il quale il processo lavora sulle interruzioni. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_nice` |  Linux |  Il periodo di tempo durante il quale il processo si trova in modalità nice. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_soft_irq` |  Linux |  Il periodo di tempo durante il quale il processo lavora sulle interruzioni del software. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_steal` |  Linux |  Il tempo impiegato per l'esecuzione in altri sistemi operativi durante l'esecuzione in un ambiente virtualizzato. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_stolen` |  Linux, Windows Server |  Il periodo di tempo durante il quale il processo si trova nello stato di *stolen time* (tempo rubato), ovvero il tempo impiegato su altri sistemi operativi in un ambiente virtualizzato. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: nessuna  | 
|  `cpu_time_system` |  Linux, Windows Server, macOS |  Il periodo di tempo durante il quale il processo si trova in modalità di sistema. Questo parametro è misurato in centesimi di secondo. Tipo: Float Unità: numero  | 
|  `cpu_time_user` |  Linux, Windows Server, macOS |  Il periodo di tempo durante il quale il processo si trova in modalità utente. Questo parametro è misurato in centesimi di secondo. Unità: numero  | 
|  `cpu_usage` |  Linux, Windows Server, macOS |  La percentuale di tempo durante il quale il processo è attivo su qualsiasi capacità. Unità: percentuale  | 
|  `memory_data` |  Linux, macOS |  La quantità di memoria utilizzata dal processo per i dati. Unità: byte  | 
|  `memory_locked` |  Linux, macOS |  La quantità di memoria bloccata dal processo. Unità: byte  | 
|  `memory_rss` |  Linux, Windows Server, macOS |  La quantità di memoria reale (set residente) utilizzata dal processo. Unità: byte  | 
|  `memory_stack` |  Linux, macOS |  La quantità di memoria stack utilizzata dal processo. Unità: byte  | 
|  `memory_swap` |  Linux, macOS |  La quantità di memoria swap utilizzata dal processo. Unità: byte  | 
|  `memory_vms` |  Linux, Windows Server, macOS |  La quantità di memoria virtuale utilizzata dal processo. Unità: byte  | 
|  `num_fds` |  Linux |  Il numero di descrittori di file aperti da questo processo. Unità: nessuna  | 
|  `num_threads` |  Linux, Windows, macOS |  Il numero di thread nel processo. Unità: nessuna  | 
|  `pid` |  Linux, Windows Server, macOS |  Identificatore processo (ID). Unità: nessuna  | 
|  `pid_count` |  Linux, Windows Server, macOS |  Il numero di processi IDs associati al processo. Sui server Linux e sui computer macOS il nome completo di questa metrica è `procstat_lookup_pid_count` e su Windows Server è `procstat_lookup pid_count`. Unità: nessuna  | 
|  `read_bytes` |  Linux, Windows Server |  Il numero di byte letti dal processo dai dischi. Unità: byte  | 
|  `write_bytes` |  Linux, Windows Server |  Il numero di byte scritti dal processo sui dischi. Unità: byte  | 
|  `read_count` |  Linux, Windows Server |  Il numero di operazioni di lettura del disco eseguite dal processo. Unità: nessuna  | 
|  `rlimit_realtime_priority_hard` |  Linux |  Il limite hard alla priorità in tempo reale che può essere impostato per questo processo. Unità: nessuna  | 
|  `rlimit_realtime_priority_soft` |  Linux |  Il limite soft alla priorità in tempo reale che può essere impostato per questo processo. Unità: nessuna  | 
|  `rlimit_signals_pending_hard` |  Linux |  Il limite hard al numero massimo di segnali che possono essere messi in coda da questo processo. Unità: nessuna  | 
|  `rlimit_signals_pending_soft` |  Linux |  Il limite soft al numero massimo di segnali che possono essere messi in coda da questo processo. Unità: nessuna  | 
|  `rlimit_nice_priority_hard` |  Linux |  Il limite hard alla priorità nice massima che può essere impostata da questo processo. Unità: nessuna  | 
|  `rlimit_nice_priority_soft` |  Linux |  Il limite soft alla priorità nice massima che può essere impostata da questo processo. Unità: nessuna  | 
|  `rlimit_num_fds_hard` |  Linux |  Il limite del numero massimo di descrittori di file che un processo può avere aperti. Unità: nessuna  | 
|  `rlimit_num_fds_soft` |  Linux |  Il limite soft del numero massimo di descrittori di file che un processo può avere aperti. Unità: nessuna  | 
|  `write_count` |  Linux, Windows Server |  Il numero di operazioni di scrittura del disco eseguite dal processo. Unità: nessuna  | 
|  `involuntary_context_switches` |  Linux |  Il numero di volte in cui si è verificato un passaggio di contesto involontario del processo.  Unità: nessuna  | 
|  `voluntary_context_switches` |  Linux |  Il numero di volte in cui si è verificato un passaggio di contesto volontario del processo.  Unità: nessuna  | 
|  `realtime_priority` |  Linux |  L'utilizzo corrente di priorità real-time per il processo. Unità: nessuna  | 
|  `nice_priority` |  Linux |  L'utilizzo corrente di priorità nice per il processo. Unità: nessuna  | 
|  `signals_pending` |  Linux |  Il numero di segnali in attesa di essere gestiti dal processo. Unità: nessuna  | 
|  `rlimit_cpu_time_hard` |  Linux |  Il limite di risorsa di tempo CPU hard per il processo. Unità: nessuna  | 
|  `rlimit_cpu_time_soft` |  Linux |  Il limite di risorsa di tempo CPU soft per il processo. Unità: nessuna  | 
|  `rlimit_file_locks_hard` |  Linux |  Il limite di risorsa dei blocchi file hard per il processo. Unità: nessuna  | 
|  `rlimit_file_locks_soft` |  Linux |  Il limite di risorsa dei blocchi file soft per il processo. Unità: nessuna  | 
|  `rlimit_memory_data_hard` |  Linux |  Il limite di risorse hard sul processo per memoria utilizzata per i dati. Unità: byte  | 
|  `rlimit_memory_data_soft` |  Linux |  Il limite di risorse soft sul processo per memoria utilizzata per i dati. Unità: byte  | 
|  `rlimit_memory_locked_hard` |  Linux |  Il limite di risorse hard sul processo per memoria bloccata. Unità: byte  | 
|  `rlimit_memory_locked_soft` |  Linux |  Il limite di risorse soft sul processo per memoria bloccata. Unità: byte  | 
|  `rlimit_memory_rss_hard` |  Linux |  Il limite di risorse hard sul processo per memoria fisica. Unità: byte  | 
|  `rlimit_memory_rss_soft` |  Linux |  Il limite di risorse soft sul processo per memoria fisica. Unità: byte  | 
|  `rlimit_memory_stack_hard` |  Linux |  Il limite di risorsa hard sullo stack del processo. Unità: byte  | 
|  `rlimit_memory_stack_soft` |  Linux |  Il limite di risorsa soft sullo stack del processo. Unità: byte  | 
|  `rlimit_memory_vms_hard` |  Linux |  Il limite di risorse hard sul processo per memoria virtuale. Unità: byte  | 
|  `rlimit_memory_vms_soft` |  Linux |  Il limite di risorse soft sul processo per memoria virtuale. Unità: byte  | 

## Visualizzazione delle metriche di processo importate dall'agente CloudWatch
<a name="CloudWatch-view-procstat-metrics"></a>

Dopo aver importato le metriche di processo in CloudWatch, puoi visualizzare queste metriche come grafici di serie temporali e creare allarmi in grado di monitorare queste metriche e avvisarti se superano una soglia specificata. La procedura seguente mostra come visualizzare i parametri del processo come grafico delle serie temporali. Per ulteriori informazioni sull'impostazione degli allarmi, consulta [Utilizzo degli CloudWatch allarmi Amazon](CloudWatch_Alarms.md).

**Per visualizzare le metriche di processo nella console CloudWatch**

1. Apri la CloudWatch console all'indirizzo [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Nel riquadro di navigazione, seleziona **Parametri**.

1. Scegli lo spazio dei nomi da utilizzare per i parametri raccolti dall'agente. Per impostazione predefinita, lo è **CWAgent**, ma è possibile che sia stato specificato uno spazio dei nomi diverso nel file di configurazione dell' CloudWatch agente.

1. Scegli una dimensione di parametro (ad esempio, **Per-Instance Metrics** (Parametri per istanza)).

1. La scheda **All metrics** (Tutti i parametri) visualizza tutti i parametri per tale dimensione nello spazio dei nomi. È possibile effettuare le seguenti operazioni:

   1. Per creare il grafico di un parametro, seleziona la casella di controllo accanto al parametro. Per selezionare tutte i parametri, seleziona la casella di controllo nella riga dell'intestazione della tabella.

   1. Per ordinare la tabella, utilizza l'intestazione della colonna.

   1. Per filtrare per risorsa, scegli l'ID della risorsa e quindi **Add to search** (Aggiungi alla ricerca).

   1. Per filtrare in base a un parametro, scegli il nome del parametro e quindi **Add to search** (Aggiungi alla ricerca).

1. (Facoltativo) Per aggiungere questo grafico a una CloudWatch dashboard, scegli **Azioni**, **Aggiungi alla dashboard**.

# Recupero dei parametri personalizzati con StatsD
<a name="CloudWatch-Agent-custom-metrics-statsd"></a>

Puoi recuperare metriche personalizzate aggiuntive dalle tue applicazioni o servizi utilizzando l' CloudWatch agente con il `StatsD` protocollo. StatSD è una soluzione open source popolare in grado di raccogliere parametri da un'ampia varietà di applicazioni. StatSD è particolarmente utile per la strumentazione dei parametri. Per un esempio di utilizzo congiunto dell' CloudWatch agente e StatSD, consulta [Come monitorare meglio i parametri delle applicazioni personalizzate utilizzando Amazon](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/) Agent. CloudWatch

`StatsD`è supportato sia su server Linux che su server che eseguono Windows Server. CloudWatch supporta il seguente `StatsD` formato:

```
MetricName:value|type|@sample_rate|#tag1:
  value,tag1...
```
+ `MetricName`: una stringa senza virgola, barre, caratteri \$1 o @.
+ `value`: questo può essere un numero intero o float.
+ `type`: specifica `c` per il contatore, `g` per il misuratore, `ms` per il timer, `h` per l'istogramma o `s` per il set.
+ `sample_rate` (facoltativo) Un float compreso tra 0 e 1, inclusi. Utilizza solo per contatore, istogramma e parametri timer. Il valore predefinito è 1 (campionamento 100% del tempo).
+ `tags`— (Facoltativo) Un elenco di tag separati da virgole. `StatsD`i tag sono simili alle dimensioni di. CloudWatch Utilizza i due punti per tag chiave/valore, ad esempio `env:prod`.

Puoi utilizzare qualsiasi `StatsD` client che segue questo formato per inviare le metriche all' CloudWatch agente. Per ulteriori informazioni su alcuni dei `StatsD` client disponibili, vedere la [pagina del client StatSD su](https://github.com/etsy/statsd/wiki#client-implementations). GitHub 

Per raccogliere questi parametri personalizzati, aggiungi una riga `"statsd": {}` alla sezione `metrics_collected` del file di configurazione dell'agente. È possibile aggiungere questa riga manualmente. Se utilizzi la procedura guidata per creare il file di configurazione, è già tutto previsto. Per ulteriori informazioni, consulta la pagina [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

La configurazione predefinita `StatsD` funziona per la maggior parte degli utenti. È possibile aggiungere dei campi facoltativi alla sezione **statsd** del file di configurazione dell'agente in base alle esigenze:
+ `service_address`— L'indirizzo del servizio che l' CloudWatch agente deve ascoltare. Il formato è `ip:port`. Se ometti l'indirizzo IP, l'agente ascolta su tutte le interfacce disponibili. È supportato solo il formato UDP, perciò non devi specificare un prefisso UDP. 

  Il valore predefinito è `:8125`.
+ `metrics_collection_interval`: la frequenza in secondi con cui il plug-in `StatsD` viene eseguito e raccoglie i parametri. Il valore predefinito è 10 secondi. L'intervallo varia tra 1 e 172.000.
+ `metrics_aggregation_interval`— Con quale frequenza, in secondi, CloudWatch aggrega le metriche in singoli punti dati. Il valore predefinito è 60 secondi.

  Ad esempio, se `metrics_collection_interval` è 10 ed `metrics_aggregation_interval` è 60, CloudWatch raccoglie i dati ogni 10 secondi. Al termine di ogni minuto, le sei letture di dati di quel minuto vengono aggregate in un singolo punto dati, che viene inviato a CloudWatch.

  L'intervallo varia tra 0 e 172.000. Impostando `metrics_aggregation_interval` su 0 si disabilita l'aggregazione dei parametri `StatsD`.
+ `allowed_pending_messages`: il numero di messaggi UDP che possono essere messi in coda. Quando la coda è piena, il server StatsD inizia a eliminare i pacchetti. Il valore predefinito è 10000.
+ `drop_original_metrics` : Opzionale. Se utilizzi il campo `aggregation_dimensions` nella sezione `metrics` per raggruppare i parametri in risultati aggregati, per impostazione predefinita l'agente invia sia i parametri aggregati che i parametri originali separati per ogni valore della dimensione. Se non desideri che le metriche originali vengano inviate a CloudWatch, puoi specificare questo parametro con un elenco di metriche. Le metriche specificate insieme a questo parametro non hanno le relative metriche per dimensione riportate. CloudWatch Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi.

Di seguito è riportato un esempio della sezione **statsd** del file di configurazione dell'agente, utilizzando la porta di default e intervalli personalizzati di raccolta e aggregazione.

```
{
   "metrics":{
      "metrics_collected":{
         "statsd":{
            "service_address":":8125",
            "metrics_collection_interval":60,
            "metrics_aggregation_interval":300
         }
      }
   }
}
```

## Visualizzazione delle metriche StatsD importate dall'agente CloudWatch
<a name="CloudWatch-view-statsd-metrics"></a>

Dopo aver importato le metriche StatsD CloudWatch in, puoi visualizzare queste metriche come grafici di serie temporali e creare allarmi in grado di guardare queste metriche e avvisarti se superano una soglia specificata. La procedura seguente mostra come visualizzare le parametri StatsD come grafico di serie temporali. Per ulteriori informazioni sull'impostazione degli allarmi, consulta [Utilizzo degli CloudWatch allarmi Amazon](CloudWatch_Alarms.md).

**Per visualizzare le metriche StatsD nella console CloudWatch**

1. Apri la CloudWatch console all'indirizzo. [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)

1. Nel riquadro di navigazione, seleziona **Parametri**.

1. Scegli lo spazio dei nomi da utilizzare per i parametri raccolti dall'agente. Per impostazione predefinita, lo è **CWAgent**, ma è possibile che sia stato specificato uno spazio dei nomi diverso nel file di configurazione dell' CloudWatch agente.

1. Scegli una dimensione di parametro (ad esempio, **Per-Instance Metrics** (Parametri per istanza)).

1. La scheda **All metrics** (Tutti i parametri) visualizza tutti i parametri per tale dimensione nello spazio dei nomi. È possibile effettuare le seguenti operazioni:

   1. Per creare il grafico di un parametro, seleziona la casella di controllo accanto al parametro. Per selezionare tutte i parametri, seleziona la casella di controllo nella riga dell'intestazione della tabella.

   1. Per ordinare la tabella, utilizza l'intestazione della colonna.

   1. Per filtrare per risorsa, scegli l'ID della risorsa e quindi **Add to search** (Aggiungi alla ricerca).

   1. Per filtrare in base a un parametro, scegli il nome del parametro e quindi **Add to search** (Aggiungi alla ricerca).

1. (Facoltativo) Per aggiungere questo grafico a una CloudWatch dashboard, scegli **Azioni**, **Aggiungi alla dashboard**.

# Recupero dei parametri personalizzati con collectd
<a name="CloudWatch-Agent-custom-metrics-collectd"></a>

Puoi recuperare metriche aggiuntive dalle tue applicazioni o servizi utilizzando l' CloudWatchagente con il protocollo collectd, supportato solo sui server Linux. collectd è una popolare soluzione open source con plugin in grado di raccogliere statistiche di sistema per un'ampia varietà di applicazioni. Combinando le metriche di sistema che l' CloudWatch agente può già raccogliere con le metriche aggiuntive di collectd, puoi monitorare, analizzare e risolvere meglio i tuoi sistemi e le tue applicazioni. Per ulteriori informazioni su collectd, consulta [collectd - Il daemon di raccolta delle statistiche di sistema](https://collectd.org/).

Si utilizza il software collectd per inviare le metriche all'agente. CloudWatch Per le metriche collectd, l' CloudWatch agente funge da server mentre il plugin collectd funge da client.

Il software collectd non è installato automaticamente su ogni server. Su un server che esegue Amazon Linux 2, attieniti alla seguente procedura per installare collectd

```
sudo amazon-linux-extras install collectd
```

Per informazioni sull'installazione di collectd su altri sistemi, consulta la [pagina dei download per collectd.](https://www.collectd.org/download.html) 

Per raccogliere questi parametri personalizzati, aggiungi una riga **"collectd": \$1\$1** alla sezione **metrics\$1collected** del file di configurazione dell'agente. È possibile aggiungere questa riga manualmente. Se utilizzi la procedura guidata per creare il file di configurazione, è già tutto previsto. Per ulteriori informazioni, consulta la pagina [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md).

Sono disponibili anche parametri opzionali. Se utilizzi collectd e non utilizzi `/etc/collectd/auth_file` come **collectd\$1auth\$1file**, è necessario impostare alcune di queste opzioni. 
+ **service\$1address: l'indirizzo** del servizio che l'agente deve ascoltare. CloudWatch Il formato è `"udp://ip:port`. Il valore predefinito è `udp://127.0.0.1:25826`.
+ **name\$1prefix:** Un prefisso da allegare all'inizio del nome di ogni parametro collectd. Il valore predefinito è `collectd_`. La lunghezza massima è 255 caratteri.
+ **collectd\$1security\$1level:** Consente di specificare il livello di protezione per la comunicazione di rete. Il valore predefinito è **encrypt**.

  **encrypt** specifica che vengono accettati solo i dati criptati. **sign** specifica che vengono accettati solo i dati firmati e criptati. **none** specifica che vengono accettati tutti i dati. Se specifichi un valore per **collectd\$1auth\$1file**, i dati criptati vengono decriptati, se possibile.

  Per ulteriori informazioni, consulta [Configurazione del client](https://collectd.org/wiki/index.php/Networking_introduction#Client_setup) e [Possibili interazioni](https://collectd.org/wiki/index.php/Networking_introduction#Possible_interactions) nei Wiki collectd.
+ **collectd\$1auth\$1file** Imposta un file con la mappatura tra nomi utente e password. Queste password vengono utilizzate per verificare le firme e decriptare i pacchetti di rete criptati. Se presenti, i dati firmati vengono verificati e i pacchetti criptati vengono decriptati. In caso contrario, i dati firmati vengono accettati senza controllare la firma e i dati criptati non possono essere decriptati.

  Il valore predefinito è `/etc/collectd/auth_file`.

   Se **collectd\$1security\$1level** è impostato su **none**, questo è facoltativo. Se si è impostato **collectd\$1security\$1level** su `encrypt` o **sign**, è necessario specificare **collectd\$1auth\$1file**.

  Per il formato del file di autorizzazione, ogni riga è un nome utente seguito da due punti e qualsiasi numero di spazi seguiti dalla password. Ad esempio:

  `user1: user1_password`

  `user2: user2_password`
+ **collectd\$1typesdb**: un elenco di uno o più file che contengono le descrizioni dei set di dati. L'elenco deve essere circondato da parentesi, anche se c'è una sola voce nell'elenco. Ogni voce dell'elenco deve essere inclusa nelle virgolette doppie. Se sono presenti più voci, separale con le virgole. Il valore predefinito nei server Linux è `["/usr/share/collectd/types.db"]`. L'impostazione predefinita nei computer macOs dipende dalla versione di collectd. Ad esempio, `["/usr/local/Cellar/collectd/5.12.0/share/collectd/types.db"]`.

  Per ulteriori informazioni, consulta [https://www.collectd.org/documentation/manpages/types.db.html](https://www.collectd.org/documentation/manpages/types.db.html).
+ **metrics\$1aggregation\$1interval:** La frequenza in secondi con cui CloudWatch aggrega i parametri in singoli punti dati. Il valore predefinito è 60 secondi. L'intervallo è compreso tra 0 e 172,000. Se si imposta il valore su 0 si disabilita l'aggregazione dei parametri collectd.

Di seguito è riportato un esempio della sezione collectd di un file di configurazione dell'agente.

```
{
   "metrics":{
      "metrics_collected":{
         "collectd":{
            "name_prefix":"My_collectd_metrics_",
            "metrics_aggregation_interval":120
         }
      }
   }
}
```

## Visualizzazione delle metriche raccolte importate dall'agente CloudWatch
<a name="CloudWatch-view-collectd-metrics"></a>

Dopo aver importato le metriche collectd in CloudWatch, puoi visualizzare queste metriche come grafici di serie temporali e creare allarmi in grado di controllare queste metriche e avvisarti se superano una soglia specificata. La procedura seguente mostra come visualizzare i parametri collectd come grafici delle serie temporali. Per ulteriori informazioni sull'impostazione degli allarmi, consulta [Utilizzo degli CloudWatch allarmi Amazon](CloudWatch_Alarms.md).

**CloudWatch Per visualizzare le metriche raccolte nella console**

1. Apri la CloudWatch console all'indirizzo. [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)

1. Nel riquadro di navigazione, seleziona **Parametri**.

1. Scegli lo spazio dei nomi da utilizzare per i parametri raccolti dall'agente. Per impostazione predefinita, lo è **CWAgent**, ma è possibile che sia stato specificato uno spazio dei nomi diverso nel file di configurazione dell' CloudWatch agente.

1. Scegli una dimensione di parametro (ad esempio, **Per-Instance Metrics** (Parametri per istanza)).

1. La scheda **All metrics** (Tutti i parametri) visualizza tutti i parametri per tale dimensione nello spazio dei nomi. È possibile effettuare le seguenti operazioni:

   1. Per creare il grafico di un parametro, seleziona la casella di controllo accanto al parametro. Per selezionare tutte i parametri, seleziona la casella di controllo nella riga dell'intestazione della tabella.

   1. Per ordinare la tabella, utilizza l'intestazione della colonna.

   1. Per filtrare per risorsa, scegli l'ID della risorsa e quindi **Add to search** (Aggiungi alla ricerca).

   1. Per filtrare in base a un parametro, scegli il nome del parametro e quindi **Add to search** (Aggiungi alla ricerca).

1. (Facoltativo) Per aggiungere questo grafico a una CloudWatch dashboard, scegli **Azioni**, **Aggiungi alla dashboard**.

# Configurare e configurare la raccolta dei parametri Prometheus su istanze Amazon EC2
<a name="CloudWatch-Agent-PrometheusEC2"></a>

Le sezioni seguenti spiegano come installare l' CloudWatch agente con il monitoraggio Prometheus sulle istanze EC2 e come configurare l'agente per lo scraping di destinazioni aggiuntive. Fornisce inoltre esercitazioni per impostare carichi di lavoro di esempio per l'utilizzo dei test con il monitoraggio Prometheus.

Sono supportate sia le istanze Windows sia le istanze Linux.

Per informazioni sui sistemi operativi supportati dall'agente, consulta CloudWatch [Raccogli metriche, log e tracce utilizzando l'agente CloudWatch](Install-CloudWatch-Agent.md)

**Requisiti del gruppo di sicurezza VPC**

Se utilizzi un VPC, si applicano i seguenti requisiti.
+ Le regole di ingresso dei gruppi di sicurezza per i carichi di lavoro Prometheus devono aprire le porte CloudWatch Prometheus all'agente per lo scraping delle metriche di Prometheus tramite l'IP privato.
+ Le regole di uscita del gruppo di sicurezza per l' CloudWatch agente devono consentire all'agente di connettersi alla CloudWatch porta dei carichi di lavoro Prometheus tramite IP privato. 

**Topics**
+ [CloudWatch Fase 1: Installare l'agente](#CloudWatch-Agent-PrometheusEC2-install)
+ [Passaggio 2: scraping delle origini Prometheus e importazione dei parametri](#CloudWatch-Agent-PrometheusEC2-configure)
+ [Esempio: configurare carichi di lavoro Java/JMX di esempio per i test metrici di Prometheus](#CloudWatch-Agent-Prometheus-Java)

## CloudWatch Fase 1: Installare l'agente
<a name="CloudWatch-Agent-PrometheusEC2-install"></a>

Il primo passaggio consiste nell'installare l' CloudWatch agente sull'istanza EC2. Per istruzioni, consulta [Installazione dell'agente CloudWatch](install-CloudWatch-Agent-on-EC2-Instance.md).

## Passaggio 2: scraping delle origini Prometheus e importazione dei parametri
<a name="CloudWatch-Agent-PrometheusEC2-configure"></a>

L' CloudWatch agente con monitoraggio Prometheus necessita di due configurazioni per analizzare le metriche di Prometheus. Una è per le configurazioni standard Prometheus come documentato in [<scrape\$1config>](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config) nella documentazione di Prometheus. L'altra è per la configurazione dell'agente. CloudWatch 

### Configurazione di Prometheus Scrape
<a name="CloudWatch-Agent-PrometheusEC2-configure-scrape"></a>

<scrape\$1config>L' CloudWatch agente supporta le configurazioni scrape standard di Prometheus come documentato nella documentazione di Prometheus.[https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config) È possibile modificare questa sezione per aggiornare le configurazioni già presenti in questo file e aggiungere ulteriori destinazioni di scraping Prometheus. Un file di configurazione di esempio contiene le seguenti righe di configurazione globali:

```
PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus.yaml
global:
  scrape_interval: 1m
  scrape_timeout: 10s
scrape_configs:
- job_name: MY_JOB
  sample_limit: 10000
  file_sd_configs:
    - files: ["C:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\prometheus_sd_1.yaml", "C:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\prometheus_sd_2.yaml"]
```

La sezione `global` specifica i parametri validi in tutti i contesti di configurazione. Servono anche come valori predefiniti per altre sezioni di configurazione. Contiene i seguenti parametri:
+ `scrape_interval`: definisce con quale frequenza recuperare le destinazioni.
+ `scrape_timeout`: definisce quanto tempo attendere prima che una richiesta di scrape scada.

La sezione `scrape_configs` specifica un insieme di destinazioni e parametri che definiscono come eseguire lo scraping. Contiene i seguenti parametri:
+ `job_name`: il nome del processo assegnato ali parametri raschiate per impostazione predefinita.
+ `sample_limit`: limite di scraping sul numero di campioni sottoposti a scraping che verranno accettati.
+ `file_sd_configs`: elenco delle configurazioni di individuazione del servizio file. Legge un insieme di file contenenti un elenco di zero o più configurazioni statiche. La sezione `file_sd_configs` contiene un parametro `files` che definisce i modelli per i file da cui vengono estratti i gruppi di destinazione.

L'agente supporta i seguenti tipi di configurazione di rilevamento dei servizi. CloudWatch 

**`static_config`** Consente di specificare un elenco di destinazioni e un set di etichette comuni per loro. È il modo canonico per specificare destinazioni statiche in una configurazione scrape.

Di seguito è riportato un esempio di configurazione statica per lo scraping dei parametri Prometheus da un host locale. I parametri possono anche essere sottoposti a scraping da altri server se la porta Prometheus è aperta al server in cui viene eseguito l'agente.

```
PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus_sd_1.yaml
- targets:
    - 127.0.0.1:9404
  labels:
    key1: value1
    key2: value2
```

Questo connettore fornisce i seguenti parametri:
+ `targets`: le destinazioni sottoposte a scraping dalla configurazione statica.
+ `labels`: etichette assegnate a tutti i parametri sottoposti a scraping dalle destinazioni.

**`ec2_sd_config`** Consente di recuperare le destinazioni di scraping dalle istanze Amazon EC2. Di seguito è riportato un esempio `ec2_sd_config` per lo scraping dei parametri Prometheus da un elenco di istanze EC2. Le porte Prometheus di queste istanze devono essere aperte sul server su cui viene eseguito l'agente. CloudWatch Il ruolo IAM per l'istanza EC2 in cui viene eseguito l' CloudWatch agente deve includere l'autorizzazione. `ec2:DescribeInstance` Ad esempio, puoi collegare la policy gestita **Amazon EC2 ReadOnlyAccess** all'istanza su cui è in esecuzione l' CloudWatch agente.

```
PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus.yaml
global:
  scrape_interval: 1m
  scrape_timeout: 10s
scrape_configs:
  - job_name: MY_JOB
    sample_limit: 10000
    ec2_sd_configs:
      - region: us-east-1
        port: 9404
        filters:
          - name: instance-id
            values:
              - i-98765432109876543
              - i-12345678901234567
```

Questo connettore fornisce i seguenti parametri:
+ `region`— La AWS regione in cui si trova l'istanza EC2 di destinazione. Se si lascia vuoto, verrà utilizzata la regione dai metadati dell'istanza.
+ `port`: la porta da cui eseguire lo scraping dei parametri.
+ `filters`: filtri facoltativi da utilizzare per filtrare l'elenco delle istanze. Questo esempio filtra in base all'istanza EC2. IDs Per ulteriori criteri in base ai quali puoi filtrare, consulta [ DescribeInstances](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeInstances.html).

### CloudWatch configurazione dell'agente per Prometheus
<a name="CloudWatch-Agent-PrometheusEC2-configure-agent"></a>

Il file di configurazione CloudWatch dell'agente include `prometheus` sezioni in entrambe le sezioni. `logs` `metrics_collected` Include i seguenti parametri.
+ **cluster\$1name**: specifica il nome del cluster da aggiungere come etichetta nell'evento log. Questo campo è facoltativo. 
+ **log\$1group\$1name**: specifica il nome del gruppo di log per i parametri Prometheus.
+ **prometheus\$1config\$1path**: specifica il percorso del file di configurazione di scraping di Prometheus.
+ **emf\$1processor**: specifica la configurazione del processore con formato metrico incorporato. Per ulteriori informazioni sul formato della metrica incorporata, vedere [Incorporamento dei parametri nei log](CloudWatch_Embedded_Metric_Format.md). 

  La sezione `emf_processor` può contenere i parametri seguenti:
  + **metric\$1declaration\$1dedup**: se impostato su true, la funzione di deduplicazione dei parametri con formato metrico incorporato è abilitata.
  + **metric\$1namespace**: specifica lo spazio dei nomi delle metriche per le metriche emesse. CloudWatch 
  + **metric\$1unit**: specifica la mappa metric name:metric unit. Per informazioni sulle unità metriche supportate, [ MetricDatum](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html)consulta.
  + **metric\$1declaration**: sono sezioni che specificano la matrice di log con formato metrico incorporato da generare. Esistono `metric_declaration` sezioni per ogni sorgente Prometheus da cui l'agente importa per impostazione predefinita CloudWatch . Ciascuna di queste sezioni include i seguenti campi:
    + `source_labels` specifica il valore delle etichette controllate dalla riga `label_matcher`.
    + `label_matcher` è un'espressione regolare che controlla il valore delle etichette elencate in `source_labels`. Le metriche corrispondenti sono abilitate per l'inclusione nel formato metrico incorporato inviato a. CloudWatch 
    + `metric_selectors` è un'espressione regolare che specifica le metriche da raccogliere e inviare a CloudWatch.
    + `dimensions` è l'elenco delle etichette da utilizzare come dimensioni CloudWatch per ogni metrica selezionata.

Di seguito è riportato un esempio di configurazione CloudWatch dell'agente per Prometheus.

```
{
   "logs":{
      "metrics_collected":{
         "prometheus":{
            "cluster_name":"prometheus-cluster",
            "log_group_name":"Prometheus",
            "prometheus_config_path":"C:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\prometheus.yaml",
            "emf_processor":{
               "metric_declaration_dedup":true,
               "metric_namespace":"CWAgent-Prometheus",
               "metric_unit":{
                  "jvm_threads_current": "Count",
                  "jvm_gc_collection_seconds_sum": "Milliseconds"
               },
               "metric_declaration":[
                  {
                     "source_labels":[
                        "job", "key2"
                     ],
                     "label_matcher":"MY_JOB;^value2",
                     "dimensions":[
                        [
                           "key1", "key2"
                        ],
                        [
                           "key2"
                        ]
                     ],
                     "metric_selectors":[
                        "^jvm_threads_current$",
                        "^jvm_gc_collection_seconds_sum$"
                     ]
                  }
               ]
            }
         }
      }
   }
}
```

Nell'esempio precedente viene configurata una sezione di formato metrica incorporata da inviare come evento di log se sono soddisfatte le seguenti condizioni:
+ Il valore dell'etichetta `job` è `MY_JOB`
+ Il valore dell'etichetta `key2` è `value2`
+ I parametri Prometheus `jvm_threads_current` e `jvm_gc_collection_seconds_sum` contengono le etichette `job` e `key2`.

L'evento log inviato include la seguente sezione evidenziata.

```
{
    "CloudWatchMetrics": [
        {
            "Metrics": [
                {
                    "Unit": "Count",
                    "Name": "jvm_threads_current"
                },
                {
                    "Unit": "Milliseconds",
                    "Name": "jvm_gc_collection_seconds_sum"
                }
            ],
            "Dimensions": [
                [
                    "key1",
                    "key2"
                ],
                [
                    "key2"
                ]
            ],
            "Namespace": "CWAgent-Prometheus"
        }
    ],
    "ClusterName": "prometheus-cluster",
    "InstanceId": "i-0e45bd06f196096c8",
    "Timestamp": "1607966368109",
    "Version": "0",
    "host": "EC2AMAZ-PDDOIUM",
    "instance": "127.0.0.1:9404",
    "jvm_threads_current": 2,
    "jvm_gc_collection_seconds_sum": 0.006000000000000002,
    "prom_metric_type": "gauge",
    ...
}
```

## Esempio: configurare carichi di lavoro Java/JMX di esempio per i test metrici di Prometheus
<a name="CloudWatch-Agent-Prometheus-Java"></a>

JMX Exporter è un esportatore ufficiale di Prometheus che può recuperare ed esporre JMX mBeans JMX come metriche Prometheus. Per ulteriori informazioni, vedere [prometheus/jmx\$1exporter](https://github.com/prometheus/jmx_exporter).

L' CloudWatch agente può raccogliere metriche Prometheus predefinite da Java Virtual Machine (JVM), Hjava e Tomcat (Catalina), da un esportatore JMX su istanze EC2.

### CloudWatch Fase 1: Installare l'agente
<a name="CloudWatch-Agent-PrometheusJava-install"></a>

Il primo passaggio consiste nell'installare l' CloudWatch agente sull'istanza EC2. Per istruzioni, consulta [Installazione dell'agente CloudWatch](install-CloudWatch-Agent-on-EC2-Instance.md).

### Fase 2: Avvia il carico di lavoro Java/JMX
<a name="CloudWatch-Agent-PrometheusJava-start"></a>

Il passaggio successivo consiste nell'avviare il carico di Java/JMX lavoro.

Per prima cosa, scarica il file jar di JMX Exporter più recente dal seguente percorso:[prometheus/jmx\$1exporter](https://github.com/prometheus/jmx_exporter).

 **Uso del file jar per l'applicazione di esempio**

I comandi di esempio nelle seguenti sezioni usano `SampleJavaApplication-1.0-SNAPSHOT.jar` come file jar. Sostituisci queste parti dei comandi con il file jar per la tua applicazione.

#### Preparazione della configurazione di JMX Exporter
<a name="CloudWatch-Agent-PrometheusJava-start-config"></a>

Il file `config.yaml` è il file di configurazione JMX Exporter. Per ulteriori informazioni, consulta la sezione relativa alla [configurazione](https://github.com/prometheus/jmx_exporter#Configuration) nella documentazione di JMX Exporter.

Ecco una configurazione di esempio per Java e Tomcat.

```
---
lowercaseOutputName: true
lowercaseOutputLabelNames: true

rules:
- pattern: 'java.lang<type=OperatingSystem><>(FreePhysicalMemorySize|TotalPhysicalMemorySize|FreeSwapSpaceSize|TotalSwapSpaceSize|SystemCpuLoad|ProcessCpuLoad|OpenFileDescriptorCount|AvailableProcessors)'
  name: java_lang_OperatingSystem_$1
  type: GAUGE

- pattern: 'java.lang<type=Threading><>(TotalStartedThreadCount|ThreadCount)'
  name: java_lang_threading_$1
  type: GAUGE

- pattern: 'Catalina<type=GlobalRequestProcessor, name=\"(\w+-\w+)-(\d+)\"><>(\w+)'
  name: catalina_globalrequestprocessor_$3_total
  labels:
    port: "$2"
    protocol: "$1"
  help: Catalina global $3
  type: COUNTER

- pattern: 'Catalina<j2eeType=Servlet, WebModule=//([-a-zA-Z0-9+&@#/%?=~_|!:.,;]*[-a-zA-Z0-9+&@#/%=~_|]), name=([-a-zA-Z0-9+/$%~_-|!.]*), J2EEApplication=none, J2EEServer=none><>(requestCount|maxTime|processingTime|errorCount)'
  name: catalina_servlet_$3_total
  labels:
    module: "$1"
    servlet: "$2"
  help: Catalina servlet $3 total
  type: COUNTER

- pattern: 'Catalina<type=ThreadPool, name="(\w+-\w+)-(\d+)"><>(currentThreadCount|currentThreadsBusy|keepAliveCount|pollerThreadCount|connectionCount)'
  name: catalina_threadpool_$3
  labels:
    port: "$2"
    protocol: "$1"
  help: Catalina threadpool $3
  type: GAUGE

- pattern: 'Catalina<type=Manager, host=([-a-zA-Z0-9+&@#/%?=~_|!:.,;]*[-a-zA-Z0-9+&@#/%=~_|]), context=([-a-zA-Z0-9+/$%~_-|!.]*)><>(processingTime|sessionCounter|rejectedSessions|expiredSessions)'
  name: catalina_session_$3_total
  labels:
    context: "$2"
    host: "$1"
  help: Catalina session $3 total
  type: COUNTER

- pattern: ".*"
```

#### Avvio dell'applicazione Java con Prometheus Exporter
<a name="CloudWatch-Agent-PrometheusJava-start-start"></a>

Avvio dell'applicazione di esempio. Questo invierà i parametri Prometheus alla porta 9404. Assicurati di sostituire il punto di ingresso `com.gubupt.sample.app.App` con le informazioni corrette per l'applicazione Java di esempio. 

In Linux immetti il seguente comando.

```
$ nohup java -javaagent:./jmx_prometheus_javaagent-0.14.0.jar=9404:./config.yaml -cp  ./SampleJavaApplication-1.0-SNAPSHOT.jar com.gubupt.sample.app.App &
```

In Windows immetti il seguente comando.

```
PS C:\> java -javaagent:.\jmx_prometheus_javaagent-0.14.0.jar=9404:.\config.yaml -cp  .\SampleJavaApplication-1.0-SNAPSHOT.jar com.gubupt.sample.app.App
```

#### Verifica dell'invio dei parametri Prometheus
<a name="CloudWatch-Agent-PrometheusJava-start-verify"></a>

Verifica che vengano inviati i parametri Prometheus. 

In Linux immetti il seguente comando.

```
$ curl localhost:9404
```

In Windows immetti il seguente comando.

```
PS C:\> curl  http://localhost:9404
```

Esempio di output su Linux:

```
StatusCode        : 200
StatusDescription : OK
Content           : # HELP jvm_classes_loaded The number of classes that are currently loaded in the JVM
                    # TYPE jvm_classes_loaded gauge
                    jvm_classes_loaded 2526.0
                    # HELP jvm_classes_loaded_total The total number of class...
RawContent        : HTTP/1.1 200 OK
                    Content-Length: 71908
                    Content-Type: text/plain; version=0.0.4; charset=utf-8
                    Date: Fri, 18 Dec 2020 16:38:10 GMT

                    # HELP jvm_classes_loaded The number of classes that are currentl...
Forms             : {}
Headers           : {[Content-Length, 71908], [Content-Type, text/plain; version=0.0.4; charset=utf-8], [Date, Fri, 18
                    Dec 2020 16:38:10 GMT]}
Images            : {}
InputFields       : {}
Links             : {}
ParsedHtml        : System.__ComObject
RawContentLength  : 71908
```

### Fase 3: Configurare l' CloudWatch agente per acquisire le metriche di Prometheus
<a name="CloudWatch-Agent-PrometheusJava-agent"></a>

Quindi, configura la configurazione dello scrape Prometheus nel file di configurazione dell'agente. CloudWatch 

**Per impostare la configurazione dello scrape di Prometheus per l'esempio Java/JMX**

1. Impostare la configurazione per `file_sd_config` e `static_config`.

   In Linux immetti il seguente comando.

   ```
   $ cat /opt/aws/amazon-cloudwatch-agent/var/prometheus.yaml
   global:
     scrape_interval: 1m
     scrape_timeout: 10s
   scrape_configs:
     - job_name: jmx
       sample_limit: 10000
       file_sd_configs:
         - files: [ "/opt/aws/amazon-cloudwatch-agent/var/prometheus_file_sd.yaml" ]
   ```

   In Windows immetti il seguente comando.

   ```
   PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus.yaml
   global:
     scrape_interval: 1m
     scrape_timeout: 10s
   scrape_configs:
     - job_name: jmx
       sample_limit: 10000
       file_sd_configs:
         - files: [ "C:\\ProgramData\\Amazon\\AmazonCloudWatchAgent\\prometheus_file_sd.yaml" ]
   ```

1. Impostare la configurazione delle destinazioni di scraping.

   In Linux immetti il seguente comando.

   ```
   $ cat /opt/aws/amazon-cloudwatch-agent/var/prometheus_file_sd.yaml
   - targets:
     - 127.0.0.1:9404
     labels:
       application: sample_java_app
       os: linux
   ```

   In Windows immetti il seguente comando.

   ```
   PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus_file_sd.yaml
   - targets:
     - 127.0.0.1:9404
     labels:
       application: sample_java_app
       os: windows
   ```

1. Impostare la configurazione di scraping di Prometheus tramite `ec2_sc_config`. Sostituisci *your-ec2-instance-id* con l'ID dell'istanza EC2 corretto.

   In Linux immetti il seguente comando.

   ```
   $ cat .\prometheus.yaml
   global:
     scrape_interval: 1m
     scrape_timeout: 10s
   scrape_configs:
     - job_name: jmx
       sample_limit: 10000
       ec2_sd_configs:
         - region: us-east-1
           port: 9404
           filters:
             - name: instance-id
               values:
                 - your-ec2-instance-id
   ```

   In Windows immetti il seguente comando.

   ```
   PS C:\ProgramData\Amazon\AmazonCloudWatchAgent> cat prometheus_file_sd.yaml
   - targets:
     - 127.0.0.1:9404
     labels:
       application: sample_java_app
       os: windows
   ```

1. Configura la configurazione dell' CloudWatch agente. Innanzitutto, passa alla directory corretta. In Linux è `/opt/aws/amazon-cloudwatch-agent/var/cwagent-config.json`. In Windows è `C:\ProgramData\Amazon\AmazonCloudWatchAgent\cwagent-config.json`.

   Di seguito è riportato un esempio di configurazione con le metriche di Java/JHX Prometheus definite. Assicurati di sostituirlo *path-to-Prometheus-Scrape-Configuration-file* con il percorso corretto.

   ```
   {
     "agent": {
       "region": "us-east-1"
     },
     "logs": {
       "metrics_collected": {
         "prometheus": {
           "cluster_name": "my-cluster",
           "log_group_name": "prometheus-test",
           "prometheus_config_path": "path-to-Prometheus-Scrape-Configuration-file",
           "emf_processor": {
             "metric_declaration_dedup": true,
             "metric_namespace": "PrometheusTest",
             "metric_unit":{
               "jvm_threads_current": "Count",
               "jvm_classes_loaded": "Count",
               "java_lang_operatingsystem_freephysicalmemorysize": "Bytes",
               "catalina_manager_activesessions": "Count",
               "jvm_gc_collection_seconds_sum": "Seconds",
               "catalina_globalrequestprocessor_bytesreceived": "Bytes",
               "jvm_memory_bytes_used": "Bytes",
               "jvm_memory_pool_bytes_used": "Bytes"
             },
             "metric_declaration": [
               {
                 "source_labels": ["job"],
                 "label_matcher": "^jmx$",
                 "dimensions": [["instance"]],
                 "metric_selectors": [
                   "^jvm_threads_current$",
                   "^jvm_classes_loaded$",
                   "^java_lang_operatingsystem_freephysicalmemorysize$",
                   "^catalina_manager_activesessions$",
                   "^jvm_gc_collection_seconds_sum$",
                   "^catalina_globalrequestprocessor_bytesreceived$"
                 ]
               },
               {
                 "source_labels": ["job"],
                 "label_matcher": "^jmx$",
                 "dimensions": [["area"]],
                 "metric_selectors": [
                   "^jvm_memory_bytes_used$"
                 ]
               },
               {
                 "source_labels": ["job"],
                 "label_matcher": "^jmx$",
                 "dimensions": [["pool"]],
                 "metric_selectors": [
                   "^jvm_memory_pool_bytes_used$"
                 ]
               }
             ]
           }
         }
       },
       "force_flush_interval": 5
     }
   }
   ```

1. Riavviare l' CloudWatch agente immettendo uno dei seguenti comandi.

   In Linux immetti il seguente comando.

   ```
   sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/var/cwagent-config.json
   ```

   In Windows immetti il seguente comando.

   ```
   & "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:C:\ProgramData\Amazon\AmazonCloudWatchAgent\cwagent-config.json
   ```

### Visualizzazione dei parametri e dei log Prometheus
<a name="CloudWatch-Agent-PrometheusJava-view"></a>

Ora puoi visualizzare le Java/JMX metriche raccolte.

**Per visualizzare le metriche relative al carico di lavoro di esempio Java/JMX**

1. Apri la CloudWatch console all'indirizzo. [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)

1. Nella regione in cui è in esecuzione il cluster, scegli **Metrics** (Parametri) nel pannello di navigazione sinistro. Trova il **PrometheusTest**namespace per visualizzare le metriche.

1. Per visualizzare gli eventi di CloudWatch Logs, scegli **Registra gruppi** nel riquadro di navigazione. Gli eventi sono nel gruppo di log **prometheus-test**.

# Configura i nomi dei servizi e degli ambienti dell' CloudWatch agente per le entità correlate
<a name="CloudWatch-Agent-configure-related-telemetry"></a>

L' CloudWatch agente può inviare metriche e log con dati di entità per supportare il [relativo riquadro Esplora](ExploreRelated.md) nella CloudWatch console. Il nome del servizio o il nome dell'ambiente possono essere configurati dalla configurazione [JSON dell'CloudWatch agente](CloudWatch-Agent-Configuration-File-Details.md).

**Nota**  
La configurazione dell'agente può essere sovrascritta. Per dettagli su come l'agente decide quali dati inviare per le entità correlate, consulta [Utilizzo dell'agente con la relativa telemetria CloudWatch](CloudWatch-Agent-RelatedEntities.md),

Per quanto riguarda le metriche, può essere configurata a livello di agente, metrica o plug-in. Per i log, può essere configurato a livello di agente, di log o di file. Viene sempre utilizzata la configurazione più specifica. Ad esempio, se la configurazione esiste a livello di agente e a livello di metriche, le metriche utilizzeranno la configurazione delle metriche e qualsiasi altra cosa (log) utilizzerà la configurazione dell'agente. L'esempio seguente mostra diversi modi per configurare il nome del servizio e il nome dell'ambiente.

```
{
  "agent": {
    "service.name": "agent-level-service",
    "deployment.environment": "agent-level-environment"
  },
  
  "metrics": {
    "service.name": "metric-level-service",
     "deployment.environment": "metric-level-environment",
     
    "metrics_collected": {
      "statsd": {
        "service.name": "statsd-level-service",
        "deployment.environment": "statsd-level-environment",
      },
      "collectd": {
        "service.name": "collectdd-level-service",
        "deployment.environment": "collectd-level-environment",
      }
    }
    
  },
  
  "logs": {
    "service.name": "log-level-service",
    "deployment.environment": "log-level-environment",
    
    "logs_collected": {
      "files": {
        "collect_list": [
          {
            "file_path": "/opt/aws/amazon-cloudwatch-agent/logs/amazon-cloudwatch-agent.log",
            "log_group_name": "amazon-cloudwatch-agent.log",
            "log_stream_name": "amazon-cloudwatch-agent.log",
            
            "service.name": "file-level-service",
            "deployment.environment": "file-level-environment"
          }
        ]
      }
    }
    
  }
}
```

# Avvio dell'agente CloudWatch
<a name="start-CloudWatch-Agent-on-premise-SSM-onprem"></a>

È possibile avviare l' CloudWatch agente utilizzando Systems Manager Run Command o la riga di comando.

Per informazioni sulla configurazione dell'agente su un sistema su cui è abilitato Linux (SELinux) con funzionalità di sicurezza avanzata, vedere. [Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux](CloudWatch-Agent-SELinux.md)

## Avvia l' CloudWatch agente utilizzando la riga di comando su Amazon EC2
<a name="start-CloudWatch-Agent-EC2-commands-fleet"></a>

Segui questi passaggi per utilizzare la riga di comando per avviare l' CloudWatch agente su Amazon EC2.

Per informazioni sulla configurazione dell'agente su un sistema su cui è abilitato Linux (SELinux) con funzionalità di sicurezza avanzata, consulta. [Configura l' CloudWatch agente con Linux con funzionalità di sicurezza avanzate () SELinux](CloudWatch-Agent-SELinux.md)

**Per utilizzare la riga di comando per avviare l' CloudWatch agente su Amazon EC2**

1. Copiare il file di configurazione dell'agente da utilizzare nel server in cui verrà eseguito l'agente. Annotare il percorso di destinazione della copia.

1. In questo comando, `-a fetch-config` fa sì che l'agente carichi la versione più recente del file di configurazione dell' CloudWatch agente e lo `-s` avvia.

   Inserisci uno dei comandi seguenti. Sostituisci *configuration-file-path* con il percorso del file di configurazione dell'agente. Questo file è chiamato `config.json` se è stato creato con la procedura guidata e potrebbe essere chiamato `amazon-cloudwatch-agent.json` se viene creato manualmente.

   In un'istanza EC2 con Linux in esecuzione, immetti il seguente comando. 

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

   In un server locale con Linux in esecuzione, immetti quanto segue:

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

   Su un'istanza EC2 che esegue Windows Server, inserisci quanto segue dalla PowerShell console:

   ```
   & "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -s -c file:configuration-file-path
   ```

   Su un server locale che esegue Windows Server, inserisci quanto segue dalla PowerShell console:

   ```
   & "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m onPremise -s -c file:configuration-file-path
   ```

## Avvia l' CloudWatch agente su un server locale
<a name="start-CloudWatch-Agent-on-premises"></a>

Segui questi passaggi per avviare l' CloudWatch agente su un server locale.

**Per utilizzare SSM Agent per avviare l' CloudWatch agente su un server locale**

1. Aprire la console Systems Manager all'indirizzo [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

1. Nell'elenco dei **documenti Command**, seleziona il pulsante accanto a **AmazonCloudWatch- ManageAgent**.

1. Nell'area **Targets** (Destinazioni), seleziona l'istanza su cui hai installato l'agente.

1. Nell'elenco **Action** (Operazione), seleziona **configure** (configura).

1. Nell'elenco **Mode** (Modalità), seleziona **onPremise** (Locale).

1. Nella casella **Optional Configuration Location** (Posizione configurazione facoltativa), immetti il nome del file di configurazione dell'agente creato con la procedura guidata e archiviato in Parameter Store.

1. Scegli **Esegui**.

   L'agente viene avviato con la configurazione specificata nel file di configurazione.

**Per utilizzare la riga di comando per avviare l' CloudWatch agente su un server locale**
+ In questo comando, `-a fetch-config` fa sì che l'agente carichi la versione più recente del file di configurazione dell' CloudWatch agente e lo `-s` avvia.

  Linux: se hai salvato il file di configurazione nel Parameter Store di Systems Manager, immetti quanto segue:

  ```
  sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m onPremise -s -c ssm:configuration-parameter-store-name
  ```

  Linux: se hai salvato il file di configurazione nel computer locale, immetti il seguente comando. Sostituisci *configuration-file-path* con il percorso del file di configurazione dell'agente. Questo file è chiamato `config.json` se è stato creato con la procedura guidata e potrebbe essere chiamato `amazon-cloudwatch-agent.json` se viene creato manualmente.

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

  Windows Server: se il file di configurazione dell'agente è stato salvato in Systems Manager Parameter Store, immettere quanto segue dalla PowerShell console:

  ```
  & "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m onPremise -s -c ssm:configuration-parameter-store-name
  ```

  Windows Server: se hai salvato il file di configurazione dell'agente sul computer locale, inserisci quanto segue dalla PowerShell console. Sostituire *configuration-file-path* con il percorso del file di configurazione dell'agente. Questo file è chiamato `config.json` se è stato creato con la procedura guidata e potrebbe essere chiamato `amazon-cloudwatch-agent.json` se viene creato manualmente.

  ```
  & "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m onPremise -s -c file:configuration-file-path
  ```

# Metriche raccolte dall'agente CloudWatch
<a name="metrics-collected-by-CloudWatch-agent"></a>

 Puoi raccogliere metriche dai server installando l' CloudWatch agente sul server. Puoi installare l'agente su istanze Amazon EC2 e sui server on-premises. Puoi anche installare l'agente su computer che eseguono Linux, Windows Server o macOS. Se installi l'agente in un'istanza Amazon EC2, le metriche raccolte vengono aggiunte a quelli abilitate per impostazione predefinita nelle istanze Amazon EC2. Per informazioni sull'installazione dell' CloudWatch agente su un'istanza, consulta[Raccogli metriche, log e tracce utilizzando l'agente CloudWatch](Install-CloudWatch-Agent.md). Puoi utilizzare questa sezione per conoscere le metriche raccolte dall' CloudWatch agente. 

## Metriche raccolte dall' CloudWatch agente sulle istanze di Windows Server
<a name="windows-metrics-enabled-by-CloudWatch-agent"></a>

Su un server che esegue Windows Server, l'installazione dell' CloudWatch agente consente di raccogliere le metriche associate ai contatori in Windows Performance Monitor. I nomi delle CloudWatch metriche per questi contatori vengono creati inserendo uno spazio tra il nome dell'oggetto e il nome del contatore. Ad esempio, al contatore `% Interrupt Time` dell'oggetto `Processor` viene assegnato il nome parametro `Processor % Interrupt Time` in CloudWatch. Per ulteriori informazioni sui contatori di Windows Performance Monitor, consulta la documentazione di Microsoft Windows Server.

Lo spazio dei nomi predefinito per le metriche raccolte dall' CloudWatch agente è`CWAgent`, sebbene sia possibile specificare uno spazio dei nomi diverso quando si configura l'agente.

## Metriche raccolte dall' CloudWatch agente sulle istanze Linux e macOS
<a name="linux-metrics-enabled-by-CloudWatch-agent"></a>

La tabella seguente elenca le metriche che è possibile raccogliere con l' CloudWatch agente su server Linux e computer macOS.


| Metrica | Description | 
| --- | --- | 
|  `cpu_time_active` |  Il periodo di tempo durante il quale la CPU è attiva su qualsiasi capacità. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_guest` |  Il periodo di tempo durante il quale la CPU è in esecuzione su una CPU virtuale per un sistema operativo guest. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_guest_nice` |  Il periodo di tempo durante il quale la CPU è in esecuzione su una CPU virtuale per un sistema operativo guest di bassa priorità e in cui può essere interrotta da altri processi. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_idle` |  Il periodo di tempo durante il quale la CPU è inattiva. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_iowait` |  Il periodo di attesa della CPU per il completamento I/O delle operazioni. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_irq` |  Il periodo di tempo durante il quale la CPU lavora sulle interruzioni. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_nice` |  Il periodo di tempo durante il quale la CPU è in modalità utente con processi di bassa priorità che possono semplicemente essere interrotti da processi di priorità superiore. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_softirq` |  Il periodo di tempo durante il quale la CPU lavora sulle interruzioni del software. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_steal` |  Il periodo di tempo durante il quale la CPU si trova nello stato di *stolen time* (tempo rubato), ovvero il tempo impiegato su altri sistemi operativi in un ambiente virtualizzato. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_system` |  Il periodo di tempo durante il quale la CPU si trova in modalità di sistema. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_time_user` |  Il periodo di tempo durante il quale la CPU si trova in modalità utente. Questo parametro è misurato in centesimi di secondo. Unità: nessuna  | 
|  `cpu_usage_active` |  La percentuale di tempo durante il quale la CPU è attiva su qualsiasi capacità. Unità: percentuale  | 
|  `cpu_usage_guest` |  La percentuale di tempo durante la quale la CPU è in esecuzione su una CPU virtuale per un sistema operativo guest. Unità: percentuale  | 
|  `cpu_usage_guest_nice` |  La percentuale di tempo durante la quale la CPU è in esecuzione su una CPU virtuale per un sistema operativo guest di bassa priorità e che può essere interrotta da altri processi. Unità: percentuale  | 
|  `cpu_usage_idle` |  La percentuale di tempo in cui la CPU è inattiva. Unità: percentuale  | 
|  `cpu_usage_iowait` |  La percentuale di tempo in cui la CPU attende il completamento I/O delle operazioni. Unità: percentuale  | 
|  `cpu_usage_irq` |  La percentuale di tempo durante la quale la CPU lavora sulle interruzioni. Unità: percentuale  | 
|  `cpu_usage_nice` |  La percentuale di tempo durante il quale la CPU è in modalità utente con processi di bassa priorità che possono essere interrotti con facilità da processi di priorità superiore. Unità: percentuale  | 
|  `cpu_usage_softirq` |  La percentuale di tempo durante la quale la CPU lavora sulle interruzioni del software. Unità: percentuale  | 
|  `cpu_usage_steal` |  La percentuale di tempo durante il quale la CPU si trova nello stato di *stolen time*, ovvero il tempo impiegato su altri sistemi operativi in un ambiente virtualizzato. Unità: percentuale  | 
|  `cpu_usage_system` |  La percentuale di tempo durante la quale la CPU si trova in modalità di sistema. Unità: percentuale  | 
|  `cpu_usage_user` |  La percentuale di tempo durante la quale la CPU si trova in modalità utente. Unità: percentuale  | 
|  `disk_free` |  Spazio libero sui dischi. Unità: byte  | 
|  `disk_inodes_free` |  Il numero di nodi dell'indice disponibili sul disco. Unità: numero  | 
|  `disk_inodes_total` |  Il numero totale di nodi dell'indice prenotati sul disco. Unità: numero  | 
|  `disk_inodes_used` |  Il numero di nodi dell'indice usati sul disco. Unità: numero  | 
|  `disk_total` |  Spazio totale dei dischi, inclusi quelli usati e quelli gratuiti. Unità: byte  | 
|  `disk_used` |  Spazio usato sui dischi. Unità: byte  | 
|  `disk_used_percent` |  La percentuale di spazio totale del disco usata. Unità: percentuale  | 
|  `diskio_iops_in_progress` |  Il numero di I/O richieste che sono state inviate al driver del dispositivo ma non sono ancora state completate. Unità: numero  | 
|  `diskio_io_time` |  Il periodo di tempo in cui le I/O richieste sono rimaste in coda sul disco. Unità: millisecondi L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_reads` |  Il numero di operazioni di lettura del disco. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_read_bytes` |  Il numero di byte letti dai dischi. Unità: byte L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_read_time` |  Il periodo di tempo che le richieste di lettura hanno aspettato su dischi. Varie richieste di lettura in attesa contemporaneamente aumentano il numero. Ad esempio, se tutte e 5 le richieste sono in attesa per una media di 100 millisecondi, ne vengono segnalati 500. Unità: millisecondi L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_writes` |  Il numero di operazioni di scrittura del disco. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_write_bytes` |  Il numero di byte scritti sui dischi. Unità: byte L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `diskio_write_time` |  Il periodo di tempo che le richieste di scrittura hanno aspettato sui dischi. Varie richieste di scrittura in attesa contemporaneamente aumentano il numero. Ad esempio, se tutte e 8 le richieste sono in attesa per una media di 1000 millisecondi, ne vengono segnalati 8000. Unità: millisecondi L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `ethtool_bw_in_allowance_exceeded` |  Il numero di pacchetti in coda è and/or diminuito perché la larghezza di banda aggregata in entrata ha superato il massimo consentito per l'istanza. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md) Unità: nessuna  | 
|  `ethtool_bw_out_allowance_exceeded` |  Il numero di pacchetti in coda è and/or diminuito perché la larghezza di banda aggregata in uscita ha superato il massimo per l'istanza. Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md) Unità: nessuna  | 
|  `ethtool_conntrack_allowance_exceeded` |  Il numero di pacchetti accodati o rilasciati perché il rilevamento delle connessioni ha superato il valore massimo per l'istanza e non è stato possibile stabilire nuove connessioni. Ciò può comportare la perdita di pacchetti per il traffico da o verso l'istanza.  Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione `metrics_collected` dell' CloudWatch agente. Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md) Unità: nessuna  | 
|  `ethtool_linklocal_allowance_exceeded` |  Il numero di pacchetti accodati o rilasciati perché il PPS del traffico verso i servizi proxy locali ha superato il valore massimo per l'interfaccia di rete. Ciò influisce sul traffico verso il servizio DNS, il servizio di metadati dell'istanza e il servizio Amazon Time Sync.  Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione `metrics_collected` dell' CloudWatch agente. Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md) Unità: nessuna  | 
|  `ethtool_pps_allowance_exceeded` |  Il numero di pacchetti in coda è and/or diminuito perché il PPS bidirezionale ha superato il massimo consentito per l'istanza.  Questa metrica viene raccolta solo se è stata elencata nella `ethtool` sottosezione della sezione del file di configurazione dell'agente. `metrics_collected` CloudWatch Per ulteriori informazioni, consulta [Raccolta di parametri sulle prestazioni di rete](CloudWatch-Agent-network-performance.md). Unità: nessuna  | 
|  `mem_active` |  La quantità di memoria utilizzata in un modo qualsiasi durante l'ultimo periodo di campionamento. Unità: byte  | 
|  `mem_available` |  La quantità di memoria che è disponibile e che può essere immediatamente determinata durante i processi. Unità: byte  | 
|  `mem_available_percent` |  La percentuale di memoria che è disponibile e che può essere immediatamente determinata durante i processi. Unità: percentuale  | 
|  `mem_buffered` |  La quantità di memoria che viene utilizzata per i buffer. Unità: byte  | 
|  `mem_cached` |  La quantità di memoria che viene utilizzata per le cache dei file. Unità: byte  | 
|  `mem_free` |  La quantità di memoria che non viene utilizzata. Unità: byte  | 
|  `mem_inactive` |  La quantità di memoria non utilizzata in alcun modo durante l'ultimo periodo di campionamento. Unità: byte  | 
|  `mem_shared` |  La quantità di memoria condivisa tra i processi. Unità: byte  | 
|  `mem_total` |  La quantità totale di memoria. Unità: byte  | 
|  `mem_used` |  La quantità di memoria attualmente in uso. Unità: byte  | 
|  `mem_used_percent` |  La percentuale di memoria attualmente in uso. Unità: percentuale  | 
|  `net_bytes_recv` |  Il numero di byte ricevuti dall'interfaccia di rete. Unità: byte L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_bytes_sent` |  Il numero di byte inviati dall'interfaccia di rete. Unità: byte L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_drop_in` |  Il numero di pacchetti ricevuti da questa interfaccia di rete che sono stati interrotti. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_drop_out` |  Il numero di pacchetti trasmessi da questa interfaccia di rete che sono stati interrotti. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_err_in` |  Il numero di errori ricevuti rilevati da questa interfaccia di rete. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_err_out` |  Il numero di errori trasmessi rilevati da questa interfaccia di rete. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_packets_sent` |  Il numero di pacchetti inviati da questa interfaccia di rete. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `net_packets_recv` |  Il numero di pacchetti ricevuti da questa interfaccia di rete. Unità: numero L'unica statistica da utilizzare per questo parametro è `Sum`. Non usare `Average`.  | 
|  `netstat_tcp_close` |  Il numero di connessioni TCP senza stato. Unità: numero  | 
|  `netstat_tcp_close_wait` |  Il numero di connessioni TCP in attesa di una richiesta di terminazione dal cliente. Unità: numero  | 
|  `netstat_tcp_closing` |  Il numero di connessioni TCP in attesa di una richiesta di terminazione con conferma dal client. Unità: numero  | 
|  `netstat_tcp_established` |  Il numero di connessioni TCP stabilite. Unità: numero  | 
|  `netstat_tcp_fin_wait1` |  Il numero di connessioni TCP nello stato `FIN_WAIT1` durante la chiusura di una connessione. Unità: numero  | 
|  `netstat_tcp_fin_wait2` |  Il numero di connessioni TCP nello stato `FIN_WAIT2` durante la chiusura di una connessione. Unità: numero  | 
|  `netstat_tcp_last_ack` |  Il numero di connessioni TCP in attesa dell'invio da parte del client della conferma del messaggio di terminazione della connessione. Questo è l'ultimo stato prima della chiusura della connessione. Unità: numero  | 
|  `netstat_tcp_listen` |  Il numero di porte TCP attualmente in ascolto di una richiesta di connessione. Unità: numero  | 
|  `netstat_tcp_none` |  Il numero di connessioni TCP con clienti inattivi. Unità: numero  | 
|  `netstat_tcp_syn_sent` |  Il numero di connessioni TCP in attesa di una richiesta di connessione corrispondente dopo aver inviato una richiesta di connessione. Unità: numero  | 
|  `netstat_tcp_syn_recv` |  Il numero di connessioni TCP in attesa di una conferma di richiesta di connessione dopo aver inviato e ricevuto una richiesta di connessione. Unità: numero  | 
|  `netstat_tcp_time_wait` |  Il numero di connessioni TCP attualmente in attesa che servono per assicurare al client la ricezione della conferma della sua richiesta di terminazione della connessione. Unità: numero  | 
|  `netstat_udp_socket` |  Il numero delle attuali connessioni UDP. Unità: numero  | 
|  `processes_blocked` |  Il numero di processi che sono bloccati. Unità: numero  | 
|  `processes_dead` |  Il numero di processi "dead", indicati dal codice di stato `X` su Linux. Questo parametro non viene raccolto sui computer macOS. Unità: numero  | 
|  `processes_idle` |  Il numero di processi che sono inattivi (che sono in stato di sospensione per più di 20 secondi). Disponibile solo sulle istanze di FreeBSD. Unità: numero  | 
|  `processes_paging` |  Il numero di processi in fase di paging, indicati dal codice di stato `W` su Linux. Questo parametro non viene raccolto sui computer macOS. Unità: numero  | 
|  `processes_running` |  Il numero di processi in elaborazione, indicati dal codice di stato `R`. Unità: numero  | 
|  `processes_sleeping` |  Il numero di processi in fase di sospensione, indicati dal codice di stato `S`. Unità: numero  | 
|  `processes_stopped` |  Il numero di processi arrestati, indicati dal codice di stato `T`. Unità: numero  | 
|  `processes_total` |  Il numero totale di processi sull'istanza. Unità: numero  | 
|  `processes_total_threads` |  Il numero totale di thread che costituiscono i processi. Questo parametro è disponibile solo per le istanze su Linux. Questo parametro non viene raccolto sui computer macOS. Unità: numero  | 
|  `processes_wait` |  Il numero di processi in fase di paging, indicati dal codice di stato `W` nelle istanze FreeBSD. Questo parametro è disponibile solo sulle istanze di FreeBSD e non è disponibile su Linux, Windows Server o macOS. Unità: numero  | 
|  `processes_zombies` |  Il numero di processi zombie, indicati dal codice di stato `Z`. Unità: numero  | 
|  `swap_free` |  La quantità di spazio di swapping che non viene usata. Unità: byte  | 
|  `swap_used` |  La quantità di spazio di swapping attualmente in uso. Unità: byte  | 
|  `swap_used_percent` |  La percentuale di spazio di swapping attualmente in uso. Unità: percentuale  | 

## Definizioni delle metriche di memoria raccolte dall'agente CloudWatch
<a name="CloudWatch-agent-metrics-definitions"></a>

Quando l' CloudWatch agente raccoglie i parametri di memoria, la fonte è il sottosistema di gestione della memoria dell'host. Ad esempio, il kernel Linux espone i dati gestiti dal sistema operativo in `/proc`. Per quanto riguarda la memoria, i dati si trovano in `/proc/meminfo`. 

Ogni sistema operativo e architettura diversi prevede calcoli diversi delle risorse utilizzate dai processi. Per ulteriori informazioni, consultare le sezioni indicate di seguito.

Durante ogni intervallo di raccolta, l' CloudWatch agente di ogni istanza raccoglie le risorse dell'istanza e calcola le risorse utilizzate da tutti i processi in esecuzione in quell'istanza. Queste informazioni vengono riportate alle metriche. CloudWatch È possibile configurare la lunghezza dell'intervallo di raccolta nel file di configurazione dell' CloudWatch agente. Per ulteriori informazioni, consulta [CloudWatch file di configurazione dell'agente: sezione Agente](CloudWatch-Agent-Configuration-File-Details.md#CloudWatch-Agent-Configuration-File-Agentsection).

L'elenco seguente spiega come vengono definite le metriche di memoria raccolte dall' CloudWatch agente.
+ **Memoria attiva**: la memoria utilizzata da un processo. In altre parole, la memoria utilizzata dalle app attualmente in esecuzione.
+  **Memoria disponibile**: la memoria che può essere assegnata istantaneamente ai processi senza che il sistema vada in swap (nota anche come memoria virtuale). 
+ **Memoria buffer**: l'area dati condivisa da dispositivi hardware o processi di programma che operano a velocità e priorità diverse.
+ **Memoria cache**: archivia le istruzioni e i dati del programma che vengono utilizzati ripetutamente nel funzionamento dei programmi di cui probabilmente la CPU avrà bisogno successivamente.
+ **Memoria libera**: memoria che non viene utilizzata affatto ed è prontamente disponibile. Il sistema può essere utilizzato in modo completamente gratuito quando necessario.
+ **Memoria inattiva**: pagine a cui non è stato effettuato l'accesso "di recente".
+ **Memoria totale**: la dimensione della RAM di memoria fisica effettiva.
+ **Memoria usata**: la memoria attualmente utilizzata da programmi e processi.

**Topics**
+ [Linux: parametri raccolti e calcoli utilizzati](#CloudWatch-agent-metrics-definitions-calculations)
+ [macOS: parametri raccolti e calcoli utilizzati](#CloudWatch-agent-metrics-definitions-calculations)
+ [Windows: parametri raccolti](#CloudWatch-agent-metrics-definitions-calculations)
+ [Esempio: calcolo dei parametri di memoria su Linux](#CloudWatch-agent-metrics-definitions-LinuxExample)

### Linux: parametri raccolti e calcoli utilizzati
<a name="CloudWatch-agent-metrics-definitions-calculations"></a>

Parametri raccolti e unità:
+ Attivo (byte)
+ Disponibile (byte)
+ Percentuale disponibile (percentuale)
+ Memorizzato nel buffer (byte)
+ Memorizzato nella cache (byte)
+ Gratuito (byte)
+ Attivo (byte)
+ Totale (byte)
+ Utilizzato (byte)
+ Percentuale utilizzata (percentuale)

**Memoria utilizzata** = Memoria totale - Memoria libera - Memoria cache - Memoria buffer

**Memoria totale** = Memoria utilizzata \$1 Memoria libera \$1 Memoria cache \$1 Memoria buffer

### macOS: parametri raccolti e calcoli utilizzati
<a name="CloudWatch-agent-metrics-definitions-calculations"></a>

Parametri raccolti e unità:
+ Attivo (byte)
+ Disponibile (byte)
+ Percentuale disponibile (percentuale)
+ Gratuito (byte)
+ Attivo (byte)
+ Totale (byte)
+ Utilizzato (byte)
+ Percentuale utilizzata (percentuale)

**Memoria disponibile** = Memoria libera \$1 Memoria inattiva

**Memoria utilizzata** = Memoria totale - Memoria disponibile

**Memoria totale** = Memoria disponibile \$1 Memoria utilizzata

### Windows: parametri raccolti
<a name="CloudWatch-agent-metrics-definitions-calculations"></a>

I parametri raccolti sugli host Windows sono riportati di seguito. Tutti questi parametri hanno `None` per `Unit`.
+ Byte disponibili
+ Errori di cache/sec
+ Errori di pagina/sec
+ Pagine/sec

Non vengono utilizzati calcoli per le metriche di Windows perché l' CloudWatch agente analizza gli eventi dai contatori delle prestazioni.

### Esempio: calcolo dei parametri di memoria su Linux
<a name="CloudWatch-agent-metrics-definitions-LinuxExample"></a>

Ad esempio, supponiamo che l'immissione del comando **cat /proc/meminfo** su un host Linux mostri i seguenti risultati:

```
MemTotal:       3824388 kB
MemFree:         462704 kB
MemAvailable:   2157328 kB
Buffers:         126268 kB
Cached:         1560520 kB
SReclaimable:    289080 kB>
```

In questo esempio, l' CloudWatch agente raccoglierà i seguenti valori. Tutti i valori che l' CloudWatch agente raccoglie e riporta sono espressi in byte.
+ `mem_total`: 3916173312 byte
+ `mem_available`: 2209103872 byte (\$1 cache) MemFree 
+ `mem_free`: 473808896 byte
+ `mem_cached`: 1893990400 byte (`cached` \$1 `SReclaimable`)
+ `mem_used`: 1419075584 byte (`MemTotal` – (`MemFree` \$1 `Buffers` \$1 (`Cached` \$1 `SReclaimable`)))
+ `mem_buffered`: 129667072 byte
+ `mem_available_percent`: 56,41%
+ `mem_used_percent`: 36,24% (`mem_used` / `mem_total`) \$1 100

# Utilizzo dell'agente con la relativa telemetria CloudWatch
<a name="CloudWatch-Agent-RelatedEntities"></a>

Le metriche e i log inviati CloudWatch possono includere un'entità opzionale per correlare la telemetria. Le entità vengono utilizzate nel pannello [Esplora correlati](ExploreRelated.md). L' CloudWatch agente invia entità con un nome di servizio e un nome di ambiente inclusi.

L'agente sceglie il nome del servizio e il nome dell'ambiente a partire dai seguenti dati.

**Nome del servizio**

L'agente sceglie il nome del servizio tra le seguenti opzioni, in ordine di priorità:
+ **Instrumentazione di Application Signals**: l'agente invia il nome del servizio utilizzato da Application Signals. Questo può essere sovrascritto modificando la variabile di `OTEL_SERVICE_NAME` ambiente utilizzata dalle librerie di OpenTelemetry strumentazione supportate.
+ **CloudWatch configurazione dell'agente**: è possibile [configurare l'agente](CloudWatch-Agent-configure-related-telemetry.md) per utilizzare un nome di servizio specifico. Questa operazione può essere configurata a livello di agente, plug-in, metriche, log o file di log.
+ **Nome del carico di lavoro Kubernetes**: per i carichi di lavoro Kubernetes, l'agente invia il nome del carico di lavoro per il pod corrispondente, nel seguente ordine di priorità.
  + Nome dell'implementazione
  + ReplicaSet nome
  + StatefulSet nome
  + DaemonSet nome
  + CronJob nome
  + Nome del lavoro
  + Nome pod
  + Nome del container
+ **Tag di risorsa dai metadati dell'istanza**: per i carichi di lavoro Amazon EC2, l'agente invia un nome dai tag, nell'ordine seguente.
  + service
  + applicazione
  + app

  È necessario [configurare i metadati dell'istanza](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/work-with-tags-in-IMDS.html#allow-access-to-tags-in-IMDS) affinché l'agente possa accedere ai tag.
+ **Predefinito**: se non viene trovato nessun altro nome di servizio, l'agente invierà il nome `Unknown`.

**Nome dell'ambiente**

L'agente sceglie il nome dell'ambiente tra le seguenti opzioni, in ordine di priorità:
+ **Instrumentazione di Application Signals**: l'agente invia il nome dell'ambiente utilizzato da Application Signals. Questo può essere sovrascritto impostando una variabile di `deployment.environment` ambiente utilizzata dalle librerie di OpenTelemetry strumentazione supportate. Ad esempio, le applicazioni possono impostare la variabile di ambiente `OTEL_RESOURCE_ATTRIBUTES=deployment.environment=MyEnvironment`.
+ **CloudWatch configurazione dell'agente**: è possibile [configurare l'agente](CloudWatch-Agent-configure-related-telemetry.md) per utilizzare un nome di ambiente specifico. Questa operazione può essere configurata a livello di agente, plug-in, metriche, log o file di log.
+ **Nome del cluster e workspace**: per Amazon EKS, `eks:cluster-name/Namespace`. Per Kubernetes nativo in esecuzione su Amazon EC2, `k8s:cluster-name/Namespace`.
+ **Tag di risorse dai metadati dell'istanza**: per i carichi di lavoro Amazon EC2, l'agente può utilizzare il tag `AutoScalingGroup`.

  È necessario [configurare i metadati dell'istanza](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/work-with-tags-in-IMDS.html#allow-access-to-tags-in-IMDS) affinché l'agente possa accedere ai tag.
+ Per impostazione predefinita, alle istanze Amazon EC2 che non eseguono Kubernetes verrà assegnato il nome di ambiente `ec2:default`.

# Scenari comuni con l' CloudWatch agente
<a name="CloudWatch-Agent-common-scenarios"></a>

 Questa sezione fornisce diversi scenari che descrivono come completare le attività di configurazione e personalizzazione comuni per l' CloudWatch agente. 

**Topics**
+ [Esecuzione dell' CloudWatch agente come utente diverso](#CloudWatch-Agent-run-as-user)
+ [In che modo l' CloudWatch agente gestisce i file di registro sparsi](#CloudWatch-Agent-sparse-log-files)
+ [Aggiungere dimensioni personalizzate alle metriche raccolte dall'agente CloudWatch](#CloudWatch-Agent-adding-custom-dimensions)
+ [Aggregazione o aggregazione delle metriche raccolte dall'agente CloudWatch](#CloudWatch-Agent-aggregating-metrics)
+ [Raccolta di metriche ad alta risoluzione con l'agente CloudWatch](#CloudWatch-Agent-collect-high-resolution-metrics)
+ [Invio di parametri, log e tracce a un altro account](#CloudWatch-Agent-send-to-different-AWS-account)
+ [Differenze nel timestamp tra l' CloudWatch agente e l'agente Logs precedente CloudWatch](#CloudWatch-Agent-logs-timestamp-differences)
+ [Aggiungere file di configurazione del collettore OpenTelemetry](#CloudWatch-Agent-appending-OpenTelemetry-config-files)

## Esecuzione dell' CloudWatch agente come utente diverso
<a name="CloudWatch-Agent-run-as-user"></a>

Sui server Linux, CloudWatch viene eseguito come utente root per impostazione predefinita. Per fare in modo che l'agente venga eseguito come utente diverso, utilizzate il `run_as_user` parametro nella `agent` sezione del file di configurazione dell' CloudWatch agente. Questa opzione è disponibile solo su server Linux.

Se stai già eseguendo l'agente con l'utente root e desideri cambiare per utilizzare un utente diverso, utilizza una delle procedure seguenti.

**Per eseguire l' CloudWatch agente come utente diverso su un'istanza EC2 che esegue Linux**

1. Scarica e installa un nuovo pacchetto di CloudWatch agenti. 

1. Creare un nuovo utente Linux o utilizzare l'utente predefinito denominato `cwagent` creato dal file RPM o DEB.

1. Fornire le credenziali per questo utente in uno dei seguenti modi:
   + Se il file `.aws/credentials` esiste nella home directory dell'utente root, è necessario creare un file di credenziali per l'utente che verrà utilizzato per eseguire l' CloudWatch agente. Questo file di credenziali sarà `/home/username/.aws/credentials`. Quindi impostare il valore del parametro `shared_credential_file` in `common-config.toml` sul nome percorso del file delle credenziali. Per ulteriori informazioni, consulta [Installa l' CloudWatch agente utilizzando AWS Systems Manager](installing-cloudwatch-agent-ssm.md).
   + Se il file `.aws/credentials` non esiste nella directory home dell'utente root, puoi procedere in uno dei seguenti modi:
     + Creare un file delle credenziali per l'utente che si prevede di utilizzare per eseguire l'agente CloudWatch. Questo file di credenziali sarà `/home/username/.aws/credentials`. Quindi impostare il valore del parametro `shared_credential_file` in `common-config.toml` sul nome percorso del file delle credenziali. Per ulteriori informazioni, consulta [Installa l' CloudWatch agente utilizzando AWS Systems Manager](installing-cloudwatch-agent-ssm.md).
     + Anziché creare un file di credenziali, collega un ruolo IAM all'istanza. L'agente usa questo ruolo come provider di credenziali.

1. Nel file di configurazione dell' CloudWatch agente, aggiungete la seguente riga nella `agent` sezione:

   ```
   "run_as_user": "username"
   ```

   Apportare altre modifiche al file di configurazione in base alle esigenze. Per ulteriori informazioni, consulta [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md)

1. Concedi all'utente le autorizzazioni richieste. L'utente deve disporre delle autorizzazioni Read (r) per i file di log da raccogliere e deve disporre dell'autorizzazione Execute (x) per ogni directory nel percorso dei file di log.

1. Avviare l'agente con il file di configurazione modificato.

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

**Per eseguire l' CloudWatch agente come utente diverso su un server locale che esegue Linux**

1. Scarica e installa un nuovo pacchetto di CloudWatch agenti. 

1. Creare un nuovo utente Linux o utilizzare l'utente predefinito denominato `cwagent` creato dal file RPM o DEB.

1. Archiviare le credenziali di questo utente in un percorso a cui l'utente può accedere, ad esempio `/home/username/.aws/credentials`.

1. Impostare il valore del parametro `shared_credential_file` in `common-config.toml` sul nome percorso del file delle credenziali. Per ulteriori informazioni, consulta [Installa l' CloudWatch agente utilizzando AWS Systems Manager](installing-cloudwatch-agent-ssm.md).

1. Nel file di configurazione CloudWatch dell'agente, aggiungi la seguente riga nella `agent` sezione:

   ```
   "run_as_user": "username"
   ```

   Apportare altre modifiche al file di configurazione in base alle esigenze. Per ulteriori informazioni, consulta [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md)

1. Concedi all'utente le autorizzazioni richieste. L'utente deve disporre delle autorizzazioni Read (r) per i file di log da raccogliere e deve disporre dell'autorizzazione Execute (x) per ogni directory nel percorso dei file di log.

1. Avviare l'agente con il file di configurazione modificato.

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

## In che modo l' CloudWatch agente gestisce i file di registro sparsi
<a name="CloudWatch-Agent-sparse-log-files"></a>

I file sparse sono file con blocchi vuoti e contenuti reali. Un file sparse utilizza lo spazio su disco in modo più efficiente scrivendo brevi informazioni che rappresentano i blocchi vuoti sul disco al posto dei byte nulli effettivi che costituiscono il blocco. Ciò rende la dimensione effettiva di un file sparse in genere molto più piccola della sua dimensione apparente.

Tuttavia, l' CloudWatch agente non tratta i file sparsi in modo diverso rispetto ai file normali. Quando l'agente legge un file sparse, i blocchi vuoti vengono trattati come blocchi "reali" con i byte nulli. Per questo motivo, l' CloudWatch agente pubblica tanti byte quanti sono le dimensioni apparenti di un file sparso. CloudWatch 

La configurazione dell' CloudWatch agente per la pubblicazione di un file sparso può comportare CloudWatch costi superiori al previsto, pertanto si consiglia di non farlo. Ad esempio, `/var/logs/lastlog` in Linux di solito si tratta di un file molto scarso e si consiglia di non pubblicarlo su. CloudWatch 

## Aggiungere dimensioni personalizzate alle metriche raccolte dall'agente CloudWatch
<a name="CloudWatch-Agent-adding-custom-dimensions"></a>

Per aggiungere dimensioni personalizzate, ad esempio tag ai parametri raccolti dall'agente, aggiungi il campo `append_dimensions` nella sezione del file di configurazione dell'agente che elenca i parametri.

Ad esempio, la seguente sezione di esempio del file di configurazione aggiunge una dimensione personalizzata denominata `stackName` con un valore di `Prod` ai parametri `cpu` e `disk` raccolti dall'agente.

```
"cpu":{  
  "resources":[  
    "*"
  ],
  "measurement":[  
    "cpu_usage_guest",
    "cpu_usage_nice",
    "cpu_usage_idle"
  ],
  "totalcpu":false,
  "append_dimensions":{  
    "stackName":"Prod"
  }
},
"disk":{  
  "resources":[  
    "/",
    "/tmp"
  ],
  "measurement":[  
    "total",
    "used"
  ],
  "append_dimensions":{  
    "stackName":"Prod"
  }
}
```

Ogni volta che modifichi il file di configurazione dell'agente, dovrai riavviare l'agente per implementare le modifiche.

## Aggregazione o aggregazione delle metriche raccolte dall'agente CloudWatch
<a name="CloudWatch-Agent-aggregating-metrics"></a>

Per aggregare o eseguire il rollup dei parametri raccolti dall'agente, aggiungi un campo `aggregation_dimensions` alla sezione relativa a tale parametro nel file di configurazione dell'agente.

Ad esempio, il seguente frammento del file di configurazione esegue il rollup dei parametri sulla dimensione `AutoScalingGroupName`. Vengono aggregati i parametri da tutte le istanze in ogni gruppo Auto Scaling e possono essere visualizzati complessivamente.

```
"metrics": {
  "cpu":{...}
  "disk":{...}
  "aggregation_dimensions" : [["AutoScalingGroupName"]]
}
```

Per eseguire il rollup in base alla combinazione di ogni dimensione `InstanceId` e `InstanceType` oltre al rollup nel nome del gruppo Auto Scaling, aggiungi quanto segue.

```
"metrics": {
  "cpu":{...}
  "disk":{...}
  "aggregation_dimensions" : [["AutoScalingGroupName"], ["InstanceId", "InstanceType"]]
}
```

Per eseguire il rollup dei parametri in un'unica raccolta, invece, utilizza `[]`.

```
"metrics": {
  "cpu":{...}
  "disk":{...}
  "aggregation_dimensions" : [[]]
}
```

Ogni volta che modifichi il file di configurazione dell'agente, dovrai riavviare l'agente per implementare le modifiche.

## Raccolta di metriche ad alta risoluzione con l'agente CloudWatch
<a name="CloudWatch-Agent-collect-high-resolution-metrics"></a>

Il campo `metrics_collection_interval` specifica l'intervallo di tempo per i parametri raccolti, in secondi. Specificando un valore inferiore a 60 per questo campo, i parametri vengono raccolti come i parametri ad alta risoluzione.

Ad esempio, se i parametri devono essere tutti ad alta risoluzione e raccolti ogni 10 secondi, specifica 10 come valore di `metrics_collection_interval` nella sezione `agent` come intervallo di raccolta dei parametri globale.

```
"agent": {
  "metrics_collection_interval": 10
}
```

In alternativa, il seguente esempio imposta i parametri `cpu` in modo che siano raccolti ogni secondo, mentre tutti gli altri parametri vengono raccolti ogni minuto.

```
"agent":{  
  "metrics_collection_interval": 60
},
"metrics":{  
  "metrics_collected":{  
    "cpu":{  
      "resources":[  
        "*"
      ],
      "measurement":[  
        "cpu_usage_guest"
      ],
      "totalcpu":false,
      "metrics_collection_interval": 1
    },
    "disk":{  
      "resources":[  
        "/",
        "/tmp"
      ],
      "measurement":[  
        "total",
        "used"
      ]
    }
  }
}
```

Ogni volta che modifichi il file di configurazione dell'agente, dovrai riavviare l'agente per implementare le modifiche.

## Invio di parametri, log e tracce a un altro account
<a name="CloudWatch-Agent-send-to-different-AWS-account"></a>

Per fare in modo che l' CloudWatch agente invii le metriche, i log o le tracce a un account diverso, specifica un `role_arn` parametro nel file di configurazione dell'agente sul server di invio. Il valore `role_arn` specifica un ruolo IAM nell'account di destinazione che l'agente usa durante l'invio di dati a tale account. Questo ruolo consente all'account di invio di assumere un ruolo corrispondente nell'account di destinazione quando si distribuiscono i parametri o i log all'account di destinazione.

È anche possibile specificare stringhe `role_arn` separate nel file di configurazione dell'agente: uno da utilizzare quando si inviano i parametri e uno per l'invio delle tracce.

L'esempio seguente di parte della sezione `agent` del file di configurazione imposta l'agente in modo da utilizzare `CrossAccountAgentRole` per l'invio di dati a un altro account.

```
{
  "agent": {
    "credentials": {
      "role_arn": "arn:aws:iam::123456789012:role/CrossAccountAgentRole"
    }
  },
  .....
}
```

In alternativa, l'esempio seguente imposta ruoli diversi per l'account di invio da utilizzare per l'invio di parametri, log e tracce:

```
"metrics": {
    "credentials": {
     "role_arn": "RoleToSendMetrics"
    },
    "metrics_collected": {....
```

```
"logs": {
    "credentials": {
    "role_arn": "RoleToSendLogs"
    },
    ....
```

**Policy richieste**

Quando si specifica un `role_arn` nel file di configurazione dell'agente, è anche necessario accertarsi che i ruoli IAM degli account di invio e di destinazione abbiano determinate policy. I ruoli in entrambi gli account di invio e di destinazione devono avere `CloudWatchAgentServerPolicy`. Per ulteriori informazioni sull'assegnazione di questa policy a un ruolo, consulta [Prerequisiti](prerequisites.md).

Il ruolo nell'account di invio, inoltre, deve includere la seguente policy. Aggiungere questa policy alla scheda **Permissions** (Autorizzazioni) nella console IAM quando si modifica il ruolo.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "sts:AssumeRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/agent-role-in-target-account"
            ]
        }
    ]
}
```

------

Il ruolo nell'account di destinazione deve includere la seguente policy, in modo che riconosca il ruolo IAM utilizzato dall'account di invio. Aggiungi questa policy alla scheda **Trust relationships** (Relazioni di trust) nella console IAM quando modifichi il ruolo. Questo ruolo è il ruolo specificato in `agent-role-in-target-account` nella policy utilizzata dall'account di invio.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:role/role-in-sender-account"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

## Differenze nel timestamp tra l' CloudWatch agente e l'agente Logs precedente CloudWatch
<a name="CloudWatch-Agent-logs-timestamp-differences"></a>

L' CloudWatch agente supporta un set diverso di simboli per i formati di timestamp rispetto al precedente agente Logs. CloudWatch Tali differenze sono mostrate nella seguente tabella.


| Simboli supportati da entrambi gli agenti | Simboli supportati solo dall'agente CloudWatch  | Simboli supportati solo dall'agente CloudWatch Logs precedente | 
| --- | --- | --- | 
|  %A, %a, %b, %B, %d, %f, %H, %l, %m, %M, %p, %S, %y, %Y, %Z, %z  |  %-d, %-l, %-m, %-M, %-S  |  %c, %j, %U, %W, %w  | 

Per ulteriori informazioni sul significato dei simboli supportati dal nuovo CloudWatch agente, consulta la [sezione CloudWatch Agent Configuration File: Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html#CloudWatch-Agent-Configuration-File-Logssection) nella *Amazon CloudWatch User Guide*. Per informazioni sui simboli supportati dall'agente CloudWatch Logs, consulta il [file di configurazione dell'agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AgentReference.html#agent-configuration-file) nella *Amazon CloudWatch Logs User* Guide.

## Aggiungere file di configurazione del collettore OpenTelemetry
<a name="CloudWatch-Agent-appending-OpenTelemetry-config-files"></a>

 L' CloudWatch agente supporta file di configurazione dei OpenTelemetry raccoglitori supplementari oltre ai propri file di configurazione. Questa funzionalità consente di utilizzare funzionalità CloudWatch dell'agente come CloudWatch Application Signals o Container Insights tramite la configurazione dell' CloudWatch agente e di inserire la configurazione del OpenTelemetry raccoglitore esistente con un singolo agente. 

Per evitare conflitti di fusione con le pipeline create automaticamente dall' CloudWatch agente, si consiglia di aggiungere un suffisso personalizzato a ciascuno dei componenti e delle pipeline nella configurazione del collettore. OpenTelemetry 

```
receivers:
  otlp/custom-suffix:
    protocols:
      http:

exporters:
  awscloudwatchlogs/custom-suffix:
    log_group_name: "test-group"
    log_stream_name: "test-stream"
  
service:
  pipelines:
    logs/custom-suffix:
      receivers: [otlp/custom-suffix]
      exporters: [awscloudwatchlogs/custom-suffix]
```

Per configurare l' CloudWatch agente, avviate l' CloudWatch agente utilizzando l'`fetch-config`opzione e specificate il file di configurazione dell' CloudWatch agente. CloudWatch l'agente richiede almeno un file di configurazione CloudWatch dell'agente.

```
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -c file:/tmp/agent.json -s
```

Quindi, utilizzate l'`append-config`opzione mentre specificate il file di configurazione del OpenTelemetry collettore.

```
/opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a append-config -c file:/tmp/otel.yaml -s
```

L'agente unisce i due file di configurazione all'avvio e registra la configurazione risolta.

# CloudWatch preferenza per le credenziali dell'agente
<a name="CloudWatch-Agent-Credentials-Preference"></a>

 Questa sezione descrive la catena di fornitori di credenziali utilizzata dall' CloudWatch agente per ottenere le credenziali quando comunica con altri servizi e. AWS APIs L'ordinamento è il seguente: 

**Nota**  
 Le preferenze elencate nei numeri da due a cinque hanno lo stesso ordine di preferenze definito nell'SDK. AWS Per ulteriori informazioni, consulta [Specifying Credentials](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials) nella documentazione dell'SDK. 

1. File di configurazione e credenziali condivisi come definiti nel file dell' CloudWatch agente. `common-config.toml` Per ulteriori informazioni, consulta [Installa l' CloudWatch agente utilizzando AWS Systems Manager](installing-cloudwatch-agent-ssm.md).

1. AWS Variabili di ambiente SDK
**Importante**  
In Linux, se si esegue l' CloudWatch agente utilizzando lo `amazon-cloudwatch-agent-ctl` script, lo script avvia l'agente come `systemd` servizio. In questo caso, le variabili di ambiente come `HOME`, `AWS_ACCESS_KEY_ID` e `AWS_SECRET_ACCESS_KEY` non sono accessibili dall'agente.

1. File di configurazione e credenziali condivisi presenti in `$HOME/%USERPROFILE%`
**Nota**  
L' CloudWatch agente `$HOME` cerca `.aws/credentials` Linux e macOS e cerca Windows. `%USERPROFILE%` A differenza dell' AWS SDK, l' CloudWatch agente non dispone di metodi di fallback per determinare la home directory se le variabili di ambiente sono inaccessibili. Questa differenza di comportamento serve a mantenere la retrocompatibilità con le implementazioni precedenti dell'SDK. AWS   
Inoltre, a differenza delle credenziali condivise presenti in`common-config.toml`, se le credenziali condivise AWS derivate dall'SDK scadono e vengono ruotate, le credenziali rinnovate non vengono raccolte automaticamente dall' CloudWatch agente e richiedono il riavvio dell'agente per farlo.

1. Un AWS Identity and Access Management ruolo per le attività se è presente un'applicazione che utilizza una definizione di attività di Amazon Elastic Container Service o un'operazione RunTask API.

1. Collegare un profilo dell'istanza a un'istanza Amazon EC2

Come best practice, ti consigliamo di specificare le credenziali nel seguente ordine quando usi l' CloudWatch agente.

1. Usa i ruoli IAM per le attività se la tua applicazione utilizza una definizione di attività di Amazon Elastic Container Service o un'operazione RunTask API.

1. Usa i ruoli IAM se la tua applicazione viene eseguita su un'istanza Amazon EC2.

1. Utilizza il `common-config.toml` file CloudWatch dell'agente per specificare il file delle credenziali. Questo file di credenziali è lo stesso utilizzato da altri AWS SDKs e da. AWS CLI Se stai già utilizzando un file di credenziali condiviso, puoi utilizzare anche tale file per questo scopo. Se lo fornite utilizzando il `common-config.toml` file dell' CloudWatch agente, vi assicurate che l'agente utilizzi le credenziali ruotate quando scadono e verranno sostituite senza che sia necessario riavviare l'agente.

1. Usa le variabili di ambiente. L'impostazione di variabili di ambiente è utile se si sta eseguendo il lavoro di sviluppo su un computer diverso da un'istanza Amazon EC2.

**Nota**  
 Se invii telemetria a un altro account come spiegato in[Invio di parametri, log e tracce a un altro account](CloudWatch-Agent-common-scenarios.md#CloudWatch-Agent-send-to-different-AWS-account), l' CloudWatch agente utilizza la catena di fornitori di credenziali descritta in questa sezione per ottenere il set iniziale di credenziali. Utilizza quindi tali credenziali quando assume il ruolo IAM specificato da nel file di configurazione dell'agente. `role_arn` CloudWatch 

# Risoluzione dei problemi relativi all'agente CloudWatch
<a name="troubleshooting-CloudWatch-Agent"></a>

 Puoi utilizzare le informazioni in questa sezione per risolvere i problemi che potresti riscontrare con l' CloudWatch agente. 

In caso di problemi con l' CloudWatch agente, è possibile utilizzare il `AWSSupport-TroubleshootCloudWatchAgent` runbook di automazione. Lo strumento per la risoluzione dei problemi AWS può:
+ Verificare le autorizzazioni IAM e i profili dell'istanza
+ Controllare lo stato dell'agente e analizzare i log
+ Testare la connettività degli endpoint
+ Raccogliere e caricare automaticamente i log pertinenti in Amazon S3

Per informazioni dettagliate sullo strumento di AWS risoluzione dei problemi, vedere [Support Automation Workflow (SAW) Runbook - Troubleshoot agent CloudWatch ](https://repost.aws/articles/ARDFhNRgSMRcahrIbGJaIC4g/support-automation-workflow-saw-runbook-troubleshoot-amazon-cloudwatch-agent).

**Topics**
+ [CloudWatch parametri della riga di comando dell'agente](#CloudWatch-Agent-options-help)
+ [L'installazione dell' CloudWatch agente tramite Run Command fallisce](#CloudWatch-Agent-installation-fails)
+ [L'agente non si avvia CloudWatch](#CloudWatch-Agent-troubleshooting-cannot-start)
+ [Verifica che l' CloudWatch agente sia in esecuzione](#CloudWatch-Agent-troubleshooting-verify-running)
+ [L' CloudWatch agente non si avvia e l'errore indica una regione Amazon EC2](#CloudWatch-Agent-troubleshooting-EC2-region)
+ [L' CloudWatch agente non si avvierà su Windows Server](#CloudWatch-Agent-troubleshooting-Windows-start)
+ [Dove sono i parametri?](#CloudWatch-Agent-troubleshooting-no-metrics)
+ [L' CloudWatch agente impiega molto tempo per essere eseguito in un contenitore o registra un errore di limite di hop](#CloudWatch-Agent-container-slow)
+ [Ho aggiornato la configurazione del mio agente ma non vedo le nuove metriche o i nuovi log nella console CloudWatch](#CloudWatch-Agent-troubleshooting-update-no-new-metrics)
+ [CloudWatch file e posizioni degli agenti](#CloudWatch-Agent-files-and-locations)
+ [Ricerca di informazioni sulle versioni degli CloudWatch agenti](#CloudWatch-Agent-troubleshooting-agent-version)
+ [Registri generati dall'agente CloudWatch](#CloudWatch-Agent-troubleshooting-loginfo)
+ [Arresto e riavvio dell'agente CloudWatch](#CloudWatch-Agent-troubleshooting-stopping-restarting)

## CloudWatch parametri della riga di comando dell'agente
<a name="CloudWatch-Agent-options-help"></a>

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 fallisce
<a name="CloudWatch-Agent-installation-fails"></a>

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 dell'agente SSM Agent. 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](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) nella *Guida per l'utente AWS Systems Manager *.

## L'agente non si avvia CloudWatch
<a name="CloudWatch-Agent-troubleshooting-cannot-start"></a>

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
<a name="CloudWatch-Agent-troubleshooting-verify-running"></a>

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/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

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

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

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

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

1. Scegli **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
<a name="CloudWatch-Agent-troubleshooting-EC2-region"></a>

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)](https://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region) nella *Riferimenti generali di Amazon Web Services*.

## L' CloudWatch agente non si avvierà su Windows Server
<a name="CloudWatch-Agent-troubleshooting-Windows-start"></a>

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](https://support.microsoft.com/en-us/help/922918/a-service-does-not-start-and-events-7000-and-7011-are-logged-in-window).

## Dove sono i parametri?
<a name="CloudWatch-Agent-troubleshooting-no-metrics"></a>

Se l' CloudWatch agente è in esecuzione ma non riesci a trovare le metriche da esso raccolte nel Console di gestione AWS 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](CloudWatch-Agent-Configuration-File-Details.md#CloudWatch-Agent-Configuration-File-Metricssection). 

## L' CloudWatch agente impiega molto tempo per essere eseguito in un contenitore o registra un errore di limite di hop
<a name="CloudWatch-Agent-container-slow"></a>

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:
```

Potresti visualizzare questo errore se l'agente tenta di ottenere metadati dall' IMDSv2 interno di un contenitore 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](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#configuring-IMDS-existing-instances.).

## Ho aggiornato la configurazione del mio agente ma non vedo le nuove metriche o i nuovi log nella console CloudWatch
<a name="CloudWatch-Agent-troubleshooting-update-no-new-metrics"></a>

Se aggiorni il file di configurazione dell' CloudWatch agente, al successivo avvio dell'agente, devi utilizzare l'**fetch-config**opzione. 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
<a name="CloudWatch-Agent-files-and-locations"></a>

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 Supporto AWS. |  `/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 [Create il file di configurazione dell' CloudWatch agente](create-cloudwatch-agent-configuration-file.md). |  `/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
<a name="CloudWatch-Agent-troubleshooting-agent-version"></a>

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-us-east-1.s3.us-east-1.amazonaws.com/info/latest/RELEASE_NOTES`
+ `https://amazoncloudwatch-agent.s3.amazonaws.com/info/latest/CWAGENT_VERSION` o `https://amazoncloudwatch-agent-us-east-1.s3.us-east-1.amazonaws.com/info/latest/CWAGENT_VERSION`

## Registri generati dall'agente CloudWatch
<a name="CloudWatch-Agent-troubleshooting-loginfo"></a>

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 su`true`, 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 CloudWatch dell'agente](CloudWatch-Agent-Configuration-File-Details.md).

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, consulta [LogLevelType](https://docs.aws.amazon.com/sdk-for-go/api/aws/#LogLevelType).

## Arresto e riavvio dell'agente CloudWatch
<a name="CloudWatch-Agent-troubleshooting-stopping-restarting"></a>

È 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/](https://console.aws.amazon.com/systems-manager/).

1. 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**.

1. Seleziona **Esegui comando**.

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

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

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

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

1. Scegli **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 [(Facoltativo) Modificate la configurazione comune e il profilo denominato per CloudWatch l'agente](installing-cloudwatch-agent-ssm.md#CloudWatch-Agent-profile-instance-fleet).