elasticsearch &引用;(键)字段[@timestamp]未找到“;重新启动elasticsearch节点后,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" /> elasticsearch &引用;(键)字段[@timestamp]未找到“;重新启动elasticsearch节点后,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana" />

elasticsearch &引用;(键)字段[@timestamp]未找到“;重新启动elasticsearch节点后

elasticsearch &引用;(键)字段[@timestamp]未找到“;重新启动elasticsearch节点后,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana,我试图使用logstash将文档输入elasticsearch,然后使用kibana web界面查询。我目前正在运行一个由logstash提供的elasticsearch节点,跟踪apache访问日志以进行测试,这样我就可以在扩展到集群中的多个elasticsearch节点以及使用logstash跨多个主机和服务进行日志聚合之前,了解如何使用logstash和elasticsearch 昨晚,我通过使用logstash向其提供文档,成功地构建了一个ES数据库,并且我能够使用kibana对其进行查

我试图使用logstash将文档输入elasticsearch,然后使用kibana web界面查询。我目前正在运行一个由logstash提供的elasticsearch节点,跟踪apache访问日志以进行测试,这样我就可以在扩展到集群中的多个elasticsearch节点以及使用logstash跨多个主机和服务进行日志聚合之前,了解如何使用logstash和elasticsearch

昨晚,我通过使用logstash向其提供文档,成功地构建了一个ES数据库,并且我能够使用kibana对其进行查询。但是,今天,当我再次启动ES节点时,我在尝试运行查询时看到以下错误:

[2014-10-10 13:11:53,437][DEBUG][action.search.type       ] [Madam Slay] All shards failed for phase: [query]
(完整日志可用。)

我的节点的运行状况似乎很好:

[pitserver ~/local/tmp/elasticsearch-1.3.4]% curl -XGET "http://localhost:9200/_cluster/health?pretty=true"
{
  "cluster_name" : "elasticsearch",
  "status" : "yellow",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 2520,
  "active_shards" : 2520,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 2520
}
我多次尝试重新启动节点。
data
目录表面上包含与昨天相同的数据

在进一步了解kibana如何查询elasticsearch后,我认为日志文件中最相关的错误是:

(key) field [@timestamp] not found
我了解到,在尝试绘制包含与elasticsearch中现有logstash索引不对应的日期的直方图时,会弹出此错误。我找到了一个新的工作。解决方法是只根据与elasticsearch数据库中现有日志存储索引相对应的日期绘制直方图

对我来说没有意义的是,我昨天能够通过timestamp字段进行查询。但是在重新启动elasticsearch集群后,elasticsearch现在遇到了时间戳字段不存在的问题


为什么我只在重新启动elasticsearch后才看到此问题?

您有等量的未分配碎片,这些碎片看起来像复制品?尝试禁用复制副本以返回到绿色的群集状态,然后重试是我的建议。

请解释如何执行此操作,以及为什么您认为删除复制碎片会有所帮助?我对elasticsearch.curl-XPUT'localhost:9200/my_index/_settings'-d'{“index”:{“number_of_replications”:0}非常陌生,我假设这将禁用所有副本碎片?为什么你认为运行这个会帮我解决问题?问题似乎更多地与从kibana运行的查询有关,而不是与我的elasticsearch数据库中的碎片有关。