使用ELK / Elastic Stack进行日志管理,我想基于这样的日志行构建报告:
2018-01-31 11:50:00.212 Loading the user images took 234 ms
2018-01-31 10:23:01.984 Loading the user images took 331 ms
2018-01-31 10:12:41.323 Loading the user images took 512 ms
因此,报告将采用字符串Loading the user images took
然后正则表达式将提取/took (\d+) ms/
中的数字并构建图表或通知。
我该怎么做?也许这涉及以某种方式定义索引?
答案 0 :(得分:1)
我会使用logstash grok过滤器。
https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html
使用此网站以用户友好的方式测试您的grok模式:
我制作了一个将ms提取到timeTaken字段的模式:
%{GREEDYDATA}took %{NUMBER:timeTaken}
如果您需要更多数据,请使用在线页面进行测试并搜索grok模式。可视化在Kibana完成。