1,简单例子介绍
首先提取自定义字段
rex field=_raw "customer-alert-(?
作用就是匹配正则,并把匹配的内容作为新的field,名为postcode。
然后规定时间长度为
timechart span=1mon count
最后以postcode为分组依据
timechart span=1mon count by postcode
Splunk对于分组会默认有一个限制,超过限制的部分会命名为Others,显然我们不需要Others,而是需要所有分组,邮编有超过两千个,直接粗暴一些,禁用others,然后最大长度限制为3000
useother=f limit=3000
[加入span参数来定义时间间隔为8h一次分隔统计]
2,对满足条件的事件进行统计
stats count() :括号中可以插入字段,主要作用对事件进行计数
stats dc():distinct count,去重之后对唯一值进行统计
stats values(),去重复后列出括号中的字段内容
stats list(),未去重之后列出括号指定字段的内容
stats avg(),求平均值
3,在用于制作图表的表格输出中返回结果。
chart count():
chart max() [求出最大值]
chart min() [求出最小值]
chart avg() [根据第一次的结果求出平均值]
rare, 显示字段出现次数最少的值
fields :保留或删除搜索结果中的字段。fields – xx 删除xx字段,保留则不需要 – 符号
rex field=待提取数据的字段 "正则表达式"
注意,正则表达式中一定要给提出的字段定义名称, ?