linux 查詢某個時間段的日志


目前因發生了異常大概記得發生的時間段,想查看這個時間段的日志

  • 如我們的日志格式如下
1:09:59.946 [http-nio-12129-exec-10] INFO  ntroller start ====
11:09:59.946 [http-nio-12129-exec-10] INFO  .BannerInfoService -  ===== getBannerInfoList start==========
11:09:59.947 [http-nio-12129-exec-10] INFO  vice.BannerInfoService -  ===== getBannerInfoList end==========
11:09:59.947 [http-nio-12129-exec-10] INFO  .controller.DriverBaseController - ==== GetBannerInfoController end ====
11:09:59.947 [http-nio-12129-exec-10] INFO  er.a

 

  • 因為我們的日志的日期不顯示年月的,所以使用時分秒進行查詢
  • sed -n '/11:10:00/,/11:10:20/p' dongfeng-driver-core.2019-10-25.log

注意的部分:

1) . 開始時間和結束時間必須是日志里面有的,要是沒有開始的時間,那就是查找沒有結果,要是沒有結束時間,查詢的結果就是開始時間到最后的全部日志

2). 時間后面的p不能省略

  • 模糊查詢(按分鍾和按小時):
    • sed -n '/11:10:*/,/11:20*/p' dongfeng-driver-core.2019-10-25.log
  • 結合grep一起使用(比如我要找到超時的日志)
    • sed -n '/11:10:*/,/11:20*/p' dongfeng-driver-core.2019-10-25.log | grep 超時

 

$ sed -n '/11:10:*/,/11:20*/p' dongfeng-driver-core.2019-10-25.log | grep 超時
11:10:20.895 [http-nio-12129-exec-2] INFO allFeign - feign response body : HttpCommandResultWithData{data=null} CommonResult{resultCode=408, message='請求超時'}
11:10:20.896 [http-nio-12129-exec-2] INFO cAop - RESPONSE : HttpCommandResultWithData{data=null} CommonResult{resultCode=408, message='請求超時'}
11:16:26.696 [http-nio-12129-exec-1] INFO coForCallFeign - feign response body : HttpCommandResultWithData{data=null} CommonResult{resultCode=408, message='請求超時

 

  • 最后一步日志導出
    • sed -n '/11:10:*/,/11:20*/p' dongfeng-driver-core.2019-10-25.log > 11.txt
    • 導出到當前目錄 ll查看一下當前目錄是否存在
  • total 31172
    -rw-rw-r-- 1 prodfcv1 prodfcv1 14608 Oct 25 11:35 11.txt
    drwxrwxr-x 2 prodfcv1 prodfcv1 6 May 6 2018 baklog

     

     
    參考博客:https://www.cnblogs.com/yoyoketang/p/11729966.html


免責聲明!

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



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