Kibana 发现选项卡不反映实时日志。
Kibana discover tab doesn't reflect the real-time logs.
我在一个虚拟机上安装了一个 ELK,其中包含 Elastic Search、LogStash 和 Kibana 运行。日志是使用来自另一个 VM 的 filebeat 从另一个服务发送的。
Elastic Search 版本为:0:6.2.4-1
我在 Kibana 中启用了自动刷新,每 5 秒刷新一次,还选择了最后 15 分钟 window 来显示日志。
问题:
启动 file beat 后,它会立即开始传送日志。我可以从文件节拍日志中看到这一点。但是,新日志只有在延迟一段时间后才会反映在 Kibana 中。行为不一致,在某些情况下我可以看到长达 30 分钟的延迟。这是预期的吗?
如果禁用 Kibana 屏幕刷新(即从 5 秒更改为 "off"),请等待 15 分钟,然后重新启用刷新(从 "off" 至 5 秒)。应该是什么行为?所有这 15 分钟,log stash 和 ES 实际上都在接收日志,只是禁用了 Kibana 刷新。
a) 它会快速显示前 15 分钟的日志并开始实时显示新日志吗?
b) 还是这 15 分钟的延迟继续存在?我的意思是,从现在开始,我们是否总是在 Kibana 上看到延迟 15 分钟的日志?
当File beat进程停止后,Kibana仍然会显示一些日志并不断刷新。我的期望是,一旦 File beat 停止,kibana 上的日志刷新也应该以较小的延迟(以秒为单位)停止。但我看到日志刷新在接下来的 1 小时左右继续发生。为什么 Kibana 有这种行为?我错过了什么吗?我还观察到,当 Kibana 没有任何新日志可显示时,我认为它显示的是旧日志。不能 100% 确定,但这会发生吗?
我搜索了 google 和 stack over flow,但实际上无法获得任何有用的信息。快速解释和解决方案或任何 pointers/links 来帮助解决这个问题对我来说都是有用的。
谢谢。
- logstash 接收日志(在您的情况下,来自 filebeats)并将它们发送到 elasticsearch,可能会对日志进行一些过滤或解析。默认情况下,日志将以logstash收到日志的日期保存在elasticsearch中;此默认日期可以替换为从日志中解析的日期(在
timestamp
字段中)。
- elasticsearch 保存日志并且可以returns 按需
- kibana 根据其参数在 elasticsearch 中检索日志,在您的情况下,从过去 15 分钟
timestamp
开始的日志
回答您的问题:
- 我不知道为什么,我需要更多信息。你应该问一个更详细的问题(配置、示例日志、Kibana 中显示的数据)
- kibana 的
Last 15 min
要求弹性搜索从现在到现在 - 15 分钟之间 timestamp
的日志。所以这将是 c) kibana 实时显示日志,忽略在现在 15 分钟之前收到的日志。
- Kibana 中的日志刷新将继续,直到您要求它停止,logstash 停止接收新日志不会停止 kibana 自动刷新。从现在到现在 - 15 分钟,Kibana 将继续向 elasticsearch 询问
timestamp
的日志。因此,如果 kibana 在 filebeat 停止后 15 分钟后继续显示日志,则意味着未来有时间戳的日志。
请注意,您不应该在一个 Whosebug 问题中提出多个问题。
我在一个虚拟机上安装了一个 ELK,其中包含 Elastic Search、LogStash 和 Kibana 运行。日志是使用来自另一个 VM 的 filebeat 从另一个服务发送的。
Elastic Search 版本为:0:6.2.4-1
我在 Kibana 中启用了自动刷新,每 5 秒刷新一次,还选择了最后 15 分钟 window 来显示日志。
问题:
启动 file beat 后,它会立即开始传送日志。我可以从文件节拍日志中看到这一点。但是,新日志只有在延迟一段时间后才会反映在 Kibana 中。行为不一致,在某些情况下我可以看到长达 30 分钟的延迟。这是预期的吗?
如果禁用 Kibana 屏幕刷新(即从 5 秒更改为 "off"),请等待 15 分钟,然后重新启用刷新(从 "off" 至 5 秒)。应该是什么行为?所有这 15 分钟,log stash 和 ES 实际上都在接收日志,只是禁用了 Kibana 刷新。 a) 它会快速显示前 15 分钟的日志并开始实时显示新日志吗? b) 还是这 15 分钟的延迟继续存在?我的意思是,从现在开始,我们是否总是在 Kibana 上看到延迟 15 分钟的日志?
当File beat进程停止后,Kibana仍然会显示一些日志并不断刷新。我的期望是,一旦 File beat 停止,kibana 上的日志刷新也应该以较小的延迟(以秒为单位)停止。但我看到日志刷新在接下来的 1 小时左右继续发生。为什么 Kibana 有这种行为?我错过了什么吗?我还观察到,当 Kibana 没有任何新日志可显示时,我认为它显示的是旧日志。不能 100% 确定,但这会发生吗?
我搜索了 google 和 stack over flow,但实际上无法获得任何有用的信息。快速解释和解决方案或任何 pointers/links 来帮助解决这个问题对我来说都是有用的。
谢谢。
- logstash 接收日志(在您的情况下,来自 filebeats)并将它们发送到 elasticsearch,可能会对日志进行一些过滤或解析。默认情况下,日志将以logstash收到日志的日期保存在elasticsearch中;此默认日期可以替换为从日志中解析的日期(在
timestamp
字段中)。 - elasticsearch 保存日志并且可以returns 按需
- kibana 根据其参数在 elasticsearch 中检索日志,在您的情况下,从过去 15 分钟
timestamp
开始的日志
回答您的问题:
- 我不知道为什么,我需要更多信息。你应该问一个更详细的问题(配置、示例日志、Kibana 中显示的数据)
- kibana 的
Last 15 min
要求弹性搜索从现在到现在 - 15 分钟之间timestamp
的日志。所以这将是 c) kibana 实时显示日志,忽略在现在 15 分钟之前收到的日志。 - Kibana 中的日志刷新将继续,直到您要求它停止,logstash 停止接收新日志不会停止 kibana 自动刷新。从现在到现在 - 15 分钟,Kibana 将继续向 elasticsearch 询问
timestamp
的日志。因此,如果 kibana 在 filebeat 停止后 15 分钟后继续显示日志,则意味着未来有时间戳的日志。
请注意,您不应该在一个 Whosebug 问题中提出多个问题。