【问题标题】:Re-queue a Logstash event重新排队 Logstash 事件
【发布时间】:2018-07-23 13:05:09
【问题描述】:

是否可以重新排队 Logstash 事件以在一段时间内再次处理?

为了说明我的意思,我将解释我的用例:我有一个自定义 Logstash 过滤器,它在应用程序启动时从日志中提取应用程序版本,然后将正确的版本附加到每个日志事件。然而,在一开始,当应用程序版本尚未写入文件时,可能会发生竞争条件,但 Logstash 过滤器无论如何都会尝试读取数据(因为它同时处理日志行)。这会导致应用程序版本为空。以防万一,Logstash 从 Filebeat 获取输入。

当应用程序版本保存到磁盘后,我想将这些事件重新排队,以便在几秒钟(或几毫秒)后完全重新处理。

然而,这让我想到了一个更广泛的问题,即您能否告诉 Logstash 事件重新排队,或者是否有替代解决方案来解决这种情况?

感谢您的帮助!

【问题讨论】:

    标签: elasticsearch logstash elastic-stack filebeat


    【解决方案1】:

    处理数据并附加到一个新文件中,然后使用该文件进一步处理数据。

    • Lo​​gstash 处理器 - 1 个 Geat 数据处理数据并附加到文件中。
    • Lo​​gstash 处理器 - 2 从第二个文件中获取数据并执行任何操作 想做。

    【讨论】:

    • 这对我来说似乎有点像 hack。我的意思是我可以建立自己的队列,我更想知道是否存在一种方法来处理这些事情。此外,这需要两个 Logstash 实例,这是我想要避免的。
    • 目前还没有类似的东西或我不知道的东西
    • 或者其他你可以使用弹性搜索输入插件的东西,计划每小时运行一次,或者你决定什么时候运行。
    猜你喜欢
    • 2020-07-21
    • 1970-01-01
    • 2012-07-10
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 2020-01-18
    • 1970-01-01
    • 2010-09-15
    相关资源
    最近更新 更多