概要: 次のような日付形式のログがあります。
2013/05/09-05:19:16.772
ここで、logstash を使用して、これらのログをエラスティック サーチに送信したいと考えています。しかし、問題は、タイムスタンプの値を現在の時刻ではなく、ログの値にする必要があることです。
そのため、以下のように書いています。これは次のように言って失敗します:
Invalid format: "2013/05/09-05:19:16.876" is malformed at "/05/09-05:19:16.876", :backtrace=>["org.joda.time.format.DateTimeFormatter.parseDateTime(DateTimeFormatter.java:866)"
私のconfファイルは次のとおりです。
input {
stdin {
type => "stdin-type"
}
}
filter {
grok {
type => "stdin-type"
patterns_dir=>["./patterns"]
pattern => "%{PARSE_ERROR}"
add_tag=>"%{type1},%{type2},%{slave},ERR_SYSTEM"
}
date {
type => "stdin-type"
match=>["ts","yyyy/mm/dd-HH:mm:ss.SSS"]
locale=>"en"
}
mutate {
type=>"stdin-type"
replace => ["@message", "%{message}" ]
replace => ["@timestamp", "%{ts}" ]
}
}
output {
stdout { debug => true debug_format => "json"}
elasticsearch { }
}
私は本当にここで立ち往生しています。専門家の助けが必要です。
ありがとう。