在接ip-guard的数据时候,有一项MAC地址,需要在得到的MAC地址字段把每两个字符中间加上"-";由于使用Logstash接的,所以我在filter段直接使用ruby进行修改,下面是filter段:
filter{
ruby{
code => "event['message']=event['message'].gsub((/\w\w/),'\0-').chomp('-')"
}
}
逻辑很简单,用\w\w匹配到两个字符,并括号括起来作为第一个分组,用"\0-"得到第一个分组的内容(即两个字符)在加上横杠进行替换;最后再把末尾多余的"-"去掉,效果如下图: