使用Regex解析思科系统日志

问题描述 投票:0回答:1

我有三种类型的日志要解析:

消息#1:为移动设备创建长度(253)的用户名条目([email protected])aa:aa:aa:aa:aa:aa

预期比赛:

消息#2:移动用户名条目(hello)aa:aa:aa:aa:aa:aa

预期比赛:

  • 你好
  • 这个:这个:这个:这个:这个

消息#3使用用户帐户登录的访客用户(randomnonexistentuser)MAC地址aa:aa:aa:aa:aa:aa,IP地址127.0.0.1。

预期比赛:

  • 随机不存在的用户
  • 这个:这个:这个:这个:这个
  • 127.0.0.1

到目前为止,我有这个正则表达式来识别MAC地址(在三个示例中的两个中标记为移动):https://regex101.com/r/qFE95M/14

我也有这个正则表达式......

(?P<IP_address>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})

...找到IP地址。但是,我不确定如何使该命名组可选并将其与MAC地址段绑定在一起。

最后,我有这个正则表达式......

^[^\(\n]*\((?P<user_account>[^\)]+)\)

...找到用户名(可以是电子邮件地址,单个单词等)。但同样,我不确定如何将其与其他两个命名组联系起来。

如何将这三个匹配调和在一起,以便在上面的三条消息中找到它们?

regex splunk
1个回答
1
投票

像这样的东西应该给你命名组中的所有东西:qazxsw poi

© www.soinside.com 2019 - 2024. All rights reserved.