修剪所有来自logstash的字符串字段-jdbc输入

时间:2019-03-27 11:02:52

标签: mongodb elasticsearch jdbc db2 logstash

我正在尝试从JDBC输入返回的 ALL 字符串字段中修剪前导和尾随空格。表行包含这样的空格,但是我不想将它们发送到mongoDB和elasticsearch,因此我应该以某种方式在发送这些目标之前修剪这些数据。

JDBC输入插件连接到大型机上的DB2。我可以在select语句中修剪字符串字段,也可以引入kv过滤器,一一指定所有字符串字段。但是我需要找到最有效的替代方法来实现这一目标。

提前谢谢

这是我的logstash配置;

input {
  jdbc{
    jdbc_driver_library => "<lib>"
    jdbc_driver_class => "<class>"
    jdbc_connection_string => "<conn_str>"
    jdbc_user => "<user>"
    jdbc_password => "<pass>"
    schedule => "* * * * *"
    use_column_value => true
    tracking_column => "<field1>"
    last_run_metadata_path => "<path>"
    statement => "
        SELECT *
        FROM <table>
        WHERE
        <field1> > :sql_last_value
        ORDER BY <field1> ASC
    "
  }
}

output {
  mongodb {
    uri => "mongodb://<server1>:27017"
    database => "<db>"
    collection => "<collection>"
    id => "mongo_id"
  }

  elasticsearch {
    index => "dtcomo"
    hosts => ["<server1>:9200","<server2>:9200","<server3>:9200"]
  }
}

0 个答案:

没有答案