Creazione o modifica manuale del file di configurazione dell'agente CloudWatch
Il file di configurazione dell'agente CloudWatch è un file JSON che contiene quattro sezioni: agent, metrics, logs e traces.
-
La sezione
agentinclude campi per la configurazione generale dell'agente. -
La sezione
metricsspecifica i parametri personalizzati per la raccolta e la pubblicazione in CloudWatch. Se intendi utilizzare l'agente solo per raccogliere log, puoi omettere dal file la sezionemetrics. -
La sezione
logsspecifica quali file di log vengono pubblicati in CloudWatch Logs. Questo può includere eventi del log eventi di Windows, se Windows Server è in esecuzione nel server. -
La sezione
tracesspecifica le origini per le tracce che vengono raccolte e inviate a AWS X-Ray.
Questa sezione spiega la struttura e i campi del file di configurazione dell'agente CloudWatch. Puoi visualizzare la definizione di schema di questo file di configurazione. La definizione di schema è ubicata in sui server Linux e in installation-directory/doc/amazon-cloudwatch-agent-schema.json sui server che eseguono Windows Server. installation-directory/amazon-cloudwatch-agent-schema.json
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'agente CloudWatch sono a pagamento. Per ulteriori informazioni sui prezzi, consulta Prezzi di Amazon CloudWatch
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_intervalFacoltativo. 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.
Il valore predefinito è 60.
-
region: specifica la regione da utilizzare per l'endpoint CloudWatch durante il monitoraggio di un'istanza Amazon EC2. I parametri raccolti vengono inviati a questa regione, ad esempious-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
AmazonCloudWatchAgentdel file di configurazione AWS. -
credentials: specifica un ruolo IAM da utilizzare durante l'invio di parametri, log e tracce a un account AWS diverso. Se specificato, questo campo contiene un parametro,role_arn.-
role_arn: specifica il nome della risorsa Amazon (ARN) di un ruolo IAM da utilizzare per l'autenticazione durante l'invio di parametri, log e tracce a un account AWS diverso. Per ulteriori informazioni, consulta Invio di parametri, log e tracce a un altro account.
-
-
debugFacoltativo. Specifica l'esecuzione dell'agente CloudWatch con messaggi di log di debug. Il valore predefinito èfalse. -
aws_sdk_log_levelFacoltativo. Supportate solo nelle versioni 1.247350.0 e successive dell'agente CloudWatch.È possibile specificare questo campo per fare in modo che l'agente esegua la registrazione di AWS endpoint SDK. 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 .
-
-
logfile: specifica la posizione in cui l'agente CloudWatch scrive messaggi di log. 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'agente CloudWatch ruota automaticamente il file di log creato. 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_hostnameFacoltativo. 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 campoappend_dimensionsnella sezionemetrics. Imposta daomit_hostnameatrueper impedire che il nome host venga pubblicato come una dimensione anche se non si utilizzaappend_dimensions. Il valore predefinito èfalse. -
run_as_userFacoltativo. 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'agente CloudWatch. Per ulteriori informazioni, consulta la pagina Esecuzione dell'agente CloudWatch come un utente diverso.
-
user_agentFacoltativo. Specifica la stringauser-agentutilizzata dall'agente CloudWatch quando effettua chiamate API al back-end CloudWatch. 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'agente CloudWatch invia dati sull'integrità e sulle prestazioni di se stesso a CloudWatch ogni volta che pubblica parametri o log su CloudWatch. Questi dati non comportano alcun costo. È possibile impedire all'agente di inviare questi dati specificandofalseperusage_data. Se si omette questo parametro, viene utilizzata l'impostazione predefinita ditruee 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. -
deployment.environment: Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la ricerca della telemetria correlata.
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" }
Campi comuni a Linux e Windows
Nei server in cui è in esecuzione Linux o Windows Server, la sezione metrics include i seguenti campi:
-
namespaceFacoltativo. 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_dimensionsFacoltativo. 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_dimensionssono 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 dimensioneImageId. -
"InstanceId":"${aws:InstanceId}"imposta l'ID istanza dell'istanza come valore della dimensioneInstanceId. -
"InstanceType":"${aws:InstanceType}"imposta il tipo di istanza dell'istanza come valore della dimensioneInstanceType. -
"AutoScalingGroupName":"${aws:AutoScalingGroupName}"imposta il nome del gruppo Auto Scaling dell'istanza come valore della dimensioneAutoScalingGroupName.
Se si desidera aggiungere dimensioni ai parametri con coppie chiave-valore arbitrarie, utilizza il parametro
append_dimensionsnel 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) nella Riferimenti generali di Amazon Web Services.
-
-
aggregation_dimensionsFacoltativo. Specifica le dimensioni su cui devono essere aggregati i parametri raccolti. Ad esempio, se esegui il rollup dei parametri nella dimensioneAutoScalingGroupName, 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?.Il valore di
endpoint_overridedeve 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 tramiteStatsDocollectd. Questa sezione include varie sottosezioni.Il contenuto della sezione
metrics_collectedvaria 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 inmetrics_collected. Se viene specificato qui, sostituisce la destinazione predefinita dicloudwatch.-
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. Se specificato qui, questo valore sostituisce ilrole_arnspecificato nella sezioneagentdel 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. -
deployment.environment: Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la ricerca della telemetria correlata.
-
Sezione Linux
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.
-
collectdFacoltativo. Specifica che desideri recuperare i parametri personalizzati utilizzando il protocollocollectd. È possibile utilizzare il softwarecollectdper inviare i parametri all'agente CloudWatch. Per ulteriori informazioni sulle opzioni di configurazione disponibili per collectd, consulta Recupero dei parametri personalizzati con collectd. -
cpuFacoltativo. Specifica che è necessario raccogliere i parametri della CPU. Questa sezione è valida solo per le istanze Linux. È necessario includere almeno uno dei campitotalcpueresourcesper tutti i parametri CPU da raccogliere. Questa sezione può includere i seguenti campi.-
drop_original_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 è*. -
totalcpuFacoltativo. 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 sonotime_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_systemeusage_user. Il campo è obbligatorio se includicpu.Per impostazione predefinita, l'unità di misura dei parametri
cpu_usage_*èPercent, mentre i parametricpu_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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di CPU, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di CPU. Se specifichi questo campo, verrà utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensionsglobale, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
diskFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a CloudWatch. Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi. -
resourcesFacoltativo. Specifica una matrice di punti di montaggio su disco. Il campo limita CloudWatch alla raccolta di parametri 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 sonofree,total,used,used_percent,inodes_free,inodes_usedeinodes_total. Il campo è obbligatorio se includidisk.Nota
I parametri
diskhanno una dimensione perPartition, 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 Parametri raccolti dall'agente CloudWatch nelle istanze Linux e macOS.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 diNonediNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
ignore_file_system_types: specifica i tipi di file system da escludere durante la raccolta di parametri disk. Tra i valori validi figuranosysfs,devtmpfse così via. -
drop_device: impostando questa opzione sutrue,Devicenon viene incluso come dimensione per i parametri disk.Impedire che
Devicevenga 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 statoINSUFFICIENT DATA.Il valore predefinito è
false. -
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri del disco, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. 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 campoappend_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 dimensioneVolumeIdalle 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 parametrodrop_devicesia impostato sufalse.
-
-
-
diskioFacoltativo. Specifica che è necessario raccogliere i parametri disk i/o. Questa sezione è valida solo per le istanze Linux. Questa sezione può includere i seguenti campi.-
drop_original_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a CloudWatch. Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi. -
resourcesFacoltativo. Se specifichi una matrice di dispositivi, CloudWatch raccoglie parametri solo da questi dispositivi. In caso contrario, verranno raccolti parametri da tutti i dispositivi. Puoi inoltre specificare * come valore per raccogliere parametri da tutti i dispositivi. -
measurement: specifica l'array di metriche dei driver diskio e AWS NVMe da raccogliere per i volumi Amazon EBS e i volumi di archivio dell'istanza collegati alle istanze Amazon EC2. I valori possibili per diskio sonoreads,writes,read_bytes,write_bytes,read_time,write_time,io_timeeiops_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 Raccolta di metriche del driver Amazon EBS NVMe e Raccolta di metriche del driver NVMe del volume di archivio dell'istanza Amazon EC2. Il campo è obbligatorio se includidiskio.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 diNonediNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
Per informazioni sulle unità predefinite e la descrizione delle metriche, consulta Raccolta di metriche del driver Amazon EBS NVMe .
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri diskio, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri diskio. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensions, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
swapFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 sonofree,usedeused_percent. Il campo è obbligatorio se includiswap.Per visualizzare le unità di misura predefinite per ciascun parametro
swap, consulta Parametri raccolti dall'agente CloudWatch nelle istanze Linux e macOS.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 diNonediNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di scambio, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di scambio. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensionsglobale, usato per tutti i tipi di parametri raccolti dall'agente. Viene raccolto come parametro ad alta risoluzione.
-
-
memFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 sonoactive,available,available_percent,buffered,cached,free,inactive,total,usedeused_percent. Il campo è obbligatorio se includimem.Per visualizzare le unità di misura predefinite per ciascun parametro
mem, consulta Parametri raccolti dall'agente CloudWatch nelle istanze Linux e macOS.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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di memoria, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di memoria. Se specifichi questo campo, verrà utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensions, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
netFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a CloudWatch. Vengono invece riportati solo i parametri aggregati. Ciò riduce il numero di parametri raccolti dall'agente, riducendo i costi. -
resourcesFacoltativo. Se specifichi una matrice di interfacce di rete, CloudWatch raccoglie parametri solo da queste 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 sonobytes_sent,bytes_recv,drop_in,drop_out,err_in,err_out,packets_sentepackets_recv. Il campo è obbligatorio se includinet.Per visualizzare le unità di misura predefinite per ciascun parametro
net, consulta Parametri raccolti dall'agente CloudWatch nelle istanze Linux e macOS.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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di rete, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di rete. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensions, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
netstatFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 sonotcp_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_waiteudp_socket. Il campo è obbligatorio se includinetstat.Per visualizzare le unità di misura predefinite per ciascun parametro
netstat, consulta Parametri raccolti dall'agente CloudWatch nelle istanze Linux e macOS.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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri netstat, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di netstat. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensions, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
processesFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 sonoblocked,dead,idle,paging,running,sleeping,stopped,total,total_threads,waitezombies. Il campo è obbligatorio se includiprocesses.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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di processo, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. Le dimensioni aggiuntive da utilizzare solo per i parametri di processo. Se specifichi questo campo, viene utilizzato in aggiunta alle dimensioni specificate nel campoappend_dimensions, usato per tutti i tipi di parametri raccolti dall'agente.
-
-
nvidia_gpuFacoltativo. 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_metricsFacoltativo. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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.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 diNoneper il parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
-
-
metrics_collection_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri della GPU NVIDIA, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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). -
otlp: Opzionale. Specifica che desideri raccogliere le metriche dall'SDK OpenTelemetry. Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta Raccolta di metriche e tracce con OpenTelemetry. -
procstatFacoltativo. 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. -
statsdFacoltativo. Specifica che desideri recuperare i parametri personalizzati utilizzando il protocolloStatsD. L'agente CloudWatch agisce come daemon per il protocollo. È possibile utilizzare qualsiasi clientStatsDstandard per inviare i parametri all'agente CloudWatch. Per ulteriori informazioni sulle opzioni di configurazione disponibili per StatsD, consulta Recupero dei parametri personalizzati con StatsD. -
ethtoolFacoltativo. Specifica che desideri recuperare i parametri di rete utilizzando il plug-inethtool. 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.
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
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
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 si omette 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_intervalFacoltativo. Specifica la frequenza di raccolta dei parametri di questo oggetto, sostituendo il valore dimetrics_collection_intervalglobale specificato nella sezioneagentdel 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.
-
append_dimensionsFacoltativo. 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 campoappend_dimensionsglobale, usato per tutti i tipi di parametri raccolti dall'agente. -
drop_original_metrics: Opzionale. Se utilizzi il campoaggregation_dimensionsnella sezionemetricsper 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 i parametri originali vengano inviati a CloudWatch, puoi specificare questo parametro con un elenco di parametri. I parametri specificati insieme a questo parametro non hanno i relativi parametri per dimensione riportati a 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 in CloudWatch per questo parametro. -
unit: specifica l'unità di misura da utilizzare per questo parametro. L'unità di misura specificata deve essere un'unità di misura di parametro CloudWatch valida, come indicato nella descrizione diUnitin MetricDatum.
Esistono altre sezioni facoltative che puoi includere in metrics_collected:
-
statsd: consente di recuperare i parametri personalizzati utilizzando il protocolloStatsD. L'agente CloudWatch agisce come daemon per il protocollo. È possibile utilizzare qualsiasi clientStatsDstandard per inviare i parametri all'agente CloudWatch. Per ulteriori informazioni, consulta la pagina Recupero dei parametri personalizzati con StatsD. -
procstat: consente di recuperare i parametri dai singoli processi. Per ulteriori informazioni, consulta Raccolta di parametri dei processi con il plug-in procstat. -
jmxFacoltativo. 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). -
otlp: Opzionale. Specifica che desideri raccogliere le metriche dall'SDK OpenTelemetry. Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta Raccolta di metriche e tracce con OpenTelemetry.
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"],[]] } }
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. -
deployment.environment: Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la ricerca della telemetria correlata. -
logs_collected: obbligatorio se è inclusa la sezionelogs. Specifica quali file di log e log di eventi Windows devono essere raccolti dal server. Può includere due campi:filesewindows_events.-
files: specifica i file di log regolari che l'agente CloudWatch deve raccogliere. Include il campocollect_list, che definisce ulteriormente questi file.-
collect_list: campo obbligatorio sefilesè 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 log da caricare in CloudWatch Logs. 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.lognella struttura di directory/var/logverranno raccolti. Per ulteriori esempi, consulta la pagina Web Glob Library. Puoi anche utilizzare l'asterisco standard come carattere jolly. Ad esempio,
/var/log/system.log*corrisponde ai file, ad esempiosystem.log_1111,system.log_2222e così via in/var/log.Viene eseguito il push in CloudWatch Logs solo del file più recente, 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-01eaccess_log.2018-06-01-02, ma non file di più tipi, ad esempioaccess_log_80eaccess_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_removalFacoltativo. Se ètrue, l'agente CloudWatch elimina automaticamente questo file di log dopo averlo letto e dopo che è stato ruotato. Di solito i file di log vengono eliminati dopo che l'intero contenuto è stato caricato su CloudWatch Logs, ma se l'agente raggiunge la fine del file (EOF) e rileva anche un altro file di log più recente che corrisponde allo stessofile_path, l'agente elimina il VECCHIO file, per cui bisogna assicurarsi di aver terminato la scrittura del VECCHIO file prima di creare il NUOVO file. La libreria di tracciamento RUSTpresenta 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. Specifica quale nome utilizzare come nome del gruppo di log in CloudWatch Logs.È consigliabile usare questo campo per specificare un nome del gruppo di log per evitare confusione. Se
log_group_namenon è specificato, viene utilizzato come nome del gruppo di log il valore delfile_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, '_' (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.I valori validi sono
STANDARDeINFREQUENT_ACCESS. Se ometti questo campo, verrà utilizzato il valore predefinitoSTANDARD.Importante
Dopo la creazione di un gruppo di log, la relativa classe non può essere modificata.
-
log_stream_name: Opzionale. Specifica quale nome utilizzare come nome del flusso di log in CloudWatch Logs. 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_namenella sezionelogsglobale. 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'agente CloudWatch utilizza
-1come 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-1impostato dalla procedura guidata specifica che gli eventi nel gruppo di log non scadono. Tuttavia, la modifica manuale di questo valore su-1non 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_daysin un'unica posizione imposterà la conservazione dei log per l'intero gruppo. Se definisci il parametroretention_in_daysper lo stesso gruppo di log in più posizioni, la conservazione viene impostata se tutti i valori sono uguali. Tuttavia, se sono specificati valori del parametroretention_in_daysdiversi 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_daysper 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 nel file vengono pubblicati su CloudWatch Logs. Se si include questo campo, l'agente elabora ogni messaggio di log con tutti i filtri specificati e solo gli eventi di log che superano tutti i filtri vengono pubblicati su CloudWatch Logs. Le voci di log che non passano tutti i filtri rimarranno nel file di log 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 sonoincludeeexclude. Coninclude, la voce di log deve corrispondere all'espressione da pubblicare su CloudWatch Logs. Conexclude, ogni voce di log corrispondente al filtro non viene inviata a CloudWatch Logs. -
expression: una stringa di espressione regolare che segue la sintassi RE2. Nota
L'agente CloudWatch non controlla le prestazioni di alcuna espressione regolare fornita o 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, consulta Regular expression Denial of Service - ReDoS
Ad esempio, il seguente estratto del file di configurazione dell'agente CloudWatch pubblica i log che corrispondono a richieste PUT e POST su CloudWatch Logs, ma esclude 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
Firefoxprima 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 sonoUTCeLocal. 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 suamazon-cloudwatch-agent.logSe una singola voce di log contiene due timestamp che corrispondono al formato, viene utilizzato il primo timestamp.
Questo elenco di simboli è diverso rispetto a quello utilizzato dal precedente agente CloudWatch Logs. Per un riepilogo delle differenze, consulta Differenze di timestamp tra l'agente CloudWatch e l'agente CloudWatch Logs precedente.
%y-
Anno senza secolo come numero decimale a cui è aggiunto uno zero Ad esempio,
19per 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:00non è 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. In caso contrario, puoi specificare un'espressione regolare diversa per CloudWatch Logs da usare per determinare le righe di inizio di voci a 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. -
deployment.environment: Opzionale. Specifica il nome dell'ambiente da utilizzare per popolare l'entità per la ricerca della telemetria correlata.
-
-
-
La sezione
windows_eventsspecifica il tipo di eventi Windows da raccogliere dai server con Windows Server in esecuzione. Include i seguenti campi:-
collect_list: campo obbligatorio sewindows_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 esempioSystem,Security,Applicatione così via. Questo campo è obbligatorio per ogni tipo di evento Windows da registrare.Nota
Quando CloudWatch recupera i messaggi da un canale di log di Windows, cerca il canale di log in base alle sue proprietà
Full Name. Nel frattempo, nel riquadro di spostamento del Visualizzatore eventi di Windows vengono visualizzate le proprietàLog Namedei canali di log.Full NameeLog Namenon sempre corrispondono. Per verificare ilFull Namedi 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 sonoINFORMATION,WARNING,ERROR,CRITICALeVERBOSE. Questo campo è facoltativo per ogni tipo di evento Windows da registrare e può essere utilizzato con altre opzioni di filtro comeevent_idsefilters. event_ids: Opzionale. Contiene un array di ID eventi di Windows per specificare quali eventi raccogliere dal log 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 agli ID eventi specificati.Ogni voce dell'array
event_idsdeve 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_idsper 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. Se si include questo campo, l'agente elabora ogni messaggio di log con tutti i filtri specificati e solo gli eventi di log che superano tutti i filtri vengono pubblicati su CloudWatch Logs. I log eventi Windows che non superano tutti i filtri vengono scartati e non vengono inviati a CloudWatch Logs. La sezione 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 sonoincludeeexclude. Con include, la voce eventi Windows deve corrispondere all'espressione da pubblicare su CloudWatch Logs. Con exclude, ogni voce eventi Windows corrispondente al filtro non viene inviata a CloudWatch Logs.expression: una stringa di espressione regolare che segue la sintassi RE2.
Nota
L'agente CloudWatch 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, consulta Regular expression Denial of Service - ReDoS
. Nell'esempio di configurazione dell'agente riportato di seguito:
Per la prima voce, l'agente invia a CloudWatch 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). 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 scarta quindi i log contenenti
successfulprima di inviare i log rimanenti a CloudWatch Logs. Ogni tipo di filtro viene applicato a ogni log degli 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_idselog_levelcome mostrato nella seconda voce.avvertimento
Anche se tutti i meccanismi di filtraggio (event_levels, event_ids, filters) sono facoltativi, durante la configurazione dell'agente è necessario specificarne almeno uno per filtrare i log.
-
log_group_name: obbligatorio. Specifica quale nome utilizzare come nome del gruppo di log in CloudWatch Logs. -
log_stream_name: Opzionale. Specifica quale nome utilizzare come nome del flusso di log in CloudWatch Logs. 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_namenella sezionelogsglobale. 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. Specifica il formato da utilizzare per l'archiviazione di eventi Windows in CloudWatch Logs.xmlutilizza il formato XML come nel Visualizzatore eventi di Windows.textusa un 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'agente CloudWatch utilizza
-1come 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-1specificato dalla procedura guidata specifica che gli eventi nel gruppo di log non scadono. Tuttavia, la modifica manuale di questo valore su-1non 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_daysin un'unica posizione imposterà la conservazione dei log per l'intero gruppo. Se definisci il parametroretention_in_daysper lo stesso gruppo di log in più posizioni, la conservazione viene impostata se tutti i valori sono uguali. Tuttavia, se sono specificati valori del parametroretention_in_daysdiversi 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_daysper 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 parametrolog_stream_nameall'interno della voce incollect_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?.Il valore di
endpoint_overridedeve 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: specifica un ruolo IAM da utilizzare durante l'invio di log a un account AWS 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 log a un account AWS diverso. Per ulteriori informazioni, consulta la pagina Invio di parametri, log e tracce a un altro account. Se specificato qui, sostituisce ilrole_arnspecificato nella sezioneagentdel 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 Approfondimenti sui container con osservabilità migliorata per Amazon EKS.-
application_signals(Facoltativo) Indica che desideri abilitare CloudWatch Application Signals. Per ulteriori informazioni su questa configurazione, consulta Attivazione di CloudWatch Application Signals. -
kubernetes: questo campo può contenere un parametroenhanced_container_insights, che può essere utilizzato per abilitare Approfondimenti sui container con osservabilità migliorata per Amazon EKS.-
enhanced_container_insights: imposta questo valore sutrueper abilitare Approfondimenti sui container con osservabilità migliorata per Amazon EKS. Per ulteriori informazioni, consulta Container Insights con osservabilità migliorata per Amazon EKS. -
accelerated_compute_metrics: imposta questa opzione sufalseper disattivare la raccolta delle metriche di GPU Nvidia sui cluster Amazon EKS. Per ulteriori informazioni, consulta Metriche della GPU NVIDIA.
-
-
emf: per raccogliere i parametri integrati nei log, non è più necessario aggiungere questo campoemf. 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. -
otlpFacoltativo. Specifica che desideri raccogliere le metriche dall'SDK OpenTelemetry. Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta Raccolta di metriche e tracce con OpenTelemetry.
-
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 } } }
Aggiungendo una sezione traces al file di configurazione dell'agente CloudWatch, puoi abilitare CloudWatch Application Signals o raccogliere le tracce da X-Ray e da SDK di analisi OpenTelemetry Strumentation e inviarle a X-Ray.
Importante
Per inviare i dati di traccia a X-Ray, il ruolo IAM o l'utente IAM dell'agente devono disporre della policy AWSXrayWriteOnlyAccess.
Per iniziare rapidamente a raccogliere tracce, puoi aggiungere solo quanto segue al file di configurazione dell'agente CloudWatch.
"traces_collected": { "xray": { }, "otlp": { } }
Se si aggiunge la sezione precedente al file di configurazione dell'agente CloudWatch e si riavvia l'agente, l'agente inizierà a raccogliere tracce utilizzando le opzioni e i valori predefiniti riportati di seguito. 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 sezionetraces. Specifica da quali SDK raccogliere le tracce. Include i seguenti campi:-
application_signals: Opzionale. Indica che desideri abilitare CloudWatch Application Signals. Per ulteriori informazioni su questa configurazione, consulta Attivazione di CloudWatch Application Signals. -
xray: Opzionale. Specifica che desideri raccogliere le tracce dall'SDK X-Ray. Questa sezione può includere i seguenti campi.-
bind_addressFacoltativo. Specifica l'indirizzo UDP per l'agente CloudWatch 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 nella console di X-Ray.Questa sezione può contenere i seguenti campi.
-
bind_address: Opzionale. Specifica l'indirizzo TCP su cui l'agente CloudWatch deve impostare 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 desideri raccogliere le tracce dall'SDK OpenTelemetry. Per ulteriori informazioni sui campi che è possibile utilizzare in questa sezione, consulta Raccolta di metriche e tracce con OpenTelemetry. Per ulteriori informazioni su AWS Distro for OpenTelemetry, consulta AWS Distro for OpenTelemetry. Per ulteriori informazioni sugli SDK AWS Distro per OpenTelemetry, consulta Introduzione . Questa sezione può includere i seguenti campi.
-
grpc_endpointFacoltativo. Specifica l'indirizzo dell'agente CloudWatch da utilizzare per ascoltare le tracce OpenTelemetry 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. Specifica l'indirizzo per l'agente CloudWatch da utilizzare per ascoltare le tracce OTLP inviate su 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. Setrue, l'agente non raccoglie i metadati delle istanze Amazon EC2. Il valore predefinito èfalse. -
endpoint_override: Opzionale. Specifica un endpoint FIPS o un collegamento privato da utilizzare come endpoint in cui l'agente CloudWatch invia le tracce. Specificando questo campo e impostando un collegamento privato potrai inviare le tracce a un endpoint Amazon VPC. Per ulteriori informazioni, consulta Cos'è Amazon VPC?.Il valore di
endpoint_overridedeve essere una stringa che è un URL. -
region_override: Opzionale. Specifica la Regione da utilizzare per l'endpoint X-Ray. L'agente CloudWatch 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
regionnella sezioneagentdel file di configurazione. -
proxy_override: Opzionale. Specifica l'indirizzo del server proxy per l'agente CloudWatch da utilizzare durante l'invio di richieste a X-Ray. Il protocollo del server proxy deve essere specificato come parte di questo indirizzo. -
credentials: specifica un ruolo IAM da utilizzare durante l'invio di tracce a un account AWS 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 tracce a un account AWS diverso. Per ulteriori informazioni, consulta Invio di parametri, log e tracce a un altro account. Se specificato qui, sostituisce ilrole_arnspecificato nella sezioneagentdel file di configurazione, se presente.
-
-
transit_spans_in_otlp_format: Opzionale. Setrue, invia tracce a X-Ray nel formato OpenTelemetry Protocol, che supporta gli eventi di intervallo in Transaction Search. Per ulteriori informazioni, consulta Aggiunta degli attributi personalizzati. Il valore predefinito èfalse.
Di seguito è riportato un esempio di un file di configurazione dell'agente completo di CloudWatch 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 un file di configurazione dell'agente completo di CloudWatch 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" } }
Salvataggio manuale del file di configurazione dell'agente di CloudWatch.
Se crei o modifichi manualmente il file di configurazione dell'agente CloudWatch, puoi assegnargli qualsiasi nome. Dopo avere creato il file, potrai copiarlo negli altri server in cui desideri eseguire l'agente.
Caricamento del file di configurazione dell'agente CloudWatch nel Systems Manager Parameter Store
Se prevedi di utilizzare SSM Agent per installare l'agente CloudWatch sul server, dopo averlo modificato manualmente, potrai caricare il file di configurazione dell'agente CloudWatch su Parameter Store di Systems Manager. 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.
Utilizza il seguente comando, in cui parameter name è il nome da utilizzare per questo file in Parameter Store e configuration_file_pathname corrisponde al percorso e al nome del file di configurazione modificato.
aws ssm put-parameter --name "parameter name" --type "String" --value file://configuration_file_pathname