2015-06-18 36 views
10

我有欲輸入到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,但沒有解決方案。有誰知道這個問題是否已經解決,或者有另一種方法可以做到嗎?謝謝!

回答

24

代替使用「\ t」的作爲分隔符,輸入實際的標籤。 是這樣的:

filter { 
    csv { 
    separator => " " 
    } 
} 
+0

非常感謝。現在看,這很明顯。 – Bob

+6

你得開玩笑......(當然,感謝+給予好評) –

+0

好,值得在配置文件中的註釋: '分離器=>「\t」#< - 這個空白實際上是一個標籤,不改變它,它已經很完美了' – robbmj