Erlo

linux 查询某个时间段的日志

2019-10-25 13:30:17 发布   285 浏览  
页面报错/反馈
收藏 点赞

目前因发生了异常大概记得发生的时间段,想查看这个时间段的日志

  • 如我们的日志格式如下
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.cnblogcnblogs.com/yoyoketang/p/11729966.html
登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认