首页 > 其他 > 详细

正则表达式清理日志

时间:2019-08-22 00:43:00      阅读:132      评论:0      收藏:0      [点我收藏+]
字段提取中正则表达式的使用:
提取日志中的信息格式:(?<字段名称>匹配具体信息的正则表达式)

日志样例:
<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)"

正则表达式清理日志

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!