Heim > System-Tutorial > LINUX > Es gibt viele Protokolle auf dem Linux-Server. Wie kann ich die Protokolle richtig lesen und Fehler schnell lokalisieren? Du musst lernen!

Es gibt viele Protokolle auf dem Linux-Server. Wie kann ich die Protokolle richtig lesen und Fehler schnell lokalisieren? Du musst lernen!

WBOY
Freigeben: 2024-02-12 09:09:03
nach vorne
1033 Leute haben es durchsucht

Schnelle Fehlersuche in einer großen Anzahl von Protokollen

Protokolle dynamisch anzeigen

tail -f catalina.ou
Nach dem Login kopieren

Öffnen Sie die Protokolldatei von Anfang an

cat catalina.ou
Nach dem Login kopieren

Mit >nanjiangtest.txt können Sie ein neues Protokoll zur Ansicht ausgeben

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

Einfache Befehlsverwendung für Schwanz/Kopf:

[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行的其他所有日志
Nach dem Login kopieren

Der erste Weg (Reisenummer anhand von Schlüsselwörtern finden):

Mit grep werden nur sehr wenige Protokolle abgerufen. Wir müssen die Protokolle in der Nähe überprüfen. Folgendes habe ich zunächst getan: cat -n test.log | grep “关键词” Ermitteln Sie die Zeilennummer des Schlüsselprotokolls

[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       编辑

文章
Nach dem Login kopieren

「cat -n catalina.out|tail -n +13230539|head -n 10」

  • tail -n +13230539 bedeutet Abfrage der Protokolle nach Zeile 13230539
  • head -n 10 bedeutet, die ersten 10 Datensätze in den vorherigen Abfrageergebnissen zu überprüfen
[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]
Nach dem Login kopieren

Zweite Methode: Protokolle innerhalb eines bestimmten Zeitraums anzeigen

Zunächst müssen Sie die Protokolle innerhalb des Bereichszeitraums abfragen, um zu sehen, ob sie am aktuellen Tag vorhanden sind

grep '11:07 18:29:20' catalina.out
grep '11:07 18:31:11' catalina.out
Nach dem Login kopieren

Abfrage innerhalb des Zeitbereichs

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
Nach dem Login kopieren

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

[root@yesky logs]# grep '1175109632' catalina.out | wc -l
154
Nach dem Login kopieren

第四种方式:查询最后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
Nach dem Login kopieren

第五种方式:查询最后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]
Nach dem Login kopieren

第六种方式:查询最后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]
Nach dem Login kopieren

第七种方式:分页查看,使用空格翻页(使用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
Nach dem Login kopieren

附加

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

Das obige ist der detaillierte Inhalt vonEs gibt viele Protokolle auf dem Linux-Server. Wie kann ich die Protokolle richtig lesen und Fehler schnell lokalisieren? Du musst lernen!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:lxlinux.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage