Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Registros y campos detectados compatibles
CloudWatch Logs Insights admite distintos tipos de registro. Por cada registro que se envía a un grupo de CloudWatch registros de clase estándar Amazon Logs, CloudWatch Logs Insights genera automáticamente cinco campos de sistema:
-
@message
contiene el evento de registro sin analizar ni procesar. Es el equivalente almessage
campo de InputLogevent. -
@timestamp
contiene la marca temporal del evento incluida en el campotimestamp
del evento de registro. Es el equivalente altimestamp
campo de InputLogevent. -
@ingestionTime
contiene la hora en que CloudWatch Logs recibió el evento de registro. -
@logStream
contiene el nombre del flujo de registros al que se añadió el evento de registro. Las transmisiones de registro agrupan los registros a través del mismo proceso que los generó. -
@log
es un identificador de grupo de registro con el formato
. Puede ser útil en consultas de varios grupos de registro para identificar a qué grupo de registro pertenece un evento determinado.account-id
:log-group-name
nota
La detección de campos solo se admite para los grupos de registros de la clase de registro Estándar. Para obtener más información acerca de las clases de registros, consulte Clases de registro.
CloudWatch Logs Insights inserta el símbolo @ al principio de los campos que genera.
En muchos tipos de CloudWatch registros, Logs también descubre automáticamente los campos de registro contenidos en los registros. Estos campos de detección automática se muestran en la siguiente tabla.
Para otros tipos de registros con campos que CloudWatch Logs Insights no descubre automáticamente, puede usar el parse
comando para extraer y crear campos extraídos para usarlos en esa consulta. Para obtener más información, consulte CloudWatch Sintaxis de consultas de Logs Insights.
Si el nombre de un campo de registro descubierto comienza por el @
carácter, CloudWatch Logs Insights lo muestra con un @
elemento adicional añadido al principio. Por ejemplo, si un nombre de campo de registro es @example.com
, este nombre de campo se muestra como @@example.com
.
Tipo de registro | Campos de registro detectados |
---|---|
Registros VPC de flujo de Amazon |
|
Registros de Route 53 |
|
Registros de Lambda |
Si una línea de registro de Lambda contiene un ID de seguimiento de X-Ray, también incluye los siguientes campos: CloudWatch Logs Insights descubre automáticamente los campos de registro en los registros Lambda, pero solo para el primer JSON fragmento incrustado en cada evento de registro. Si un evento de registro de Lambda contiene varios JSON fragmentos, puede analizar y extraer los campos de registro mediante el |
CloudTrail registros Inicia sesión en JSON formato |
Para obtener más información, consulte Campos en JSON los registros. |
Otros tipos de registros |
|
Campos en JSON los registros
Con CloudWatch Logs Insights, se utiliza la notación de puntos para representar JSON los campos. Esta sección contiene un ejemplo de JSON evento y un fragmento de código que muestran cómo se puede acceder a JSON los campos mediante la notación de puntos.
Ejemplo: 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" } } ] } } }
El JSON evento de ejemplo contiene un objeto que tiene un nombreuserIdentity
. userIdentity
contiene un campo que lleva el nombretype
. Para representar el valor de type
usando una notación de puntos, use userIdentity.type
.
El JSON evento de ejemplo contiene matrices que se aplanan hasta convertirse en listas de nombres y valores de campos anidados. Para representar el valor de instanceId
para el primer elemento de requestParameters.instancesSet
, utilice requestParameters.instancesSet.items.0.instanceId
. El número 0
que se coloca antes del campo instanceID
hace referencia a la posición de los valores para el campo items
. El siguiente ejemplo contiene un fragmento de código que muestra cómo se puede acceder a los campos anidados JSON de un evento de registro. JSON
Ejemplo: consulta
fields @timestamp, @message | filter requestParameters.instancesSet.items.0.instanceId="i-abcde123" | sort @timestamp desc
El fragmento de código muestra una consulta que utiliza la notación de puntos con el filter
comando para acceder al valor del campo anidado. JSON instanceId
La consulta se filtra en los mensajes donde el valor de instanceId
es igual a "i-abcde123"
y devuelve todos los eventos de registro que contienen el valor especificado.
nota
CloudWatch Logs Insights puede extraer un máximo de 200 campos de eventos de registro de un registro. JSON Para campos adicionales que no se extraen, puede utilizar el comando parse
para extraer estos campos desde el evento de registro sin analizar en el campo de mensaje. Para obtener más información sobre el parse
comando, consulte Sintaxis de consultas en la Guía del CloudWatch usuario de Amazon.