Procesadores de manipulación de cadenas - Amazon CloudWatch

Procesadores de manipulación de cadenas

Los procesadores de cadenas modifican los valores de texto de los eventos de registro mediante operaciones como la conversión de mayúsculas y minúsculas, el recorte y la coincidencia de patrones.

Procesador lowercase_string

Convierte los campos especificados en minúsculas.

Configuración

Configure el procesador lowercase_string con los siguientes parámetros:

processor: - lowercase_string: with_keys: ["status", "method"]
Parameters
with_keys (obligatorio)

Matriz de nombres de campos que se convertirán en minúsculas. Solo procesa valores de cadena.

Procesador uppercase_string

Convierte los campos especificados en mayúsculas.

Configuración

Configure el procesador uppercase_string con los siguientes parámetros:

processor: - uppercase_string: with_keys: ["status_code", "method"]
Parameters
with_keys (obligatorio)

Matriz de nombres de campos que se convertirán en mayúsculas. Solo procesa valores de cadena.

Procesador trim_string

Elimina todos los espacios en blanco del principio y del final de los campos especificados.

Configuración

Configure el procesador trim_string con los siguientes parámetros:

processor: - trim_string: with_keys: ["message", "user_input"]
Parameters
with_keys (obligatorio)

Matriz de nombres de campos del que se recortarán los espacios en blanco. Solo procesa valores de cadena.

Procesador substitute_string

Sustituye cadenas mediante expresiones regulares.

Configuración

Configure el procesador substitute_string con los siguientes parámetros:

processor: - substitute_string: entries: - source: "message" from: "ERROR" to: "WARN"
Parameters
entries (obligatorio)

Matriz de operaciones de sustitución que se llevarán a cabo en cada evento de registro.

entries[].source (obligatorio)

Campo en el que se sustituirá la cadena.

entries[].from (obligatorio)

Patrón de expresión regular que coincidirá y se reemplazará.

entries[].to (obligatorio)

Cadena de reemplazo para los patrones coincidentes.

Procesador truncate

Trunca valores de los campos a la longitud especificada.

Configuración

Configure el procesador truncate con los siguientes parámetros:

processor: - truncate: source_keys: ["message", "description"] length: 100 start_at: 0
Parameters
source_keys (obligatorio)

Matriz de nombres de campos que se truncarán. Cada nombre de campo debe tener un máximo de 128 caracteres.

length (opcional)

Longitud máxima tras el truncamiento. Intervalo: entre 1 y 8192.

start_at (opcional)

Posición inicial para el truncamiento. Intervalo: entre 0 y 8192. El valor predeterminado es 0.

Procesador extract_value

Extrae valores mediante expresiones regulares.

Configuración

Configure el procesador extract_value con los siguientes parámetros:

processor: - extract_value: entries: - source: "message" target: "extracted_data" from: "user=(?<user>\\w+)" to: "${user}" target_type: "string"
Parameters
entries (obligatorio)

Matriz de operaciones de extracción. Número máximo de entradas: 20.

entries[].source (obligatorio)

Campo del que se extraerá. 128 caracteres como máximo.

entries[].target (obligatorio)

Campo de destino para el valor extraído. 128 caracteres como máximo.

entries[].from (obligatorio)

Patrón de expresión regular. 128 caracteres como máximo.

entries[].to (obligatorio)

Patrón de reemplazo con grupos de captura. 128 caracteres como máximo.

entries[].target_type (opcional)

Tipo de datos de destino (“integer”, “double”, “string”, “boolean”).

Procesador convert_entry_type

Convierte valores de campo entre distintos tipos de datos.

Configuración

Configure el procesador convert_entry_type con los siguientes parámetros:

processor: - convert_entry_type: key: "count" type: "integer"
Parameters
key (obligatorio)

Nombre de campo único que se convertirá.

type (obligatorio)

Tipo de datos de destino. Opciones: “integer”, “double”, “string”, “boolean”.

Procesador date

Analiza y formatea campos de fecha y hora.

Configuración

