2014-09-24 48 views
3

我想在logstash中將此日期結構YYYY-MM-DD_HH-MM-SS轉換爲YYYY-MM-DD HH:MM:SS。 這裏是我的過濾器:訪問logstash中的數組元素

filter { 


    csv { 
     separator => " " 

     columns => ["date","abc","xyz"] 
    } 

    mutate { 

     split => ["date", "_"] 
     gsub => [date[1]","-",":"] 
     join => [「date」, 「 」] 
    } 

} 

但我似乎無法訪問日期[1]雖然它的存在,從JSON結果sniipet:

    "date" => [ 
    [0] "2014-09-22", 
    [1] "02-35-56" ], 

什麼是正確的語法來訪問日期[1 ]?如果不存在,那麼轉換此日期結構的替代過濾器是什麼?

回答

4

你可以嘗試使用ruby過濾

filter{ 
    ruby { 
     code => " 
      temp = event['date'] 
      event['date'] = temp.split('_')[0] + ' '+ temp.split('_')[1].gsub('-',':') 
     " 
    } 
} 

使用Ruby代碼轉換的日期。

+1

謝謝!這工作完美。 – user1411110 2014-09-24 18:43:20