

# Procesadores de manipulación de cadenas
<a name="string-processors"></a>

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\$1string
<a name="lowercase-string-processor"></a>

Convierte los campos especificados en minúsculas.

**Configuración**  
Configure el procesador lowercase\$1string 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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador uppercase\$1string
<a name="uppercase-string-processor"></a>

Convierte los campos especificados en mayúsculas.

**Configuración**  
Configure el procesador uppercase\$1string 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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador trim\$1string
<a name="trim-string-processor"></a>

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

**Configuración**  
Configure el procesador trim\$1string 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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador substitute\$1string
<a name="substitute-string-processor"></a>

Sustituye cadenas mediante expresiones regulares.

**Configuración**  
Configure el procesador substitute\$1string 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.

`when` (opcional)  
Expresión condicional de procesador. Si se especifica, se omite todo el procesador si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expresión condicional de entrada. Si se especifica, solo se omite esta entrada si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada alternativa que se pone en marcha solo cuando ninguna de las otras condiciones `when` del mismo procesador se cumplió. El valor de la expresión identifica qué condiciones `when` se deben tener en cuenta. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador truncate
<a name="truncate-processor"></a>

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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador extract\$1value
<a name="extract-value-processor"></a>

Extrae valores mediante expresiones regulares.

**Configuración**  
Configure el procesador extract\$1value 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”).

`when` (opcional)  
Expresión condicional de procesador. Si se especifica, se omite todo el procesador si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expresión condicional de entrada. Si se especifica, solo se omite esta entrada si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada alternativa que se pone en marcha solo cuando ninguna de las otras condiciones `when` del mismo procesador se cumplió. El valor de la expresión identifica qué condiciones `when` se deben tener en cuenta. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador convert\$1entry\$1type
<a name="convert-entry-type-processor"></a>

Convierte valores de campo entre distintos tipos de datos.

**Configuración**  
Configure el procesador convert\$1entry\$1type 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”.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador date
<a name="date-processor"></a>

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

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador dissect
<a name="dissect-processor"></a>

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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador list\$1to\$1map
<a name="list-to-map-processor"></a>

Convierte los campos de matrices en estructuras de mapa.

**Configuración**  
Configure el procesador list\$1to\$1map 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).

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador rename\$1keys
<a name="rename-keys-processor"></a>

Cambia el nombre de los campos en eventos de registro.

**Configuración**  
Configure el procesador rename\$1keys 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.

`when` (opcional)  
Expresión condicional de procesador. Si se especifica, se omite todo el procesador si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expresión condicional de entrada. Si se especifica, solo se omite esta entrada si la expresión se evalúa como falsa. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada alternativa que se pone en marcha solo cuando ninguna de las otras condiciones `when` del mismo procesador se cumplió. El valor de la expresión identifica qué condiciones `when` se deben tener en cuenta. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador select\$1entries
<a name="select-entries-processor"></a>

Selecciona solo los campos especificados de eventos.

**Configuración**  
Configure el procesador select\$1entries 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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).

## Procesador translate
<a name="translate-processor"></a>

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.

`when` (opcional)  
Expresión condicional que determina si este procesador se pone en marcha. La longitud máxima es de 256 caracteres. Consulte [Sintaxis de expresiones para el procesamiento condicional](conditional-processing.md).