linux查看日志的幾種方法


linux查看日志的幾種方法

作為開發項目出了bug想要最快速定位到問題所在,查看日志是最好不過的了~(當然,也要習慣在業務關鍵點設置日志)。


最常用查看日志方法:
·實時日志:tail -f XXX.log
·搜索關鍵字附近日志:cat -n filename | grep "關鍵字"

下面詳細看下⬇⬇⬇:


查看日志常用命令
tail:

   -n  是顯示行號;相當於nl命令;例子如下:

        tail -100f test.log      實時監控100行日志

        tail  -n  10  test.log   查詢日志尾部最后10行的日志;

        tail -n +10 test.log    查詢10行之后的所有日志;

head:  

    跟tail是相反的,tail是看后多少行日志,而head是查看日志文件的頭多少行,例子如下:

        head -n 10  test.log   查詢日志文件中的頭10行日志;

        head -n -10  test.log   查詢日志文件除了最后10行的其他所有日志;

cat: 

    tac是倒序查看,是cat單詞反寫;例子如下:

        cat -n test.log |grep "debug"   查詢關鍵字的日志(常用!~)

vim:

    1、進入vim編輯模式:vim filename
    2、輸入“/關鍵字”,按enter鍵查找
    3、查找下一個,按“n”即可
    退出:按ESC鍵后,接着再輸入:號時,vi會在屏幕的最下方等待我們輸入命令
    wq! 保存退出
    q! 不保存退出 

列出幾種常見的應用場景⬇⬇⬇:


查看日志應用場景一:按行號查看:過濾出關鍵字附近的日志

 (1) cat -n test.log |grep "debug"  得到關鍵日志的行號

 (2) cat -n test.log |tail -n +92|head -n 20  選擇關鍵字所在的中間一行. 然后查看這個關鍵字前10行和后10行的日志:

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

        head -n 20 則表示在前面的查詢結果里再查前20條記錄

查看日志應用場景二:根據日期查詢日志

   (1) sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

特別說明:

上面的兩個日期必須是日志中打印出來的日志,否則無效

先 grep '2014-12-17 16:17:20' test.log 來確定日志中是否有該時間點


查看日志應用場景三:日志內容特別多,打印在屏幕上不方便查看,分頁/保存文件查看

(1)使用more和less命令,

       如: cat -n test.log |grep "debug" |more     這樣就分頁打印了,通過點擊空格鍵翻頁

(2)使用 >xxx.txt 將其保存到文件中,到時可以拉下這個文件分析

        如:cat -n test.log |grep "debug"  >debug.txt


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM