最近我一直面临与多行事件有关的问题,并且我需要一点帮助。我的系统日志服务器正在发送多行事件。一个事件收集多行,并且证明特定事件行的指示符是多行事件的一部分,它是一个定义用户连接会话的随机数。这里是一个自定义生成的日志文件:如何根据随机字段管理多行事件Logstash
Feb 16 17:29:04 slot1/APM-LTM notice apd[5515]: 01490010:5: 1ec2b273:Username 'cjones'
Feb 16 17:29:04 slot1/APM-LTM warning apd[5515]: 01490106:4: 1ec2b273: AD module: authentication with 'cjones' failed: Preauthentication failed, principal name: [email protected] Invalid user credentials. (-1765328360)
Feb 16 17:10:04 slot1/APM-LTM notice apd[5515]: 01490010:5: d8b5a591: Username 'gbridget'
Feb 16 17:10:04 slot1/APM-LTM err apd[5515]: 01490107:3: d8b5a591: AD module: authentication with 'gbridget' failed: Clients credentials have been revoked, principal name: [email protected] User account is locked (-1765328366)
Feb 16 17:29:04 slot1/APM-LTM notice apd[5515]: 01490005:5: 1ec2b273: Following rule 'fallback' from item 'AD Auth' to ending 'Deny'
Feb 16 17:29:04 slot1/APM-LTM notice apd[5515]: 01490102:5: 1ec2b273: Access policy result: Logon_Deny
以上是有关由以下用户会话定义两个不同的连接线:d8b5a591(用户gbridget)和1ec2b273(用户cjones)。用户会话是将这些线路连接到两个不同事件的唯一指标。更不用说线上事件是交织在一起的。
问题是,我不知道如何解释上述与多行插件grok过滤器,知道后者提供的选项太少。事实上,例如“上一行”和“下一行”这一概念不适用于此,因此不能使用grok选项“模式”和“什么”,因为事件不一定是连续的。
我真的很感激,如果有人能够对此作出一些解释并告诉我,至少它是否可行。
也许你可以使用这个:https://www.elastic.co/guide/en/logstash/current/plugins-filters-aggregate.html – jogaco
这实际上是我很久以前使用的:)而且它工作得很好。无论如何感谢您的回答。 – jpry