Linux 服务器大量的 log 日志,如何正确看日志快速定位错误?你必须学会!

WBOY
发布: 2024-02-12 09:09:03
转载
914 人浏览过

针对大量log日志快速定位错误地方

动态查看日志

tail -f catalina.ou
登录后复制

从头打开日志文件

cat catalina.ou
登录后复制

可以使用>nanjiangtest.txt输出某个新日志去查看

[root@yesky logs]# cat -n catalina.out |grep 717892466 >nanjiangtest.txt
登录后复制
Linux 服务器大量的 log 日志,如何正确看日志快速定位错误?你必须学会!

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 717892466 13230539 [11:07 17:47:11] INFO nanjiang:Edit Old Article:717892466-2020-11- 07 17:47:11 13230593 [11:07 17:47:15] INFO nanjiangSave Article ID IS:717892466 13230595 717892466 article.getDisplayTime()1 = 2020-11-07 16:25:11 13230596 717892466 article.getDisplayTime()2 = 2020-11-07 16:25:11 13230601 [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 10 13230539 [11:07 17:47:11] INFO nanjiang:Edit Old Article:717892466- 2020-11-07 17:47:11 13230540 [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.jpg 13230545 [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 18:29:20' catalina.out grep '11:07 18:31:11' catalina.out
登录后复制

时间范围内的查询

sed -n '/11:07 18:29:20/,/11:07 18:31:11/p' catalina.out sed -n '/11:07 18:29:/,/11:07 18:31:/p' catalina.out
登录后复制

第三种方式:查看日志中特定字符的匹配数目

[root@yesky logs]# grep '1175109632' catalina.out | wc -l 154
登录后复制

第四种方式:查询最后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.ArticleContent DaoImpl 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
登录后复制

附加

1.全屏导航
  • ctrl + F– 向前移动一屏
  • ctrl + B– 向后移动一屏
  • ctrl + D– 向前移动半屏
  • ctrl + U– 向后移动半屏
2.单行导航
  • j– 向前移动一行
  • k– 向后移动一行
3.其它导航
  • G– 移动到最后一行
  • g– 移动到第一行
  • q / ZZ– 退出 less 命令

以上是Linux 服务器大量的 log 日志,如何正确看日志快速定位错误?你必须学会!的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:lxlinux.net
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!