0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

針對(duì)大量log日志快速定位錯(cuò)誤地方

dyquk4xk2p3d ? 來(lái)源:心南南心 ? 2023-04-21 09:22 ? 次閱讀

	

	

針對(duì)大量log日志快速定位錯(cuò)誤地方

動(dòng)態(tài)查看日志

tail-fcatalina.out

從頭打開日志文件

catcatalina.out

可以使用 >nanjiangtest.txt 輸出某個(gè)新日志去查看

[root@yeskylogs]#cat-ncatalina.out|grep717892466>nanjiangtest.txt

tail/head簡(jiǎn)單命令使用:

[root@yeskylogs]#tail-nnumbercatalina.out查詢?nèi)罩疚膊孔詈髇umber行的日志
[root@yeskylogs]#tail-n+numbercatalina.out查詢number行之后的所有日志
[root@yeskylogs]#head-nnumbercatalina.out查詢?nèi)罩疚募械那皀umber行日志
[root@yeskylogs]#head-n-numbercatalina.out查詢?nèi)罩疚募俗詈髇umber行的其他所有日志

第一種方式(根據(jù)關(guān)鍵字查找出行號(hào)):

用 grep 拿到的日志很少,我們需要查看附近的日志。我是這樣做的,首先: cat -n test.log | grep “關(guān)鍵詞” 得到關(guān)鍵日志的行號(hào)

[root@yeskylogs]#cat-ncatalina.out|grep717892466
13230539[11:0717:47:11]INFOnanjiang:EditOldArticle:717892466-2020-11-0717:47:11
13230593[11:0717:47:15]INFOnanjiangSaveArticleIDIS:717892466
13230595717892466article.getDisplayTime()1=2020-11-0716:25:11
13230596717892466article.getDisplayTime()2=2020-11-0716:25:11
13230601[11:0717:47:15]INFO南江10.10.10.39editarticle717892466編輯文章

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

  • tail -n +13230539表示查詢13230539行之后的日志

  • head -n 10 則表示在前面的查詢結(jié)果里再查前10條記錄

[root@yeskylogs]#cat-ncatalina.out|tail-n+13230539|head-n10
13230539[11:0717:47:11]INFOnanjiang:EditOldArticle:717892466-2020-11-0717:47:11
13230540[11:0717:47:11]INFOTakes:2msclasscom.tmg.cms.manager.dao.article.impl.ArticleContentDaoImplgetListByArticleId[NzE3ODkyNDY2][int]
13230541[11:0717:47:11]INFOTakes:1msclasscom.tmg.cms.manager.dao.resourceImage.impl.ResourceImageDaoImplload
13230542[11:0717:47:11]INFOTakes:0msclasscom.tmg.cms.manager.dao.resourceImage.impl.ResourceImageDaoImplload
13230543[11:0717:47:11]INFOTakes:1msclasscom.tmg.cms.manager.dao.resourceImage.impl.ResourceImageDaoImplload
13230544[11:0717:47:11]INFOarticle.getImage3:/uploadImages/2020/312/02/3NXCRK4U3589_2.jpg
13230545[11:0717:47:11]INFOTakes:0msclasscom.tmg.cms.manager.dao.resourceImage.impl.ResourceImageDaoImplload
13230546[11:0717:47:11]INFOTakes:2msclasscom.tmg.cms.manager.dao.privilege.impl.UserDaoImplgetUserByid
13230547[11:0717:47:11]INFOTakes:57msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplselectSitemapWithoutAudit[MQ==][int]
13230548[11:0717:47:11]INFOTakes:5msclasscom.tmg.cms.manager.dao.forbidword.impl.ForbidwordDaoImplgetForbidwordBysiteid[MjI=][int]

第二種方式:查看指定時(shí)間段內(nèi)的日志

首先要進(jìn)行范圍時(shí)間段內(nèi)日志查詢先查看是否在當(dāng)前日之內(nèi)存在

grep'11:071820'catalina.out
grep'11:071811'catalina.out

時(shí)間范圍內(nèi)的查詢

sed-n'/11:071820/,/11:071811/p'catalina.out
sed-n'/11:0718/,/11:0718/p'catalina.out

第三種方式:查看日志中特定字符的匹配數(shù)目

[root@yeskylogs]#grep'1175109632'catalina.out|wc-l
154

第四種方式:查詢最后number行,并查找關(guān)鍵字“結(jié)果”

