如何在splunk正则表达式

时间:2016-04-19 08:42:21

标签: regex splunk

我正在尝试提取与特定模式匹配的所有事件的报告,然后需要绘制每种类型的出现次数。例如下面的行。

File: ../../../transfer/200.FILETYPE1.0000003115.20160419-082708-089.xml successfully imported.
some other logs....
File: ../../../transfer/200.FILETYPE1.0000003116.20160419-082708-090.xml successfully imported.
some other logs...
File: ../../../transfer/201.FILETYPE2.0000003117.20160419-082708-091.xml successfully imported.

请注意,有很多文件类型,但模式相同" / transfer /"前缀和"成功导入。"后缀和这些前缀和后缀必须匹配,因为其他行在完成之前也可能包含相同的文件名。

所以在上面的例子中,我需要找到上面所有这些行,并在splunk中找到每个FILETYPE1和FILETYPE2的计数。

有人可以帮助我使用可以匹配上述模式的正则表达式并给我所有这些行,以便我可以提取每种文件类型的计数吗?

3 个答案:

答案 0 :(得分:0)

直接前进:

^File:.*FILETYPE\d.*$
# ^ beginning of the line
# File: literally
# .* anything to the end of the line
# FILETYPE + a number literally
# .* anything afterwards
# $ the end of the line

请参阅a demo on regex101.com 提示 :如果您只有这两个字符串(FILETYPE1FILETYPE2),那么仅使用字符串函数可能会更快。

答案 1 :(得分:0)

修改FILETYPE1 / FILETYPE2进行点算

\.\.\/.*\/\d+\.FILETYPE1\..*?\.xml

Regex demo

答案 2 :(得分:0)

试试这个:

\/transfer\/.*FILETYPE(\d+).*successfully imported

捕获组将捕获文件类型编号,因此您可以计算文件出现次数

Regex Demo