docker查询日志并输出到文件的方法

2023-12-07 0 267
目录
  • 1、导出全部的log到文件
  • 2、按照时间导出log信息
  • 3、按照log中可能包含的字符串,导出log信息
  • 总结

想查询一下docker容器内服务的log,但是因为log太多,想自定义筛选一下。

1、导出全部的log到文件

docker logs dockerId >>log.txt

2、按照时间导出log信息

但是全部的log太多,我想按照时间进行查询,这就用到了–since参数

–since参数的含义是,显示某个时间点后的log信息,也可以是相对于现在多长时间的log信息

显示某个时间点后的log信息。下面命令,查询的是2023年4月28日之后的log信息

docker logs –since=\”2023-04-28\” 容器id >> file.log

也可以是日期+时间或者时间戳

docker logs –since=\”2023-04-28 00:00:00\” 容器id >>file.log
docker logs –since=\”1682665239\” 容器id >>file.log

相对于现在多长时间的log信息。下面的命令,查询的是过去10分钟的log信息

docker logs –since 10m 容器id >>file.log

还可以配合着–until参数,查询某个时间段内的log信息

docker logs –since=\”2023-04-28T00:00:00\” –until \”2023-04-28T12:00:00\” 容器id >>file.log

3、按照log中可能包含的字符串,导出log信息

docker logs 容器id |grep \’处理失败\’ >> file.log

但是上面的检索我们没办法定位报错信息的上下文可以用-A -B -C匹配

docker logs 容器id | grep -A 10 \’处理失败\’ # 打印匹配行的后10行
docker logs 容器id | grep -B 10 \’处理失败\’ # 打印匹配行的前10行
docker logs 容器id | grep -C 10 \’处理失败\’ # 打印匹配行的前后10行

docker logs 的一些参数,以及参数的含义

运行:docker logs –help 命令

Options:
–details Show extra details provided to logs
-f, –follow Follow log output
–since string Show logs since timestamp (e.g. \”2013-01-02T13:23:37Z\”) or relative (e.g. \”42m\” for 42 minutes)
-n, –tail string Number of lines to show from the end of the logs (default \”all\”)
-t, –timestamps Show timestamps
–until string Show logs before a timestamp (e.g. \”2013-01-02T13:23:37Z\”) or relative (e.g. \”42m\” for 42 minutes)

含义:

Options:
–details 显示提供给日志的额外详细信息
-f, –follow 监控日志输出
–since string 显示自时间戳之后的日志(例如“2013-01-02T13:23:37Z”)或相关日志(例如“42m”42分钟)
-n, –tail string 从日志末尾开始显示的行数(默认为“全部”)
-t, –timestamps 显示时间戳
–until string 在时间戳(例如“2013-01-02T13:23:37Z”)或相对时间戳(例如“42m”42分钟)之前显示日志

总结

到此这篇关于docker查询日志并输出到文件的文章就介绍到这了,更多相关docker查询日志并输出内容请搜索悠久资源网以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源网!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Linux服务器 docker查询日志并输出到文件的方法 https://www.u-9.cn/server/linux/115897.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务