[root@yeskylogs]#tail-n20catalina.out|grep'INFOTakes:1'
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.config.impl.ConfigInfoDaoImplload
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTkwOTQ5][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI0][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI3][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzMw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzA5NA==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[Mzc4Mg==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[OTM1MA==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MTE5MDMw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTQ2MzQw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTg2NzYy][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzYyMjA=][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.configModule.impl.ConfigModuleDaoImplgetPersonMenuList

第五種方式:查詢最后number行,并查找關(guān)鍵字“結(jié)果”并且對(duì)結(jié)果進(jìn)行標(biāo)紅

[root@yeskylogs]#tail-n20catalina.out|grep'INFOTakes:1'--color
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.config.impl.ConfigInfoDaoImplload
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTkwOTQ5][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI0][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI3][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzMw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzA5NA==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[Mzc4Mg==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[OTM1MA==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MTE5MDMw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTQ2MzQw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTg2NzYy][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzYyMjA=][int]

第六種方式:查詢最后number行,并查找關(guān)鍵字“結(jié)果”并且對(duì)結(jié)果進(jìn)行標(biāo)紅,上下擴(kuò)展兩行

[root@yeskylogs]#tail-n20catalina.out|grep'INFOTakes:1'--color-a2
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.article.impl.ArticleContentDaoImplgetArticlePageNum[NzE4MTM2ODky][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.config.impl.ConfigInfoDaoImplload[com.tmg.cms.manager.model.config.ConfigInfo]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTkwOTQ5][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI0][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI1][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzI3][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzMw][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzAzNg==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzA5NA==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[Mzc4Mg==][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[OTM1MA==][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MTE0MjQ4][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MTE4MDc4][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MTE5MDMw][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTQ2MzQw][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTQ3MTIw][int]
[11:1122:02:51]INFOTakes:0msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTY4OTYx][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[NTg2NzYy][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.sitemap.impl.SitemapDaoImplgetSitemapTop[MzYyMjA=][int]
[11:1122:02:51]INFOTakes:1msclasscom.tmg.cms.manager.dao.configModule.impl.ConfigModuleDaoImplgetPersonMenuList[com.tmg.cms.manager.model.config.ConfigPersonMenu]

第七種方式:分頁(yè)查看,使用空格翻頁(yè)(使用more/less)

[root@yeskylogs]#tail-n2000catalina.out|grep'INFOTakes:1'--color-a2|more
[root@yeskylogs]#tail-n2000catalina.out|grep'INFOTakes:1'--color-a2|less

附加:

  • 全屏導(dǎo)航
    ctrl + F - 向前移動(dòng)一屏
    ctrl + B - 向后移動(dòng)一屏
    ctrl + D - 向前移動(dòng)半屏
    ctrl + U - 向后移動(dòng)半屏

  • 單行導(dǎo)航
    j - 向前移動(dòng)一行
    k - 向后移動(dòng)一行

  • 其它導(dǎo)航
    G - 移動(dòng)到最后一行
    g - 移動(dòng)到第一行
    q / ZZ - 退出 less 命令


審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11314

    瀏覽量

    209807
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9222

    瀏覽量

    85606
  • 日志
    +關(guān)注

    關(guān)注

    0

    文章

    138

    瀏覽量

    10655

原文標(biāo)題:Linux 服務(wù)器大量的 log 日志,如何正確看日志快速定位錯(cuò)誤?

文章出處:【微信號(hào):良許Linux,微信公眾號(hào):良許Linux】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Wine開發(fā)系列——如何使用Wine日志調(diào)試問題

    ? 輸出調(diào)試日志是調(diào)試程序的一種常見方法,尤其是處理那些難以捉摸的多線程錯(cuò)誤、隨機(jī)崩潰等問題時(shí)。 通過在合適的位置輸出調(diào)試日志,可以幫助我們更快地定位問題所在。 對(duì)于不熟悉的代碼,經(jīng)常
    的頭像 發(fā)表于 01-06 11:29 ?59次閱讀

    玩轉(zhuǎn)Nginx日志管理:高效排查問題的終極指南

    Nginx日志對(duì)于統(tǒng)計(jì)、系統(tǒng)服務(wù)排錯(cuò)很有用。Nginx日志主要分為兩種:access_log(訪問日志)和error_log(
    的頭像 發(fā)表于 12-30 13:50 ?108次閱讀

    1個(gè)工具4類日志,幫你解決99%的問題

    眾所周知,通過日志可以對(duì)研發(fā)過程中,以及模組運(yùn)行過程中的各種故障進(jìn)行分析,快速定位和解決問題。 但新手朋友往往念叨著“抓日志”,卻又無(wú)從下手……此時(shí)就不得不提到工程師朋友的寶藏工具
    的頭像 發(fā)表于 12-17 16:26 ?99次閱讀
    1個(gè)工具4類<b class='flag-5'>日志</b>,幫你解決99%的問題

    780E開發(fā)板之errDump錯(cuò)誤日志上報(bào),操作方法解析

    ?# 一、errDump功能 LuatOS-Air錯(cuò)誤日志上報(bào)功能模塊名叫:errDump,errDump對(duì)“量產(chǎn)投放市場(chǎng)的設(shè)備,遠(yuǎn)程調(diào)試初步定位問題”至關(guān)重要,強(qiáng)烈建議客戶一定要使用此功能
    的頭像 發(fā)表于 11-04 15:30 ?199次閱讀
    780E開發(fā)板之errDump<b class='flag-5'>錯(cuò)誤</b><b class='flag-5'>日志</b>上報(bào),操作方法解析

    errDump錯(cuò)誤日志上報(bào):開啟高效排查之門

    相信很多朋友都會(huì)忽視errDump錯(cuò)誤日志上報(bào),但不得不說的是技術(shù)高手都知道它真的是比較重要的一環(huán)。
    的頭像 發(fā)表于 11-02 11:52 ?347次閱讀
    errDump<b class='flag-5'>錯(cuò)誤</b><b class='flag-5'>日志</b>上報(bào):開啟高效排查之門

    nginx日志配置方法

    access_log用來(lái)定義日志級(jí)別,日志位置。
    的頭像 發(fā)表于 10-24 17:43 ?241次閱讀

    日志篇:模組日志總體介紹

    ?今天我們學(xué)習(xí)合宙模組日志總體介紹,以下進(jìn)入正文。 一、本文討論的邊界 本文是對(duì)合宙 4G 模組, 以及 4G+GNSS 模組的日志功能的總體介紹。通過日志,可以對(duì)研發(fā)過程中,以及模組運(yùn)行過程中
    的頭像 發(fā)表于 10-24 07:16 ?204次閱讀
    <b class='flag-5'>日志</b>篇:模組<b class='flag-5'>日志</b>總體介紹

    Jtti:如何查看yum命令的錯(cuò)誤日志來(lái)診斷問題?

    在Linux系統(tǒng)中,當(dāng)yum命令無(wú)法正常工作時(shí),查看錯(cuò)誤日志是診斷問題的重要步驟。以下是一些方法,可以幫助你查看和分析yum命令的錯(cuò)誤日志: 查看Yum歷史記錄 : 你可以通過 yum
    的頭像 發(fā)表于 10-14 15:51 ?251次閱讀

    針對(duì)過壓事件、接線錯(cuò)誤和共模電壓提供保護(hù)

    電子發(fā)燒友網(wǎng)站提供《針對(duì)過壓事件、接線錯(cuò)誤和共模電壓提供保護(hù).pdf》資料免費(fèi)下載
    發(fā)表于 09-21 10:59 ?0次下載
    <b class='flag-5'>針對(duì)</b>過壓事件、接線<b class='flag-5'>錯(cuò)誤</b>和共模電壓提供保護(hù)

    OTA升級(jí)后重啟,printf日志錯(cuò)誤的原因?

    OTA升級(jí)后重啟,printf日志錯(cuò)誤。
    發(fā)表于 07-18 06:26

    如何檢查日志中是否有類似cm_cy_log_msg( CYLF_MIDDLEWARE, CY_LOG_ERR) 的內(nèi)容?

    運(yùn)行,有什么方法可以檢查 cm_cy_log_msg 生成的日志? 像這樣: cm_cy_log_msg( CYLF_MIDDLEWARE, CY_LOG_ERR,\"Invalid
    發(fā)表于 05-31 12:45

    【嵌入式SD NAND】基于FATFS/Littlefs文件系統(tǒng)的日志框架實(shí)現(xiàn)

    設(shè)備的運(yùn)行數(shù)據(jù)。日志文件不同于其他功能,其往往需要具備幾個(gè)基本特性需求: 單個(gè)文件大小限制 日志總大小空間占用限制 自動(dòng)循環(huán)覆蓋 網(wǎng)上也有一些開源的日志框架,如 Log4j,不過大都是
    發(fā)表于 03-14 18:12

    單片機(jī)斷電記憶日志 多串口助手波形圖像彩色日志 Stm32嵌入式FLASH保存日志管理工具

    。 CloudLog使用了多種日志元素,包括: 日志等級(jí)(Log Level)用于確認(rèn)日志的重要性。 日期時(shí)間(Date Time Tick)用于確認(rèn)
    發(fā)表于 01-19 11:28

    匯總一些嵌入式打log的一些規(guī)則

    對(duì)于不能恢復(fù)的嚴(yán)重錯(cuò)誤,日志內(nèi)容應(yīng)詳細(xì)到足以幫助定位問題,但同時(shí)不應(yīng)該包含敏感信息。比如申請(qǐng)內(nèi)存失敗時(shí)使用錯(cuò)誤(Error)級(jí)別加上日志信息
    的頭像 發(fā)表于 01-19 11:07 ?955次閱讀
    匯總一些嵌入式打<b class='flag-5'>log</b>的一些規(guī)則

    請(qǐng)問Spring Boot是如何快速過濾出一次請(qǐng)求所有日志的?

    在現(xiàn)網(wǎng)出現(xiàn)故障時(shí),我們經(jīng)常需要獲取一次請(qǐng)求流程里的所有日志進(jìn)行定位 。如果請(qǐng)求只在一個(gè)線程里處理,則我們可以通過線程ID來(lái)過濾 日志 ,但如果請(qǐng)求包含異步線程的處理,那么光靠線程ID就顯得捉襟見肘了。
    的頭像 發(fā)表于 01-18 10:18 ?361次閱讀