

# Processadores de transformação
<a name="transformation-processors"></a>

Os processadores de transformação modificam a estrutura dos eventos de log adicionando, copiando, movendo ou removendo campos.

## Processador add\_entries
<a name="add-entries-processor"></a>

Adiciona pares estáticos de chave-valor aos eventos de logs. No máximo 1 processador `add_entries` pode ser adicionado a um pipeline.

**Configuração**  
Configure o processador add\_entries com os seguintes parâmetros:

```
processor:
  - add_entries:
      entries:
        - key: "environment"
          value: "production"
          overwrite_if_key_exists: false
```Parâmetros

`entries` (obrigatório)  
Uma matriz de pares de chave-valor a serem adicionados a cada evento de log.

`entries[].key` (obrigatório)  
O nome do campo a ser adicionado ao evento de log. Permite campos aninhados usando a notação de pontos.

`entries[].value` (obrigatório)  
O valor estático a ser atribuído à chave.

`entries[].overwrite_if_key_exists` (opcional)  
Sinalizador booleano que determina o comportamento quando a chave já existe. O padrão é falso.

`when` (opcional)  
Expressão condicional no nível de processador. Quando especificado, todo o processador será ignorado se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expressão condicional no nível de entrada. Quando especificado, somente essa entrada será ignorada se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada de fallback que é executada somente quando nenhuma das outras condições `when` no mesmo processador corresponde. O valor da expressão identifica quais condições `when` considerar. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

## Processador copy\_values
<a name="copy-values-processor"></a>

Copia valores de um campo para outro. No máximo 1 processador `copy_values` pode ser adicionado a um pipeline.

**Configuração**  
Configure o processador copy\_values com os seguintes parâmetros:

```
processor:
  - copy_values:
      entries:
        - from_key: "user_id"
          to_key: "backup_user"
          overwrite_if_to_key_exists: false
```Parâmetros

`entries` (obrigatório)  
Matriz de operações de cópia a serem executadas em cada evento de log.

`entries[].from_key` (obrigatório)  
O nome do campo do qual o valor será copiado. Usa notação de pontos para campos aninhados.

`entries[].to_key` (obrigatório)  
O nome do campo para o qual o valor será copiado. Criará estruturas aninhadas se a notação de pontos for usada.

`entries[].overwrite_if_to_key_exists` (opcional)  
Sinalizador booleano que controla o comportamento quando o campo de destino já existe. O padrão é falso.

`when` (opcional)  
Expressão condicional no nível de processador. Quando especificado, todo o processador será ignorado se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expressão condicional no nível de entrada. Quando especificado, somente essa entrada será ignorada se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada de fallback que é executada somente quando nenhuma das outras condições `when` no mesmo processador corresponde. O valor da expressão identifica quais condições `when` considerar. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

## Processador delete\_entries
<a name="delete-entries-processor"></a>

Remove campos especificados dos eventos de logs.

**Configuração**  
Configure o processador de delete\_entries com os seguintes parâmetros:

```
processor:
  - delete_entries:
      with_keys: ["temp_field", "debug_info"]
```Parâmetros

`with_keys` (obrigatório)  
Matriz de nomes de campo a serem removidos de cada evento de log. Permite a exclusão de campos aninhados usando notação de pontos.

`when` (opcional)  
Expressão condicional que determina se esse processador é executado. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

## Processador move\_keys
<a name="move-keys-processor"></a>

Move campos de um local para outro.

**Configuração**  
Configure o processador move\_keys com os seguintes parâmetros:

```
processor:
  - move_keys:
      entries:
        - from_key: "old_field"
          to_key: "new_field"
          overwrite_if_to_key_exists: true
```Parâmetros

`entries` (obrigatório)  
Matriz de operações de movimentação. Máximo de 5 entradas.

`entries[].from_key` (obrigatório)  
Nome do campo de origem. Máximo de 128 caracteres.

`entries[].to_key` (obrigatório)  
Nome de campo de destino. Máximo de 128 caracteres.

`entries[].overwrite_if_to_key_exists` (opcional)  
Se o campo de destino existente deve ou não ser substituído.

`when` (opcional)  
Expressão condicional no nível de processador. Quando especificado, todo o processador será ignorado se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when` (opcional)  
Expressão condicional no nível de entrada. Quando especificado, somente essa entrada será ignorada se a expressão for avaliada como false. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

`entries[].when_else` (opcional)  
Entrada de fallback que é executada somente quando nenhuma das outras condições `when` no mesmo processador corresponde. O valor da expressão identifica quais condições `when` considerar. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).

## Processador flatten
<a name="flatten-processor"></a>

Nivela estruturas de objetos aninhados.

**Configuração**  
Configure o processador flatten com os seguintes parâmetros:

```
processor:
  - flatten:
      source: "metadata"
      target: "flattened"
      remove_processed_fields: true
      exclude_keys: ["sensitive_data"]
```Parâmetros

`source` (obrigatório)  
Campo contendo objeto aninhado a ser nivelado.

`target` (obrigatório)  
Prefixo do campo de destino para chaves niveladas.

`remove_processed_fields` (opcional)  
Se o campo aninhado original deve ou não ser removido após o nivelamento.

`exclude_keys` (opcional)  
Matriz de chaves a serem excluídas do nivelamento. Máximo de 20 chaves, cada uma com até 128 caracteres.

`when` (opcional)  
Expressão condicional que determina se esse processador é executado. O tamanho máximo é de 256 caracteres. Consulte [Sintaxe da expressão para processamento condicional](conditional-processing.md).