kibana做图表无法选取需要选的字段,即通过term的方式过滤选择某一个field时发现列表里无此选项。

 

再去discover里看,发现此字段前面带有问号,点击后提示这个字段未做索引,不能用于visualize和discover的搜索。

思考:

从源头查起,日志是logstash收集上来的,猜想可能原因是logstash需要按照某些规则添加这个索引,于是把目光聚焦到logstash的filter

这里我用的是grok,猜测是不是在message匹配后需要再用add_field添加才行。

尝试:

添加add_field后发现不行(确切的说是我add_field用的不太好,写的不对),然后百度相关grok格式发现,不需要添加add_field即可把字段作搜索使用。

尝试失败。

再思考:

排除logstash,后面就是elasticsearch了,这个本身基本未做改动,排除,再就是kibana,突然想到看看之间写的tomcat错误堆栈日志字段是否能正常可搜索,查看发现其日志字段时可以用的,反过头再去比对了下logstash底层发现两者写法和patterns定义均无区别,到了这里基本可以确定为kibana的设置问题了。

尝试:

查阅官方文档kibana相关配置位置,尝试查看了setting,果然发现在index里找到了相关项:

刷新后字段就被索引上了,相当于在kibana中如果索引建立后,再通过logstash添加新字段时,需要在这边刷新以更新状态(不知道重启kibana是否有同样效果,有时间可以尝试)。

之后便可正常使用此字段了。

至此问题解决。