1、网络设备、安全设备不同品牌、不同型号的设备,日志格式都不一样,那针对这种情况,我们可以使用工具grok debugger进行日志格式解析,具体的网址为:

地址:https://grokdebug.herokuapp.com/

也可以采用私有化部署:

docker 安装grokdebugger

docker pull qiudev/grokdebugger
docker run -d --name grokdebugger -p 19999:9999 qiudev/grokdebugger

这里我们是吧docker内端口9999映射到服务器19999上,这样,我们通过服务器的19999端口就能访问到:

http://XXX.XX.XX.XXX:19999

例:防火墙报文

2024-05-30T11:13:07+08:00 shibianjie-FW klogd: devid=0 date="2024/05/30 11:13:07" dname=XXXX-FW logtype=1 pri=5 ver=0.3.0 rule_name=pf1 mod=pf smac=XX:XX:XX:XX:XX:XX dmac=XX:XX:XX:XX:XX:XX svm= dvm= sa=XX.XX.XX.XXX sport=45751 type=NULL da=XX.XX.XXX.XXX dport=8080 code=NULL proto=IPPROTO_TCP policy=允许 duration=0 rcvd=60 sent=60 fwlog=0 dsp_msg="包过滤日志"

pattern模式匹配

%{timestamp:timestamp}\+\d{2}:\d{2}\s+%{hostname:hostname}\s*klogd:\s*devid=0\s*date="%{dates:dates}"\s*dname=%{dnames:dnames}\s*logtype=%{logtypes:logtypes}\s*pri=%{pris:pris}\s*ver=%{vers:vers}\s*rule_name=%{rule_names:rule_names}\s*mod=%{mods:mods}\s*smac=%{smacs:smacs}\s*dmac=%{dmacs:dmacs}\s*svm=\s*dvm=\s*sa=%{ipaddress:ipaddress}\s*sport=%{sports:sports}\s*type=NULL\s*da=%{daipaddress:daipaddress}\s*dport=%{dports:dports}\s*code=NULL\s*proto=%{protos:protos}\s*policy=%{policys:policys}\s*duration=%{durations:durations}\s*rcvd=%{rcvds:rcvds}\s*sent=%{sents:sents}\s*fwlog=%{fwlogs:fwlogs}\s*dsp_msg=%{dsp_msgs:dsp_msgs}

正则解析:

timestamp \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}
hostname  \S+
dates  \d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}
dnames  \S+
logtypes  \d{1}
pris  \d{1}
vers \d{1}.\d{1}.\d{1}
rule_names \S+
mods \S+
smacs  \S+
dmacs  \S+
ipaddress  \S+
sports  \S+
daipaddress  \S+
dports \S+
protos  \S+
policys  \S+
durations   \S+
 rcvds   \S+
sents  \S+
fwlogs  \S+
dsp_msgs  \S+
 

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部