我是ELK Stack的新手,并尝试设置仪表板来分析我的apache访问日志。设置环境并显示来自我的日志文件的数据都有效。但似乎Kibana错误地使用空格(以及另一个仪表板冒号和缺点)作为分隔符。
前两个屏幕截图显示我的属性“server_node”中的信息是正确的。
可悲的是,这个显示每个空格标志都用作分隔符。因此,在server_node中看到的不是“Tomcat Website Prod 1”或“Tomcat Website Prod 2”,而是有太多条目,因此伪造我的图形。
这是我的小部件设置。如上所述,我是ELK的新手,因此没有那么多知识来设置好的仪表板。
你们有没有人设置kibana来分析apache访问日志,并且可以给我一个关于如何设置富有表现力的仪表板的提示,或者可以给我一个样本仪表板用作模型吗?
感谢您的帮助,时间和问候,Sebastian
答案 0 :(得分:1)
您遇到的基本问题是默认情况下字符串为analyzed
- 这是您在文本搜索引擎中所需的内容,而不是您在分析类型情况下所需的内容。在加载之前,您需要将字段设置为not_analyzed
。
如果您使用logstash 1.3.1或更高版本加载数据,则应该可以将字段更改为server_node.raw
(请参阅http://www.elasticsearch.org/blog/logstash-1-3-1-released/):
在这种情况下,大多数人都会坐下来挠头,对吗?我知道我是第一次做的。我非常肯定“docs”和“集中”在logstash.net网站上不是有效路径!这里的问题是饼图是从术语方面构建的。使用elasticsearch中的默认文本分析器,像“/docs/1.3.1/filters/”这样的路径变为3个术语{docs,1.3.1,filters},所以当我们要求术语方面时,我们只能获得单个术语!
索引模板救援!我们提供的logstash索引模板为您索引的每个字段添加了“.raw”字段。这些“.raw”字段由logstash设置为“not_analyzed”,因此不会进行分析或标记化 - 我们的原始值按原样使用!如果我们更新上面的饼图而不是使用“request.raw”字段,我们会得到以下结果: