在 ElasticSearch 索引中使用具有多个映射的不同时间字段名称

Use different time-field name with mutiple mappings in ElasticSearch index

我设置了一个 MongoDB、ElasticSearch 1.7.2 和 Kibana 4.1.2 堆栈 以便可视化来自 Mongo 集合的报告。我正在使用 Mongo-Connector 以便从 Mongo Redolog.

填充 Elastic Search 索引

我的设置:

我配置了数据库索引并使用 'createAt'(来自 Col1 Mongo 数据收集)作为 Kibana Indices 面板中的时间字段名称。

我想在 'Col2' 上可视化条形图,在 'Col2' 上使用特定日期范围进行过滤]>'startDate'时间字段。

我的问题:

  1. 是否可以使用 startDate 作为过滤器?我在 _msearch 生成的 ElasticSearch 请求中看到过滤器是为此索引设置的时间字段(即 createdAt)。我通过为 createdAt 指定最近 5 年找到了一个解决方法,以便不限制我在此时间字段值上的数据范围。
  2. 我可以在导出的 JSON 格式的 ES 请求中修改这些字段并重新导入吗?

在此先感谢您的帮助, 不要犹豫,询问更多信息。

每个 Kibana 索引模式都绑定到一个日期字段。因此,要使用第二个日期字段,您需要使用第二个索引模式。

我见过有人 "logstash-YYYY.mm.dd" 然后还有 "logstash-*"。

索引别名也有可能。

我刚刚找到了解决方案。

您只需将源和目标命名空间集指定为mongo连接器命令行参数:

mongo-connector -m bdd.myhost.fr:27017 -t reporting.myhost.fr:9200 -d elastic_doc_manager --auto-commit-interval=0 --namespace-set DB.Col1,DB.Col2 --dest-namespace-set DB_Col1.Col1,DB_Col2.Col2