【入门第3课】Splunk字段提取

前言

Splunk 是一款功能强大的搜索和分析引擎,而字段是splunk搜索的基础,提取出有效的字段就很重要。

当Spklunk开始执行搜索时,会查找数据中的字段。与预定义提取指定字段不同,Splunk可以通过用户自定义从原始数据中动态提取字段。

一、字段提取器

1.1 访问字段提取器

执行事件搜索,左边栏往下,单击提取新字段,进入字段提取器。

1.2 选择示例

在事件列表中,选择一个需要进行字段提取的示例事件。

1.3 选择方法

提供了两种字段提取的方法:正则表达式分隔符。正则表达式主要用于非结构化数据;而基于表格的结构化数据,使用分隔符即可。

1.4 选择字段

选择需要字段提取的值,下面会出现对话框,对字段名称进行命名。一般我们也可手动编辑正则表达式进行调整。

1.5 验证

通过预览,以确认事件列表的匹配程序,从下图看到,第一次的选择字段还是有部分字段无法识别,那么我们可以进行第二次的字段提取

1.6 保存

在这一步,可以对提取名称和权限进行设置,点击完成来保存提取。

然后可以获取正则表达式

^\w+\s+\w+\s+\d+\s+\d+\s+\d+:\d+:\d+\s+\w+\d+\s+\w+\[\d+\]:\s+\w+\s+\w+\s+\w+\s+\w+\s+\w+\s+(?P<user>\w+) from (?P<ip>[^ ]+)

1.7 提取字段的例子

了解一下Linux secure日志中比较常见的登录日志,如下两条登录记录作为示例:

#失败登录
Thu Nov 05 2023 13:02:24 mailsv1 sshd[5276]: Failed password for invalid user appserver from 194.8.74.23 port 3351 ssh2
#成功登录
Thu Nov 05 2023 13:02:24 mailsv1 sshd[74181]: Accepted password for nsharpe from 10.2.10.163 port 4245 ssh2
#invalid user 登录
Thu Nov 05 2023 13:02:24 mailsv1 sshd[5276]: Failed password for invalid user appserver from 194.8.74.23 port 3351 ssh2

先做第一次的字段提取工作,我们针对1、2条进行提取,基本上他们的格式一致,提取后我们进行保存

但是“invalid user”则不能成功识别,需要针对它进行第二次的提取工作,都是提取相同的字段,保存

最后完成提取的结果如下:关于用户账号登录成功/失败的日志字段均能成功识别

最后可以在search上面验证一个字段识别的情况。

二 新字段提取

在Splunk Web中,提供了一种快速设置字段提取的方式,只需提供正则表达式,就可以直接完成新字段提取

2.1 新字段提取

(1)设置→ 字段提取→新字段提取

设置名称、sourcetype,写入正则表达式,点击保存即可。

2.2 查看字段提取规则

在字段提取页面中,搜索关键词,可找到刚才设置的字段提取规则。

三、使用搜索命令提取字段

通过搜索命令以不同方式提取字段,如rex、extract、xpath等。但这种方式仅适用于搜索过程中的返回的中间结果,无法新建字段重复使用。

sourcetype="secure-2" port  "failed password"
| rex field=_raw "(?P<user>\w+)\sfrom\s(?P<ip>[^ ]+)"
| table user,ip

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我只会Traceroute

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值