elasticsearch - logstash 制表符分隔符不转义

标签 elasticsearch logstash

我有制表符分隔的数据,我想将其输入到 logstash 中。这是我的配置文件:

input {
    file {
        path => "/*.csv"
        type => "testSet"
        start_position => "beginning"
    }
}

filter {
    csv {
        separator => "\t"
    }
}

output {
    stdout {
        codec => rubydebug
    }
}

它只是查找所有 .csv 文件并使用制表符分隔它们。对于这样的输入:

col1    col2
data1    data2

logstash 输出(两行):

column1 => "col1\tcol2"
column1 => "data1\tdata2"

显然它没有正确解析它。看到前段时间有人提出这个问题here但没有解决办法。有谁知道这个问题是否已经解决或者是否有另一种方法可以解决?谢谢!

最佳答案

不是使用“\t”作为分隔符,而是输入一个实际的制表符。 像这样:

filter {
   csv {
    separator => "  "
   }
}

关于elasticsearch - logstash 制表符分隔符不转义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30915011/

相关文章:

Elasticsearch:产品变体价格建模和查询问题

elasticsearch - 是否可以合并以使用 ElasticSearch 从文档 A 和 B 创建文档 C

elasticsearch - 是否可以为文件拍配置多个输出?

Logstash grok 多次匹配失败

regex - 如何仅获取正则表达式 Grok 过滤器的第一个匹配项

json - 如何使用Logstash和Kibana分解JSON数据

elasticsearch - 只让一个 elasticsearch pod 出现在 Kubernetes 的一个节点上

ruby-on-rails - ELK stack + Filebeat 收集Rails日志

Logstash 在启动/重新启动时运行所有配置文件

elasticsearch - Elasticsearch脚本中的 map 问题 map 参数