捞取日志中出现的人名和签名信息次数
#!/bin/bash
log_file='/wxqyh/service/portal/logs/log4j.log.2025-07-03'
#读取姓名
grep -B 3 '\[国密验签接口\]调用成功,返回状态失败' ${log_file} |grep "请求报文" |awk -F ':' '{print $4}'|awk -F ',' '{print $1}' > name.txt
#获取signature
grep -B 3 '\[国密验签接口\]调用成功,返回状态失败' ${log_file} |grep "请求报文" |awk -F ':' '{print $NF}'|awk -F '}' '{print $1}' > signature.txt
#统计失败次数
total_count=`grep '\[国密验签接口\]调用成功,返回状态失败' ${log_file} |wc -l`
echo -e "\033[33m 总次数:${total_count} \033[0m"
echo ""
# 统计每个名字出现的次数
echo "各名字出现次数统计:"
sort name.txt | uniq -c | while read count name
do
printf "%-20s %d次\n" "$name" "$count"
done
echo ""
# 统计每个signature出现的次数
echo "各signature出现次数统计:"
sort signature.txt | uniq -c | while read count signature
do
printf "%-20s %d次\n" "$signature" "$count"
done
作者:wiki 创建时间:2025-07-07 15:58
最后编辑:wiki 更新时间:2025-07-07 15:58
最后编辑:wiki 更新时间:2025-07-07 15:58