Linux 服務器大量的 log 日志,如何正確看日志快速定位錯誤?

針對大量log日志快速定位錯誤地方

Linux 服務器大量的 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?18:29:20'?catalina.outgrep?'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?-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 命令

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享