【问题标题】:Can I use mutate filter in Logstash to convert some fields to integers of a genjdbc input?我可以在 Logstash 中使用 mutate 过滤器将某些字段转换为 genjdbc 输入的整数吗?
【发布时间】:2015-05-05 14:30:30
【问题描述】:

我正在使用 Logstash 的 genjdbc 输入插件从 DB2 数据库中获取数据。它工作得很好,我在 Kibana 中将所有数据库列作为字段。 我遇到的问题是,在 Kibana 中,所有字段都是字符串类型,我希望数字字段是整数。我试过下面的代码,结果和不存在过滤子句的结果是一样的。

有人可以帮我解决这个问题吗?提前致谢!

logstash.conf 代码:

  input { 
    genjdbc {  
      jdbcHost       => "XXX.XXX.XXX.XXX"
      jdbcPort       => "51260"
      jdbcTargetDB   => "db2"
      jdbcDBName     => "XXX"
      jdbcUser       => "XXX" 
      jdbcPassword   => "XXX"
      jdbcDriverPath => "C:\...\db2jcc4.jar"
      jdbcSQLQuery    => "SELECT * FROM XXX1"
      jdbcTimeField => "LOGSTAMP"
      jdbcPStoreFile => "C:\elk\logstash\bin\db2.pstore"
      jdbcURL => "jdbc:db2://XXX.XXX.XXX.XXX:51260/XXX"
      type => "table1"
    }
    genjdbc {  
      jdbcHost       => "XXX.XXX.XXX.XXX"
      jdbcPort       => "51260"
      jdbcTargetDB   => "db2"
      jdbcDBName     => "XXX"
      jdbcUser       => "XXX" 
      jdbcPassword   => "XXX"
      jdbcDriverPath => "C:\...\db2jcc4.jar"
      jdbcSQLQuery    => "SELECT * FROM XXX2"
      jdbcTimeField => "LOGSTAMP"
      jdbcPStoreFile => "C:\elk\logstash\bin\db2.pstore"
      jdbcURL => "jdbc:db2://XXX.XXX.XXX.XXX:51260/XXX"
      type => "table2"
    }
  }

  filter {
    mutate {
      convert => [ "T1", "integer" ]
      convert => [ "T2", "integer" ]
      convert => [ "T3", "integer" ]
    }
  }

  output {
    if [type] == "table1" {
      elasticsearch {
        host => "localhost"
        protocol => "http"
        index => "db2_1-%{+YYYY.MM.dd}"
      }
    }
    if [type] == "table2" {
      elasticsearch {
        host => "localhost"
        protocol => "http"
        index => "db2_2-%{+YYYY.MM.dd}"
      }
    }
  }

【问题讨论】:

    标签: jdbc filter elasticsearch logstash kibana


    【解决方案1】:

    只要您尝试转换为整数的字段是名称 T1、T2、T3 并且您插入到没有任何数据的索引中,您就应该工作。如果索引中已有数据,则需要删除索引,以便 logstash 可以使用正确的映射重新创建它。

    【讨论】:

      猜你喜欢
      • 2022-11-27
      • 2017-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-15
      • 2022-01-16
      相关资源
      最近更新 更多