Procesadores de mutación de cadena - Amazon CloudWatch Logs

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.

Procesadores de mutación de cadena

Esta sección contiene información sobre los procesadores de mutación de cadenas que puede utilizar con un transformador de eventos de registro.

lowerCaseString

El procesador lowerCaseString convierte una cadena a su versión en minúsculas.

Campo Description (Descripción) ¿Obligatorio? Predeterminado Límites de las s

withKeys

Una lista de claves para convertir a minúsculas

Número máximo de entradas: 10

Ejemplo

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key": "INNER_VALUE" } }

La configuración del transformador es la siguiente, y utiliza lowerCaseString con parseJSON:

[ { "parseJSON": {} }, { "lowerCaseString": { "withKeys":["outer_key.inner_key"] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key": "inner_value" } }

upperCaseString

El procesador upperCaseString convierte una cadena a su versión en mayúsculas.

Campo Description (Descripción) ¿Obligatorio? Predeterminado Límites de las s

withKeys

Una lista de claves para convertir a mayúsculas

Número máximo de entradas: 10

Ejemplo

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key": "inner_value" } }

La configuración del transformador es la siguiente, y utiliza upperCaseString con parseJSON:

[ { "parseJSON": {} }, { "upperCaseString": { "withKeys":["outer_key.inner_key"] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key": "INNER_VALUE" } }

splitString

El procesador splitString es un tipo de procesador de mutaciones de cadenas que divide un campo en una matriz con un carácter delimitador.

Campo Description (Descripción) ¿Obligatorio? Predeterminado Límites de las s

entries

Matriz de entradas. Cada elemento de la matriz debe contener los campos source y delimiter.

Número máximo de entradas: 10

origen

La clave del valor del campo que se va a dividir

Longitud máxima: 128

delimiter

La cadena delimitadora en la que se divide el valor del campo

Longitud máxima: 128

Ejemplo 1

Ejemplo de evento de registro de muestra:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": "_" } ] } } ]

La configuración del transformador es la siguiente, y utiliza splitString con parseJSON:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": "_" } ] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key": [ "inner", "value" ] } }

Ejemplo 2

El delimitador en el que se divide la cadena puede tener varios caracteres.

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key": "item1, item2, item3" } }

La configuración del transformador es la siguiente:

[ { "parseJSON": {} }, { "splitString": { "entries": [ { "source": "outer_key.inner_key", "delimiter": ", " } ] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key": [ "item1", "item2", "item3" ] } }

substituteString

El procesador substituteString es un tipo de procesador de mutaciones de cadenas que compara el valor de una clave con el de una expresión regular y reemplaza todas las coincidencias por una cadena de reemplazo.

Campo Description (Descripción) ¿Obligatorio? Predeterminado Límites de las s

entries

Matriz de entradas. Cada elemento de la matriz debe contener los campos source, from y to.

Número máximo de entradas: 10

origen

La clave del campo que se va a modificar

Longitud máxima: 128

Profundidad máxima de clave anidada: 3

desde

La cadena de expresión regular que se sustituirá. Los caracteres de expresiones regulares especiales, como [ y ], deben estar separados por \\ cuando se usan comillas dobles y con \ cuando se usan comillas simples o cuando se configuran desde la Consola de administración de AWS. Para obtener más información, consulte Class Pattern en el sitio web de Oracle.

Se puede concluir un patrón en (...) para crear un grupo de captura numerado y crear grupos de captura con el nombre (?P<group_name>...) a los que se pueda hacer referencia en el campo to.

Longitud máxima: 128

a

Se puede utilizar la cadena que se sustituirá por cada coincidencia de las retroreferencias from con los grupos de captura. Use la forma $n para grupos numerados, como, por ejemplo, $1, y use ${group_name} para grupos con nombre, como ${my_group}.>

Longitud máxima: 128

Número de retroreferencias: 10

Número máximo de retroreferencias duplicadas: 2

Ejemplo 1

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key1": "[]", "inner_key2": "123-345-567", "inner_key3": "A cat takes a catnap." } }

La configuración del transformador es la siguiente, y utiliza substituteString con parseJSON:

[ { "parseJSON": {} }, { "substituteString": { "entries": [ { "source": "outer_key.inner_key1", "from": "\\[\\]", "to": "value1" }, { "source": "outer_key.inner_key2", "from": "[0-9]{3}-[0-9]{3}-[0-9]{3}", "to": "xxx-xxx-xxx" }, { "source": "outer_key.inner_key3", "from": "cat", "to": "dog" } ] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key1": "value1", "inner_key2": "xxx-xxx-xxx", "inner_key3": "A dog takes a dognap." } }

Ejemplo 2

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key1": "Tom, Dick, and Harry", "inner_key2": "arn:aws:sts::123456789012:assumed-role/MyImportantRole/MySession" } }

La configuración del transformador es la siguiente, y utiliza substituteString con parseJSON:

[ { "parseJSON": {} }, { "substituteString": { "entries": [ { "source": "outer_key.inner_key1", "from": "(\w+), (\w+), and (\w+)", "to": "$1 and $3" }, { "source": "outer_key.inner_key2", "from": "^arn:aws:sts::(?P<account_id>\\d{12}):assumed-role/(?P<role_name>[\\w+=,.@-]+)/(?P<role_session_name>[\\w+=,.@-]+)$", "to": "${account_id}:${role_name}:${role_session_name}" } ] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key1": "Tom and Harry", "inner_key2": "123456789012:MyImportantRole:MySession" } }

trimString

El procesador trimString elimina los espacios en blanco desde el principio y el final de una clave.

Campo Description (Descripción) ¿Obligatorio? Predeterminado Límites de las s

withKeys

Una lista de claves que se recortarán

Número máximo de entradas: 10

Ejemplo

Ejemplo de evento de registro de muestra:

{ "outer_key": { "inner_key": " inner_value " } }

La configuración del transformador es la siguiente, y utiliza trimString con parseJSON:

[ { "parseJSON": {} }, { "trimString": { "withKeys":["outer_key.inner_key"] } } ]

El evento de registro transformado sería el siguiente.

{ "outer_key": { "inner_key": "inner_value" } }