Registri supportati e campi rilevati - CloudWatch Registri Amazon

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

Registri supportati e campi rilevati

CloudWatch Logs Insights supporta diversi tipi di log. Per ogni log inviato a un gruppo di log di classe Standard Amazon CloudWatch Logs, CloudWatch Logs Insights genera automaticamente cinque campi di sistema:

  • @message contiene il log eventi non analizzato, non elaborato. Questo è l'equivalente del message campo in. InputLogevent

  • @timestamp contiene il timestamp dell'evento nel campo timestamp del log eventi. È l'equivalente del timestamp campo in InputLogevent.

  • @ingestionTimecontiene l'ora in cui CloudWatch Logs ha ricevuto l'evento di registro.

  • @logStream contiene il nome del flusso di log a cui il log eventi è stato aggiunto. I flussi di log raggruppano i registri in base allo stesso processo che li ha generati.

  • @log è un identificatore di gruppo di log sotto forma di account-id:log-group-name. Nelle query di più gruppi di log, può essere utile per identificare a quale gruppo di log appartiene un particolare evento.

Nota

L'individuazione dei campi è supportata solo per i gruppi di log nella classe di log Standard. Per ulteriori informazioni sulle classi di log, vedereClassi di registro.

CloudWatch Logs Insights inserisce il simbolo @ all'inizio dei campi generati.

Per molti tipi di log, CloudWatch Logs rileva inoltre automaticamente i campi di log contenuti nei log. Questi campi di rilevamento automatici sono mostrati nella tabella seguente.

Per altri tipi di log con campi che CloudWatch Logs Insights non rileva automaticamente, puoi utilizzare il parse comando per estrarre e creare campi estratti da utilizzare in quella query. Per ulteriori informazioni, consulta CloudWatch Sintassi delle query di Logs Insights.

Se il nome di un campo di registro rilevato inizia con il @ carattere, CloudWatch Logs Insights lo visualizza con un altro @ aggiunto all'inizio. Ad esempio, se un nome di un campo di log è @example.com, questo nome di campo viene visualizzato come @@example.com.

Tipo di log Campi di log rilevati

Registri VPC di flusso di Amazon

@timestamp, @logStream, @message, accountId, endTime, interfaceId, logStatus, startTime, version, action, bytes, dstAddr, dstPort, packets, protocol, srcAddr, srcPort

Log di Route 53

@timestamp, @logStream, @message, edgeLocation, ednsClientSubnet, hostZoneId, protocol, queryName, queryTimestamp, queryType, resolverIp, responseCode, version

Log di Lambda

@timestamp, @logStream, @message, @requestId, @duration, @billedDuration, @type, @maxMemoryUsed, @memorySize

Se una riga di log Lambda contiene un ID di traccia X-Ray, include anche i seguenti campi: @xrayTraceId e @xraySegmentId.

CloudWatch Logs Insights rileva automaticamente i campi di log nei log Lambda, ma solo per il primo JSON frammento incorporato in ogni evento di registro. Se un evento di registro Lambda contiene più JSON frammenti, puoi analizzare ed estrarre i campi di registro utilizzando il comando. parse Per ulteriori informazioni, consulta Campi nei registri JSON.

CloudTrail registri

Registri in formato JSON

Per ulteriori informazioni, consulta Campi nei registri JSON.

Altri tipi di log

@timestamp, @ingestionTime, @logStream, @message, @log.

Campi nei registri JSON

Con CloudWatch Logs Insights, si utilizza la notazione a punti per rappresentare i campi. JSON Questa sezione contiene un JSON evento di esempio e un frammento di codice che mostrano come accedere ai JSON campi utilizzando la notazione a punti.

Esempio: evento JSON

{ "eventVersion": "1.0", "userIdentity": { "type": "IAMUser", "principalId": "EX_PRINCIPAL_ID", "arn": "arn: aws: iam: : 123456789012: user/Alice", "accessKeyId": "EXAMPLE_KEY_ID", "accountId": "123456789012", "userName": "Alice" }, "eventTime": "2014-03-06T21: 22: 54Z", "eventSource": "ec2.amazonaws.com", "eventName": "StartInstances", "awsRegion": "us-east-2", "sourceIPAddress": "192.0.2.255", "userAgent": "ec2-api-tools1.6.12.2", "requestParameters": { "instancesSet": { "items": [ { "instanceId": "i-abcde123" } ] } }, "responseElements": { "instancesSet": { "items": [ { "instanceId": "i-abcde123", "currentState": { "code": 0, "name": "pending" }, "previousState": { "code": 80, "name": "stopped" } } ] } } }

L'JSONevento di esempio contiene un oggetto denominatouserIdentity. userIdentitycontiene un campo denominatotype. Per rappresentare il valore di type usando la notazione con il punto, utilizza userIdentity.type.

L'JSONevento di esempio contiene matrici che si appiattiscono in elenchi di nomi e valori di campi annidati. Per rappresentare il valore di instanceId per il primo elemento di requestParameters.instancesSet, utilizza requestParameters.instancesSet.items.0.instanceId. Il numero 0 posizionato prima del campo instanceID si riferisce alla posizione dei valori per il campo items. L'esempio seguente contiene un frammento di codice che mostra come accedere ai campi JSON nidificati in un evento di registro. JSON

Esempio: query

fields @timestamp, @message | filter requestParameters.instancesSet.items.0.instanceId="i-abcde123" | sort @timestamp desc

Il frammento di codice mostra una query che utilizza la notazione a punti con il filter comando per accedere al valore del campo annidato. JSON instanceId La query filtra i messaggi in cui il valore di instanceId è uguale a "i-abcde123" e restituisce tutti i log eventi che contengono il valore specificato.

Nota

CloudWatch Logs Insights può estrarre un massimo di 200 campi di eventi di registro da un registro. JSON Per i campi aggiuntivi che non vengono estratti, è possibile utilizzare il comando parse per estrarre questi campi dal log eventi non analizzato e non elaborato nel campo del messaggio. Per ulteriori informazioni sul parse comando, consulta la sintassi delle query nella Amazon CloudWatch User Guide.