**现象**
ELK 环境,filebeat 从 PostgreSQL 读取日志后由 Logstash 分析再传到 ES 里,在 Kibana 里搜索数值比较的条件时,匹配的结果和预期的不一样
想比较大值是执行语句的用时,以毫秒为单位,2-3 位小数,在 KQL 里搜索时不管输的数值多大,它都能匹配到
比如我搜索 postgresql.log.duration > 30000000,应该是搜索到大于 30000000 毫秒的结果,但是不管是 123.12 毫秒的,还是 1234.12 毫秒的,都能匹配到,有大神知道是咋回事吗?
**Logstash 里的 Grok 语句**
%{NU美国服务器MBER}和%{BASE16FLOAT}都试过了,都不行
"message" => "^%{LOCALDATETIME:[postgresql][log][timestamp]} %{WORD:[postgresql][log][timezone]} \[%{NUMBER:[postgresql][log][thread_id]}(-%{BASE16FLOAT:[postgresql][log][core_id]})?\] ((\[%{USERNAME:[user][name]}\]@\[%{POSTGRESQL_DB_NAME:[postgresql][log][database]}\]|%{USERNAME:[user][name]}@%{POSTGRESQL_DB_NAME:[postgresql][log][database]}) )?%{WORD:[postgresql][log][level]}: (duration: %{BASE16FLOAT:[postgresql][log][duration]} ms ?%{DATA:[postgresql][log][cmd_type]}: %{GREEDYDATA:[postgresql][log][query]})"