如何在Kibana中配置索引模式

时间:2015-12-15 10:37:12

标签: elasticsearch kibana

我已将Kibana连接到我的ES实例。

cat / indices返回:

yellow open .kibana 1 1      1 0 3.1kb 3.1kb 
yellow open tests   5 1 413042 0 3.4gb 3.4gb 

但是我在kibana配置屏幕上得到以下内容。我错过了什么?

Kibana screenshot

更新:

enter image description here

我的示例文档如下所示

    "_index": "tests",
    "_type": "test7",
    "_id": "AVGlIKIM1CQ8BZRgLZVg",
    "_score": 1.7840601,
    "_source": {
       "severity": "ERROR",
       "code": "CODE,
       "message": "MESSAGE",
       "environment": "TEST",
       "error_uuid": "cbe99080-0bf3-495c-a417-77384ba0fd39",
       "correlation_id": "cf5a1fd5-4fd2-40bb-9cdf-405b91dcbd6f",
       "timestamp": "2015-11-20 15:24:39.831"

1 个答案:

答案 0 :(得分:14)

禁用选项Use event times to create index names并输入索引名称而不是模式(tests)。

当您拥有基于时间戳的索引名称时,可以使用您尝试使用的选项(假设您每天使用tests-2015.12.01创建一个新索引,tests-2015.12.02 ...)。如果您在启用该选项时阅读了该消息,则非常清楚:

  

模式允许您定义动态索引名称。索引名称中的静态文本使用括号表示。示例:[logstash-] YYYY.MM.DD。请注意,周数设置为使用从星期一开始的ISO周

编辑:时间字段名称中的空下拉列表的问题是因为您的索引映射中没有任何具有日期类型的字段。您实际上可以检查GET /<index-name>/_mapping?pretty是否timestamp是“字符串”类型而不是“日期”。发生这种情况是因为格式与regex for the date detectionyyyy/MM/dd HH:mm:ss Z||yyyy/MM/dd Z)不匹配。要解决这个问题:

  • 您可以更改要插入的时间戳的格式以匹配默认的正则表达式。
  • 您可以修改dynamic_date_format属性并添加与时间戳的当前格式匹配的正则表达式。
  • 您可以设置index template并为“timestamp”字段设置“日期”类型。

在任何情况下,您都需要删除索引并创建一个新索引或重新索引数据。