logstash-jdbc-input 插件使用自增长的id来同步oracle数据,保存到文件的数字有问题

来源:7-2 -ElasticSearch 简介

慕田峪2064799

2017-11-20

logstash插件使用自增长得id同步数据  ,上一次执行到的 tracking_column 字段的值记录到文件,文件里初始值是一个数字,但是同步一次后变为了  --- !ruby/object:BigDecimal '0:0.6423E4' 这样子。


data.conf 文件是这样的:

input {

    jdbc {

        jdbc_connection_string => "jdbc:oracle:thin:@//192.168.1.90:1521/tcd"

        jdbc_user => "test01"

        jdbc_password => "test01"

        jdbc_driver_library => "/usr/local/es5/logstash/ojdbc5.jar"

        jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"

        statement_filepath => "data.sql"

        schedule => "3,6,9,12,15,18,21,22,25,28,31,34,37,40,43,46,49,52,55,58 * * * * *"

        sql_log_level => "debug"

        jdbc_default_timezone => "Asia/Shanghai"

        record_last_run => true

        use_column_value => true

        tracking_column => data_id

        last_run_metadata_path => "/usr/local/elastic/logstash/file/data/data_id_info"

    }

}

output {

    stdout {

        codec => json_lines

    }

    elasticsearch {

    hosts => "192.168.1.89:9200"

    index => "data_test"

    document_type => "data_test"

    document_id => "%{data_id}"

    }

}

求教下老师,这个解决方法


写回答

1回答

老卫

2017-11-20

0:0.6423E4  这个是你的小数点太长了,被它转为了科学计数法法了吧??

0
2
老卫
回复
慕田峪2064799
尝试转为字符串输出~
2017-11-20
共2条回复

基于Spring Boot技术栈博客系统企业级前后端实战

毕设 Elasticsearch搜索+Thymeleaf模板+JPA+Security+BootStrap

1296 学习 · 738 问题

查看课程