elasticsearch 为什么ElasticSearch有时不';不显示Logstash发送的最新日志?
我的Logstash将日志发送到ElasticSearch,在Logstash输出文件中,我看到发送了新日志,但在Kibana Discover页面中单击refresh时,这些日志不会显示。发现页面显示约1小时前的日志 是什么导致了这个问题? 有没有办法检查记录是否在ElasticSearch中而不是使用Kibana 我的日志文件中的时间戳如下:[2020-09-02 13:53:07392Z] 这是pipeline.yml我的日志库使用的:elasticsearch 为什么ElasticSearch有时不';不显示Logstash发送的最新日志?,elasticsearch,logstash,kibana,elasticsearch,Logstash,Kibana,我的Logstash将日志发送到ElasticSearch,在Logstash输出文件中,我看到发送了新日志,但在Kibana Discover页面中单击refresh时,这些日志不会显示。发现页面显示约1小时前的日志 是什么导致了这个问题? 有没有办法检查记录是否在ElasticSearch中而不是使用Kibana 我的日志文件中的时间戳如下:[2020-09-02 13:53:07392Z] 这是pipeline.yml我的日志库使用的: input { #stdin {}
input {
#stdin {}
beats {
port => "5055"
}
# file {
}
filter {
grok {
patterns_dir => "C:\logstash-7.4.2\patterns"
match => { "message" => "^\[%{TIMESTAMP_ISO8601:timestamp}\]\[%{LOGLEVEL:level}\]\[%{Thread:thread}\]\[%{JAVACLASS:class}\](\[\d*\])? %{GREEDYDATA:msg}" }
}
if "_grokparsefailure" in [tags] {
drop{}
}
}
output {
file {
path => "C:\logstash-7.4.2\logstash_output.txt"
}
elasticsearch {
hosts => [ "localhost:9200" ]
index => "ts_services-%{+YYYY.MM.dd}"
}
}
我删除了现有的索引模式并创建了一个新的索引模式后,看到了最新的日志。但我不认为这是解决方案。请遵循评论中的讨论。 这是一个非常普遍的问题 Kibana中的索引模式非常具体:
ts_services-2020-08*
所以九月份的数据被Kibana忽略了,即使他们在Elasticsearch中
更改Kibana索引模式将解决此问题:
ts_services*
但您必须更正所有自定义可视化。这可能是时间戳问题。Kibana在浏览器时区中解释时间戳,因此如果日志末尾没有时区,它们可能无法正确显示。您能否显示日志文件中的时间戳以及日志存储配置的外观?与日志存储/Kibana中使用别名的方式相比,日志存储命名约定也可能存在问题。您还可以添加索引设置吗?@Val我在我的问题中添加了时间戳格式和Logstash配置。@Logstash yml文件中的Jaycreation索引设置现在是我的问题。刚刚发现Kibana中定义的默认索引模式的月份为08:someservice-2020.08*。删除“08”后,最新日志显示在Kibana中。谢谢@Jaycreation。