我想從一個日誌行獲取一個浮點值,但logstash mutate過濾器將該值舍入並將其轉換爲整數。浮點值解析錯誤
日誌行是
f413e89e-8c2f-e411-97a5-005056820dbe|0,0033
和配置文件是
input {
file {
path => "log.txt"
}
}
filter {
grok {
match => ["message", "%{UUID:request_object_id}[/|]%{LOCALNUM:total_time}"]
}
mutate {
gsub => ["total_time", "[,]", "."]
convert => [ "total_time", "float" ]
}
}
output {
elasticsearch { host => localhost }
}
LOCALNUM
是一個自定義模式,它是
(?<![0-9.+-])(?>[+-]?(?:(?:[0-9]+(?:[,][0-9]+)?)|(?:[,][0-9]+)))
(使用 「」 而不是「 。「以浮點數表示)。
使用此配置,total_time
是0
而不是0.0033
。