As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Processadores de conversão de tipos de dados
Esta seção contém informações sobre os processadores conversores de tipos de dados que você pode usar com um transformador de eventos de log.
typeConverter
Use o processador typeConverter para converter um tipo de valor associado à chave especificada para o tipo especificado. É um processador de conversão que altera os tipos dos campos especificados. Os valores podem ser convertidos em um dos seguintes tipos de dados: integer, double, string e boolean.
| Campo | Description | Obrigatório? | Padrão | Limites |
|---|---|---|---|---|
|
entries |
Matriz de entradas. Cada item na matriz deve conter os campos key e type. |
Sim |
Máximo de entradas: 10 |
|
|
key |
A chave com o valor que deve ser convertido em um tipo diferente |
Sim |
Tamanho máximo: 128 Profundidade máxima de chave aninhada: 3 |
|
|
type |
O tipo para o qual converter. Os valores válidos são integer, double, string e boolean. |
Sim |
Exemplo
Observe o exemplo de evento de logs a seguir:
{ "name": "value", "status": "200" }
A configuração do transformador é esta, usando typeConverter com parseJSON:
[ { "parseJSON": {} }, { "typeConverter": { "entries": [ { "key": "status", "type": "integer" } ] } } ]
O evento de logs transformado seria o seguinte.
{ "name": "value", "status": 200 }
datetimeConverter
Use o processador datetimeConverter para converter uma string de data e hora em um formato que você especificar.
| Campo | Description | Obrigatório? | Padrão | Limites |
|---|---|---|---|---|
|
origem |
A chave na qual aplicar a conversão de data. |
Sim |
Máximo de entradas: 10 |
|
|
matchPatterns |
Uma lista de padrões para combinar com o campo source |
Sim |
Máximo de entradas: 5 |
|
|
target |
O campo JSON no qual armazenar o resultado. |
Sim |
Tamanho máximo: 128 Profundidade máxima de chave aninhada: 3 |
|
|
targetFormat |
O formato de data e hora a ser usado para os dados convertidos no campo de destino. |
Não |
|
Tamanho máximo: 64 |
|
sourceTimezone |
O fuso horário do campo de origem. Para obter uma lista de valores possíveis, consulte Ids e deslocamentos de zona suportados por Java |
Não |
UTC |
Tamanho mínimo: 1 |
|
targetTimezone |
O fuso horário do campo de destino. Para obter uma lista de valores possíveis, consulte Ids e deslocamentos de zona suportados por Java |
Não |
UTC |
Tamanho mínimo: 1 |
|
locale |
O locale do campo de origem. Para obter uma lista de valores possíveis, consulte o Método Locale getAvailableLocales () em Java com exemplos |
Sim |
Tamanho mínimo: 1 |
Exemplo
Observe o exemplo de evento de logs a seguir:
{"german_datetime": "Samstag 05. Dezember 1998 11:00:00"}
A configuração do transformador é esta, usando dateTimeConverter com parseJSON:
[ { "parseJSON": {} }, { "dateTimeConverter": { "source": "german_datetime", "target": "target_1", "locale": "de", "matchPatterns": ["EEEE dd. MMMM yyyy HH:mm:ss"], "sourceTimezone": "Europe/Berlin", "targetTimezone": "America/New_York", "targetFormat": "yyyy-MM-dd'T'HH:mm:ss z" } } ]
O evento de logs transformado seria o seguinte.
{ "german_datetime": "Samstag 05. Dezember 1998 11:00:00", "target_1": "1998-12-05T17:00:00 MEZ" }