在kibana中聚合http日志路径列表

时间:2014-06-19 14:53:33

标签: nginx elasticsearch relative-path kibana access-log

我有一个nginx-> fluentd-> elasticsearch-> kibana堆叠并运行。试图弄清楚我是否可以像“条款”面板那样做一些事情但是使用日志中的路径字符串组件。直接使用术语面板会产生路径中最常用的单词,例如:对于drupal,它将“节点”显示为最受欢迎的节点,如果没有实际的节点ID则无用。

这与弹性搜索有关吗?

更新:以下是我的日志示例:

"path": "/node/123"
"path": "/node/456"
"path": "/user/create"

如果我为“path”字段添加“terms”面板,我会得到“node”,“user”,“create”的列,这些列没有统计意义。我需要的是一个术语面板,它汇总了唯一的字段值,而不是字段中唯一的单词部分。

1 个答案:

答案 0 :(得分:1)

您需要配置Elasticsearch的映射,以将“路径”字段设置为“未分析”字段。默认设置为“已分析”,默认情况下,ES会解析字符串字段并在可能的情况下将它们分成多个标记,这可能就是您的情况。请参阅this related question

至于如何配置Elasticsearch的映射,我还在挖掘,我想要能够排序的多令牌字符串本身有类似的问题。看起来会有一个put map API或使用配置文件的可能性,请参阅here