当前位置: 首页 > news >正文

LinuxShell处理日志文件_批量分析技巧说明

Linux Shell 处理日志文件的批量分析,核心在于“用对命令、串好流程、避开陷阱”。不需要写脚本也能高效完成,关键是掌握 grep、awk、sed、sort、uniq、cut 这几个命令的组合逻辑和常见日志结构特征。

按时间范围快速筛选日志行
多数日志(如 nginx、systemd、应用自定义日志)首字段是时间戳。直接用 awk 提取并比对,比逐行 grep 更稳:

提取今天凌晨到现在的 Nginx 访问日志:
awk -F'[' '$2 ~ /^$(date -d "today" +%d/%b/%Y):[0-9]{2}:[0-9]{2}/ {print}' /var/log/nginx/access.log
更通用做法:先用 sed 提取含日期的行,再用 grep 精确匹配(例如只看 10 月 25 日):
sed -n '/25/Oct/2024/p' app.log | grep 'ERROR|WARN'
统计高频错误或接口调用
目标不是“看到错误”,而是“知道哪类错误最多、哪个路径最常出问题”:
统计 HTTP 状态码分布(Nginx 日志第 9 字段):
awk '{print $9}' access.log | sort | uniq -c | sort -nr
提取并统计报错行中的关键词(如 Java 异常类名):
grep 'Exception|ERROR' app.log | awk -F':' '{print $NF}' | awk '{print $1}' | sort | uniq -c | sort -nr | head -10
提取关键字段做横向对比
日志里混着 IP、URL、响应时间、用户 ID 等信息,用 cut 或 awk 定位后,可导出为简易表格用于排查:
导出耗时超 2 秒的请求(假设第 10 字段是 $request_time):
awk '$10 > 2 {print $1, $7, $10, $9}' access.log | column -t
按 IP 统计请求数 + 最长响应时间:
awk '$10 > 0 {ip[$1]++; max[$1] = ($10 > max[$1]) ? $10 : max[$1]} END {for (i in ip) print i, ip[i], max[i]}' access.log | sort -k2 -nr
合并多日志文件统一分析
滚动日志(如 app.log、app.log.1、app.log.2.gz)不能靠手动解压拼接:
自动处理当前目录下所有相关日志(含 gzip):
zcat app.log*gz 2>/dev/null; cat app.log app.log.1 2>/dev/null | awk '/POST /api/order/ && $9 ~ /^5../ {print $1, $7, $9}'
避免重复分析:用 awk '!seen[$0]++' 去重(适用于误重复写入场景):
zcat *.gz | cat - app.log | awk '!seen[$0]++' | grep 'OutOfMemoryError'
不复杂但容易忽略:日志字段分隔符是否一致、时间格式是否跨时区、gzip 文件权限是否可读。动手前先 head -3 和 file 看一眼,省掉大半调试时间。
http://rolex.richardshwx.com/
http://bj-rolex.richardshwx.com/
http://sh-rolex.richardshwx.com/
http://szs-rolex.richardshwx.com/
http://gz-rolex.richardshwx.com/
http://cd-rolex.richardshwx.com/
http://hz-rolex.richardshwx.com/
http://sz-rolex.richardshwx.com/
http://wh-rolex.richardshwx.com/
http://cq-rolex.richardshwx.com/
http://cs-rolex.richardshwx.com/
http://nj-rolex.richardshwx.com/
http://nb-rolex.richardshwx.com/
http://tj-rolex.richardshwx.com/
http://qd-rolex.richardshwx.com/
http://wx-rolex.richardshwx.com/

http://www.zskr.cn/news/158982.html

相关文章:

  • 153_尚硅谷_切片的内存布局分析
  • 工业级三维激光传感器厂家TOP5:技术创新+应用案例 - 品牌排行榜
  • FreeSWITCH带依赖模块的makefile.am
  • PC实心板性能测评:光学级品质 + 长期稳定性(检测报告) - 品牌排行榜
  • 用Arduino + DAC8031打造心电信号模拟器
  • 2025最新清障车技术排行,引领行业变革,二手蓝牌平板拖车/重型清障车/3万左右清障车/蓝牌重载清障车/五十铃清障车企业哪个好 - 品牌推荐师
  • 国内仿威图机柜定制厂家:ES独立式+KP可拼装(2025推荐榜) - 品牌排行榜
  • 毕业论文调查用什么平台?数据导出与统计体验测试 - 品牌排行榜
  • 工业视觉检测技术企业盘点:深度学习+边缘计算 - 品牌排行榜
  • 2025年沉水罗茨风机厂家实力推荐:增氧曝气风机/河道治理风机/离心沉水风机源头厂家精选 - 品牌推荐官
  • 2025-2026年口碑好的烟尘在线监测仪制造商推荐:哪家做得好+哪家性价比高+知名品牌 - 品牌推荐大师1
  • 【大模型自动化新纪元】:Open-AutoGLM三大引擎驱动智能演进
  • 漫剧创作者版权保护全攻略:从权属认证到侵权取证,可信时间戳+权利卫士实操指南
  • PC实心板品牌影响力:29年市场验证 + 用户口碑(品牌价值) - 品牌排行榜
  • 大模型面试题19:梯度消失梯度爆炸 公式版
  • 2025年GEO优化服务商TOP5权威榜单:解码AI时代流量增长新引擎 - 品牌测评鉴赏家
  • 2026日本房产靠谱房产中介首选:新岸线自有房源+物业托管 - 博客万
  • Java计算机毕设之Java毕设选题推荐:基于springboot的汽车租赁管理系统springboot汽车租赁基于springboot的汽车租赁管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • 不出国门完成资产配置:新岸线解答中国人如何在日本买房子 - 博客万
  • GraniStudio:轴复位例程
  • 【课程设计/毕业设计】基于SpringBoot+Vue的汽车租赁系统基于springboot的汽车租赁管理系统【附源码、数据库、万字文档】
  • Linux shell 脚本示例:使用 pkill 清理各种服务进程
  • 【毕业设计】基于springboot的汽车租赁管理系统(源码+文档+远程调试,全bao定制等)
  • 2026年CIO的AI规划蓝图:如何以三阶段框架驱动企业智能转型
  • C#上位机框架源码,winform界面,清晰可见的源码 标准机项目上位机控制软件程序 界面美观实用
  • 【稀缺资源】Open-AutoGLM虚拟机部署许可限制与绕行方案(内部文档流出)
  • 短剧创作者版权授权全攻略:从创意到维权,可信时间戳工具如何保驾护航?
  • 从工具到伙伴:AI知识库如何重塑企业数字化转型逻辑
  • 中考体育评价系统的设计与实现开题报告
  • 大模型学习避坑指南:六步构建你的知识体系,我靠这份路线图少走了99%的弯路(建议收藏)