Home> System Tutorial> LINUX> body text

There are a lot of logs in the Linux server. How to read the logs correctly and quickly locate errors? You must learn!

WBOY
Release: 2024-02-12 09:09:03
forward
908 people have browsed it

Quickly locate errors in a large number of logs

Dynamic View Log

tail -f catalina.ou
Copy after login

Open the log file from the beginning

cat catalina.ou
Copy after login

You can use>nanjiangtest.txtto output a new log to view

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

tail/head simple command usage:

[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行的其他所有日志
Copy after login

The first way (find the trip number based on keywords):

There are very few logs obtained with grep, we need to check nearby logs. This is what I did, first:cat -n test.log | grep "keyword"Get the line number of the key log

[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 编辑 文章
Copy after login

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

  • tail -n 13230539means querying the log after line 13230539
  • head -n 10means to check the first 10 records in the previous query results
[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]
Copy after login

Second method: View logs within a specified time period

First, perform a log query within the range time period to see if it exists within the current day.

grep '11:07 18:29:20' catalina.out grep '11:07 18:31:11' catalina.out
Copy after login

Query within time range

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
Copy after login

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

[root@yesky logs]# grep '1175109632' catalina.out | wc -l 154
Copy after login

第四种方式:查询最后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
Copy after login

第五种方式:查询最后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]
Copy after login

第六种方式:查询最后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]
Copy after login

第七种方式:分页查看,使用空格翻页(使用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
Copy after login

附加

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

The above is the detailed content of There are a lot of logs in the Linux server. How to read the logs correctly and quickly locate errors? You must learn!. For more information, please follow other related articles on the PHP Chinese website!

source:lxlinux.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!