码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式清理日志

时间:2019-08-21 23:11:52      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:任务   多次   sage   timestamp   空格   host   usr   格式   cmd   

字段提取中正则表达式的使用:
提取日志中的信息格式:(?<字段名称>匹配具体信息的正则表达式)

日志样例:
<78> 2019-08-21T17:10:01.461970+08:00 localhost CROND: (root) CMD (/usr/lib64/sa/sa1 1 1)

正则表达式
\<(?<prl>\d+)\>\s+(?<timestamp>\S+)\s+(?<hostname>\S+)\s+(?<type>\S+)\s+(?<message>.*)

提取出78 时间信息 localhost CROND. 后面的信息合并
默认是以空格为分割符

提取78: \<(?<ptl>\d+)\>. \d:数字。 +:代表前面部分重复一个或者多次
匹配空格 \s+ 匹配多个空格,\s 任何空白字符,空格,制表,换页符等
提取时间:(?<\S+>) \S 与\s相反
提取主机名:(?<hostname>\w+) \w 包括下划线和任务单词数字 \W 与\w相反
提取type:(?<type>\S+)
最后信息一起合并:(?<message>.) . : 合并到行尾

拆分结果:

hostname:"localhost"

message:"(root) CMD (/usr/lib64/sa/sa1 1 1)"

prl:"78"

timestamp:"2019-08-21T17:10:01.461970+08:00"

type:"CROND:"

raw_message:"<78> 2019-08-21T17:10:01.461970+08:00 localhost CROND: (root) CMD (/usr/lib64/sa/sa1 1 1)"

正则表达式清理日志

标签:任务   多次   sage   timestamp   空格   host   usr   格式   cmd   

原文地址:https://blog.51cto.com/12182612/2431523

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!