针对大量log日志快速定位错误地方
动态查看日志
tail -f catalina.out
从头打开日志文件
cat catalina.out
可以使用 >nanjiangtest.txt 输出某个新日志去查看
[root@yesky logs]# cat -n catalina.out |grep 717892466 >nanjiangtest.txt
tail/head简单命令使用:
[root@yesky logs]# tail -n number catalina.out 查询日志尾部最后number行的日志[root@yesky logs]# tail -n +number catalina.out 查询number行之后的所有日志[root@yesky logs]# head -n number catalina.out 查询日志文件中的前number行日志[root@yesky logs]# head -n -number catalina.out 查询日志文件除了最后number行的其他所有日志
第一种方式(根据关键字查找出行号):
用 grep 拿到的日志很少,我们需要查看附近的日志。我是这样做的,首先: cat -n test.log | grep “关键词” 得到关键日志的行号
[root@yesky logs]# cat -n catalina.out |grep 71789246613230539 [11:07 17:47:11] info nanjiang:edit old article:717892466-2020-11-07 17:47:1113230593 [11:07 17:47:15] info nanjiangsave article id is:71789246613230595 717892466 article.getdisplaytime()1 = 2020-11-07 16:25:1113230596 717892466 article.getdisplaytime()2 = 2020-11-07 16:25:1113230601 [11:07 17:47:15] info 南江 10.10.10.39 edit article 717892466 编辑文章
cat -n catalina.out|tail -n +13230539|head -n 10
tail -n +13230539表示查询13230539行之后的日志
head -n 10 则表示在前面的查询结果里再查前10条记录
[root@yesky logs]# cat -n catalina.out |tail -n +13230539|head -n 1013230539 [11:07 17:47:11] info nanjiang:edit old article:717892466-2020-11-07 17:47:1113230540 [11:07 17:47:11] info takes:2 ms class com.tmg.cms.manager.dao.article.impl.articlecontentdaoimpl getlistbyarticleid [nze3odkyndy2] [int]13230541 [11:07 17:47:11] info takes:1 ms class com.tmg.cms.manager.dao.resourceimage.impl.resourceimagedaoimpl load 13230542 [11:07 17:47:11] info takes:0 ms class com.tmg.cms.manager.dao.resourceimage.impl.resourceimagedaoimpl load 13230543 [11:07 17:47:11] info takes:1 ms class com.tmg.cms.manager.dao.resourceimage.impl.resourceimagedaoimpl load 13230544 [11:07 17:47:11] info article.getimage3:/uploadimages/2020/312/02/3nxcrk4u3589_2.jpg13230545 [11:07 17:47:11] info takes:0 ms class com.tmg.cms.manager.dao.resourceimage.impl.resourceimagedaoimpl load 13230546 [11:07 17:47:11] info takes:2 ms class com.tmg.cms.manager.dao.privilege.impl.userdaoimpl getuserbyid 13230547 [11:07 17:47:11] info takes:57 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl selectsitemapwithoutaudit [mq==] [int]13230548 [11:07 17:47:11] info takes:5 ms class com.tmg.cms.manager.dao.forbidword.impl.forbidworddaoimpl getforbidwordbysiteid [mji=] [int]
第二种方式:查看指定时间段内的日志
首先要进行范围时间段内日志查询先查看是否在当前日之内存在
grep '11:07 1820' catalina.outgrep '11:07 1811' catalina.out
时间范围内的查询
sed -n '/11:07 1820/,/11:07 1811/p' catalina.out sed -n '/11:07 18/,/11:07 18/p' catalina.out
第三种方式:查看日志中特定字符的匹配数目
[root@yesky logs]# grep '1175109632' catalina.out | wc -l154
第四种方式:查询最后number行,并查找关键字“结果”
[root@yesky logs]# tail -n 20 catalina.out | grep 'info takes:1'[11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.config.impl.configinfodaoimpl load [11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntkwotq5] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi0] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi3] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzmw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mza5na==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzc4mg==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [otm1ma==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mte5mdmw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntq2mzqw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntg2nzyy] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzyymja=] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.configmodule.impl.configmoduledaoimpl getpersonmenulist
第五种方式:查询最后number行,并查找关键字“结果”并且对结果进行标红
[root@yesky logs]# tail -n 20 catalina.out | grep 'info takes:1' --color[11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.config.impl.configinfodaoimpl load [11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntkwotq5] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi0] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi3] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzmw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mza5na==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzc4mg==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [otm1ma==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mte5mdmw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntq2mzqw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntg2nzyy] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzyymja=] [int]
第六种方式:查询最后number行,并查找关键字“结果”并且对结果进行标红,上下扩展两行
[root@yesky logs]# tail -n 20 catalina.out | grep 'info takes:1' --color -a2[11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.article.impl.articlecontentdaoimpl getarticlepagenum [nze4mtm2odky] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.config.impl.configinfodaoimpl load [com.tmg.cms.manager.model.config.configinfo][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntkwotq5] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi0] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi1] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzi3] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzmw] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzazng==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mza5na==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzc4mg==] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [otm1ma==] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mte0mjq4] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mte4mdc4] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mte5mdmw] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntq2mzqw] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntq3mtiw] [int][11:11 22:02:51] info takes:0 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [nty4otyx] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [ntg2nzyy] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.sitemap.impl.sitemapdaoimpl getsitemaptop [mzyymja=] [int][11:11 22:02:51] info takes:1 ms class com.tmg.cms.manager.dao.configmodule.impl.configmoduledaoimpl getpersonmenulist [com.tmg.cms.manager.model.config.configpersonmenu]
第七种方式:分页查看,使用空格翻页(使用more/less)
[root@yesky logs]# tail -n 2000 catalina.out | grep 'info takes:1' --color -a2 | more[root@yesky logs]# tail -n 2000 catalina.out | grep 'info takes:1' --color -a2 | less
附加:
全屏导航
ctrl + f - 向前移动一屏
ctrl + b - 向后移动一屏
ctrl + d - 向前移动半屏
ctrl + u - 向后移动半屏
单行导航
j - 向前移动一行
k - 向后移动一行
其它导航
g - 移动到最后一行
g - 移动到第一行
q / zz - 退出 less 命令
11月新能源汽车销量下跌43.7% 车市回暖但新能源依旧是寒冬
系统调用具体是如何实现的
关于GD32 Colibri-F450VE开发板的性能分析和介绍
煤气管道焊缝泄露的处理措施
讯飞录音笔SR501是否适合做商务礼品?实用又极富科技感
服务器log日志大,掌握这些可正确快速定位错误!
如何实现ESP8266/ESP32自动下载电路
深度揭秘磁环电感电流大小怎么看
diy风力发电机制作
荣耀V9和荣耀V8哪个好?荣耀V9与荣耀V8区别在哪?
拆解苹果最新蓝牙追踪器AirTags
服务器负载均衡有几种类型,做负载均衡好在哪
解决装配制造难题,AHTE 2023工业装配展观众招募进行中!
双轨直销软件报单管理系统 双轨直销奖金自动结算系统
三星电视2021年新品重磅开箱,带来超出想象的视觉享受
PCB设计中焊盘的重要考虑因素:预防焊盘凹凸
变频器实用技术分享:变频器选型方法和原则、变频器使用保养注意事项
Belkin推出雷电3扩展基座Pro,支持MacBook和Windows PC双系统
将国产进行到底!新版千元旗舰机魅蓝E拆解
比亚迪王朝系列来袭,论颜值博越都得靠边站!