Logstash de entrada jdbc tomar mysql tinyint 0/1 como boolean true/false

0

Pergunta

Na tabela mysql, tem um tipo tinyint como este, que apenas armazenar valor 0 ou 1, como is_mel:1.

is_mel | tinyint(1)

Em Elasticsearch índice de mapeamento de configuração is_mel como número inteiro.

Mas desde o logstash de log, ele mostra que analisar os is_mel como valor booleano true ou false como "is_mel":true, o que vai levar para abaixo de erro,

"type"=>"mapper_parsing_exception",
"reason"=>"failed to parse field [is_mel] of type [integer] in document with id '392289'. Preview of field's value: 'true'"
elasticsearch input jdbc logstash
2021-11-18 06:50:46
1

Melhor resposta

1

É, na verdade, um recurso, não um bug :-)

Você pode acrescentar tinyInt1isBit=false para a sua URL JDBC para desativar esse comportamento

jdbc.url=jdbc:mysql://127.0.0.1:3306/testdb?tinyInt1isBit=false
                                                    ^
                                                    |
                                                 add this

Link para o MySQL doc

2021-11-18 08:24:32

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................