如何使用logstash读取日志中的数据?
How to read data in logs using logstash?
我刚刚开始日志存储,我在日志文件中有日志文件,整个对象都打印在日志中,因为我的对象很大,我不能将 grok 模式写入整个对象,而且我只期望两个值从那些对象中。你能告诉我们我怎样才能得到它吗?
我的日志文件如下所示
2015-06-10 13:02:57,903 你完成的 OBJ[name:test;loc:blr;country:india,acc:test@abe.com]
这只是一个示例,我的对象在 int 中有很多属性,在这些对象中我只需要获取名称和 acc。
问候
莫涵.
您可以使用以下模式进行相同的操作
%{GREEDYDATA}\[name:%{WORD:name};%{GREEDYDATA},acc:%{NOTSPACE:account}\]
GREEDYDATA 我们定义如下 -
GREEDYDATA .*
关键在于理解greedydata宏。
它尽可能吃掉所有可能的字符。
Logstash 模式不必匹配整行。您还可以在一个 grok{} 中提取主要信息(日期、时间等),然后使用不同的 grok{} 提取您想要的两个字段。
我刚刚开始日志存储,我在日志文件中有日志文件,整个对象都打印在日志中,因为我的对象很大,我不能将 grok 模式写入整个对象,而且我只期望两个值从那些对象中。你能告诉我们我怎样才能得到它吗?
我的日志文件如下所示
2015-06-10 13:02:57,903 你完成的 OBJ[name:test;loc:blr;country:india,acc:test@abe.com]
这只是一个示例,我的对象在 int 中有很多属性,在这些对象中我只需要获取名称和 acc。
问候 莫涵.
您可以使用以下模式进行相同的操作
%{GREEDYDATA}\[name:%{WORD:name};%{GREEDYDATA},acc:%{NOTSPACE:account}\]
GREEDYDATA 我们定义如下 -
GREEDYDATA .*
关键在于理解greedydata宏。 它尽可能吃掉所有可能的字符。
Logstash 模式不必匹配整行。您还可以在一个 grok{} 中提取主要信息(日期、时间等),然后使用不同的 grok{} 提取您想要的两个字段。