That is expected. When a pipeline is started, events are read all of the inputs, put through the filters, then written to all of the outputs.
Either, split your configuration into 3 files, and run each one in a different pipeline, or use conditionals. For example
input{
jdbc {
jdbc_driver_library => "C:\Users\Siamaco\Downloads\Jaybird-3.0.8-JDK_1.8\jaybird-full-3.0.8.jar"
[...]
statement_filepath => "C:\_Developer\Elastic\SQL\ContasReceber\cheques_devolvidos.sql"
[....]
add_tag => [ "cheques_devolvidos" ]
}
}
output{
if "cheques_devolvidos" in [tags] {
elasticsearch{
hosts => ["localhost:9200"]
index => "cheques_devolvidos"
document_id => "%{total_cheque_devolvido}"
}
}
}