Processadores de manipulação de strings - Amazon CloudWatch

Processadores de manipulação de strings

Os processadores de strings modificam valores de texto em eventos de log por meio de operações como conversão entre maiúsculas e minúsculas, corte e correspondência de padrões.

Processador lowercase_string

Converte os campos especificados em minúsculas.

Configuração

Configure o processador lowercase_string com os seguintes parâmetros:

processor: - lowercase_string: with_keys: ["status", "method"]
Parâmetros
with_keys (obrigatório)

Matriz de nomes de campo a serem convertidos em minúsculas. Processa apenas valores de string.

Processador uppercase_string

Converte campos especificados em maiúsculas.

Configuração

Configure o processador uppercase_string com os seguintes parâmetros:

processor: - uppercase_string: with_keys: ["status_code", "method"]
Parâmetros
with_keys (obrigatório)

Matriz de nomes de campo a serem convertidos em maiúsculas. Processa apenas valores de string.

Processador trim_string

Remove todos os espaços em branco iniciais e finais de campos especificados.

Configuração

Configure o processador trim_string com os seguintes parâmetros:

processor: - trim_string: with_keys: ["message", "user_input"]
Parâmetros
with_keys (obrigatório)

Matriz de nomes de campo dos quais espaços em branco serão cortados. Processa apenas valores de string.

Processador substitute_string

Realiza a substituição de strings usando expressões regulares.

Configuração

Configure o processador substitute_string com os seguintes parâmetros:

processor: - substitute_string: entries: - source: "message" from: "ERROR" to: "WARN"
Parâmetros
entries (obrigatório)

Matriz de operações de substituição a serem executadas em cada evento de log.

entries[].source (obrigatório)

O campo no qual realizar a substituição de string.

entries[].from (obrigatório)

O padrão de expressão regular a ser correspondido e substituído.

entries[].to (obrigatório)

A string de substituição para padrões correspondentes.

Processador truncate

Trunca valores de campo para o tamanho especificado.

Configuração

Configure o processador truncate com os seguintes parâmetros:

processor: - truncate: source_keys: ["message", "description"] length: 100 start_at: 0
Parâmetros
source_keys (obrigatório)

Matriz de nomes de campo a serem truncados. Cada nome de campo tem no máximo 128 caracteres.

length (opcional)

Comprimento máximo após o truncamento. Intervalo: 1 a 8192.

start_at (opcional)

Posição inicial para truncamento. Intervalo: 0 a 8192. O padrão é 0.

Processador extract_value

Extrai valores usando expressões regulares.

Configuração

Configure o processador extract_value com os seguintes parâmetros:

processor: - extract_value: entries: - source: "message" target: "extracted_data" from: "user=(?<user>\\w+)" to: "${user}" target_type: "string"
Parâmetros
entries (obrigatório)

Matriz de operações de extração. Máximo de 20 entradas.

entries[].source (obrigatório)

Campo do qual extrair. Máximo de 128 caracteres.

entries[].target (obrigatório)

Campo de destino para o valor extraído. Máximo de 128 caracteres.

entries[].from (obrigatório)

Expressão regular pattern. Máximo de 128 caracteres.

entries[].to (obrigatório)

Padrão de substituição por grupos de captura. Máximo de 128 caracteres.

entries[].target_type (opcional)

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

Processador convert_entry_type

Converte valores de campo entre tipos de dados diferentes.

Configuração

Configure o processador convert_entry_type com os seguintes parâmetros:

processor: - convert_entry_type: key: "count" type: "integer"
Parâmetros
key (obrigatório)

Nome de campo único a ser convertido.

type (obrigatório)

Tipo de dados de destino. Opções: “integer”, “double”, “string”, “boolean”.

Processador date

Converte e formata campos de data/hora.

Configuração

Configure o processador date com os seguintes 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"
Parâmetros
match (obrigatório)

Matriz de configurações de correspondência de datas. Máximo de 10 entradas.

match[].key (obrigatório)

Campo contendo a string de data. Máximo de 128 caracteres.

match[].patterns (obrigatório)

Matriz de padrões de formato de data a serem experimentados. Máximo de 5 padrões, cada um com até 256 caracteres.

destination (opcional)

Campo de destino único para todas as datas analisadas. Máximo de 128 caracteres.

source_timezone (opcional)

Fuso horário da origem para análise.

destination_timezone (opcional)

Fuso horário do destino para saída.

output_format (opcional)

Formato de data da saída. Máximo de 64 caracteres.

destination_type (opcional)

Tipo de saída: “timestampz”, “long” ou “string”.

Processador dissect

Extrai dados estruturados usando correspondência de padrões.

Configuração

Configure o processador dissect com os seguintes parâmetros:

processor: - dissect: map: message: "%{timestamp} %{level}"
Parâmetros
map (obrigatório)

Mapeamento de campos com padrões de dissecação.

Processador list_to_map

Converte campos de matriz em estruturas de mapa.

Configuração

Configure o processador list-to-map com os seguintes parâmetros:

processor: - list_to_map: source: "tags" key: "name" value_key: "value" target: "tag_map"
Parâmetros
source (obrigatório)

Campo contendo dados de matriz. Máximo de 128 caracteres.

key (obrigatório)

Nome do campo a ser usado como chave do mapa. Máximo de 128 caracteres.

value_key (opcional)

Nome do campo a ser usado como valor do mapa. Máximo de 128 caracteres.

target (opcional)

Campo de destino para a estrutura do mapa. Máximo de 128 caracteres.

flatten (opcional)

Se o mapa resultante deve ou não ser nivelado.

flattened_element (opcional)

Qual elemento usar ao nivelar (“first” ou “last”).

Processador rename_keys

Renomeia campos em eventos de log.

Configuração

Configure o processador rename_keys com os seguintes parâmetros:

processor: - rename_keys: entries: - from_key: "old_name" to_key: "new_name" overwrite_if_to_key_exists: true
Parâmetros
entries (obrigatório)

Matriz de operações de renomeação. Máximo de 5 entradas.

entries[].from_key (obrigatório)

Nome de campo atual. Máximo de 128 caracteres.

entries[].to_key (obrigatório)

Nome do novo campo. 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.

Processador select_entries

Seleciona apenas campos especificados dos eventos.

Configuração

Configure o processador select_entries com os seguintes parâmetros:

processor: - select_entries: include_keys: ["timestamp", "level", "message"]
Parâmetros
include_keys (obrigatório)

Matriz de nomes de campo a serem mantidos. Máximo de 50 chaves, cada uma com até 128 caracteres.

Processador translate

Traduz valores de campo usando tabelas de pesquisa.

Configuração

Configure o processador translate com os seguintes parâmetros:

processor: - translate: mappings: - source: "status_code" targets: - target: "status_text" map: "200": "OK" "404": "Not Found"
Parâmetros
mappings (obrigatório)

Conjunto de configurações de tradução. Máximo de 10 mapeamentos.

mappings[].source (obrigatório)

Campo a traduzir. Máximo de 128 caracteres.

mappings[].targets (obrigatório)

Conjunto de configurações de destino. Máximo de 10 alvos.

mappings[].targets[].target (obrigatório)

Nome de campo de destino. Máximo de 128 caracteres.

mappings[].targets[].map (obrigatório)

Mapeamento de tradução. Máximo de 100 entradas, cada valor com até 512 caracteres.