小编mai*_*igl的帖子

在fluentd中测量两个事件之间的经过时间

我正在寻找一种使用 fluentd 测量事件之间经过时间的方法。能够合并两个或多个事件也很棒。

到目前为止,我一直在使用logstash。我在 logstash 中的用例有两个插件:

我只是不知道如何在 fluentd 中做到这一点。我在这里错过了什么?

例子:

我有一个包含进程日志的文本文件,如下所示:

Fri May  8 05:00:00 GMT 2015: start subprocess 1 with param p
Fri May  8 05:10:42 GMT 2015: some other message
Fri May  8 05:11:44 GMT 2015: doing more stuff
Fri May  8 05:10:00 GMT 2015: end subprocess 1
Run Code Online (Sandbox Code Playgroud)

我的目标是根据事件的时间戳来衡量完成子流程 1 所花费的时间。这可以使用 logstash 中的 elapsed 过滤器轻松完成,但我不知道如何在 fluentd 中解决这个问题。

我想要一个 :

2015-05-08 05:10:00 parsed: {"message":"end subprocess 1","elapsed.time":"10.0"}
Run Code Online (Sandbox Code Playgroud)

.. 甚至更好我想合并事件的一些字段(例如来自开始事件的参数):

2015-05-08 05:10:00 parsed: {"message":"end subprocess 1","elapsed.time":"10.0", "param": …
Run Code Online (Sandbox Code Playgroud)

merge duration elapsed fluentd

5
推荐指数
0
解决办法
340
查看次数

标签 统计

duration ×1

elapsed ×1

fluentd ×1

merge ×1