Configure el procesador date con los siguientes parámetros:

processor: - date: match: - key: "timestamp" patterns: ["yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'"] destination: "@timestamp" source_timezone: "UTC" destination_timezone: "America/New_York"
Parameters
match (obligatorio)

Matriz de configuraciones de coincidencia de fechas. Número máximo de entradas: 10.

match[].key (obligatorio)

Campo que contiene la cadena de fecha. 128 caracteres como máximo.

match[].patterns (obligatorio)

Conjunto de patrones de formato de fecha que se probarán. Máximo de 5 patrones, cada uno de hasta 256 caracteres.

destination (opcional)

Campo de destino único para todas las fechas analizadas. 128 caracteres como máximo.

source_timezone (opcional)

Zona horaria de origen para el análisis.

destination_timezone (opcional)

Zona horaria de destino para la salida.

output_format (opcional)

Formato de salida de la fecha. 64 caracteres como máximo.

destination_type (opcional)

Tipo de salida: “timestampz”, “long” o “string”.

Procesador dissect

Extrae datos estructurados mediante la coincidencia de patrones.

Configuración

Configure el procesador dissect con los siguientes parámetros:

processor: - dissect: map: message: "%{timestamp} %{level}"
Parameters
map (obligatorio)

Asignación de campos con patrones de disección.

Procesador list_to_map

Convierte los campos de matrices en estructuras de mapa.

Configuración

Configure el procesador list_to_map con los siguientes parámetros:

processor: - list_to_map: source: "tags" key: "name" value_key: "value" target: "tag_map"
Parameters
source (obligatorio)

Campo que contiene datos de matrices. 128 caracteres como máximo.

key (obligatorio)

Nombre del campo que se utilizará como clave del mapa. 128 caracteres como máximo.

value_key (opcional)

Nombre del campo que se utilizará como valor del mapa. 128 caracteres como máximo.

target (opcional)

Campo de destino para la estructura de mapa. 128 caracteres como máximo.

flatten (opcional)

Si se debe aplanar el mapa resultante.

flattened_element (opcional)

Qué elemento se usará al aplanar (“first” para el primero o “last” para el último).

Procesador rename_keys

Cambia el nombre de los campos en eventos de registro.

Configuración

Configure el procesador rename_keys con los siguientes parámetros:

processor: - rename_keys: entries: - from_key: "old_name" to_key: "new_name" overwrite_if_to_key_exists: true
Parameters
entries (obligatorio)

Matriz de operaciones de cambio de nombre. Número máximo de entradas: 5.

entries[].from_key (obligatorio)

Nombre del campo actual. 128 caracteres como máximo.

entries[].to_key (obligatorio)

Nombre del campo nuevo. 128 caracteres como máximo.

entries[].overwrite_if_to_key_exists (opcional)

Si se debe sobrescribir el campo de destino existente.

Procesador select_entries

Selecciona solo los campos especificados de eventos.

Configuración

Configure el procesador select_entries con los siguientes parámetros:

processor: - select_entries: include_keys: ["timestamp", "level", "message"]
Parameters
include_keys (obligatorio)

Matriz de nombres de campos que se conservarán. Máximo de 50 claves, cada una de hasta 128 caracteres.

Procesador translate

Traduce los valores de campos mediante tablas de consulta.

Configuración

Configure el procesador translate con los siguientes parámetros:

processor: - translate: mappings: - source: "status_code" targets: - target: "status_text" map: "200": "OK" "404": "Not Found"
Parameters
mappings (obligatorio)

Matriz de configuraciones de traducción. Máximo de 10 asignaciones.

mappings[].source (obligatorio)

Campo que se traducirá. 128 caracteres como máximo.

mappings[].targets (obligatorio)

Matriz de configuraciones de destino. Máximo de 10 destinos.

mappings[].targets[].target (obligatorio)

Nombre del campo de destino. 128 caracteres como máximo.

mappings[].targets[].map (obligatorio)

Asignación de la traducción. Máximo de 100 entradas, cada valor de hasta 512 caracteres.