docker_查询日志并输出到文件

这篇具有很好参考价值的文章主要介绍了docker_查询日志并输出到文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

想查询一下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)

含义:文章来源地址https://www.toymoban.com/news/detail-428136.html

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_查询日志并输出到文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python Flask + Gunicorn + Docker 的日志输出设置

    我们一个项目使用了 Python Flask 框架来实现 Web 服务,之前的日志输出一直有问题。而从项目需求、运行维护出发,正确的日志输出对使用者来说都是非常重要的。 这里完整的整理了从 开发 Flask 时的日志设置,到生产环境使用 Gunicorn 运行 Flask 的日志设置 以及 使用 Docker 容器

    2024年02月05日
    浏览(41)
  • SpringBoot【日志文件的打印与输出】

    ⽇志是程序的重要组成部分它在我们运行检查程序时用来 发现和定位问题 除了发现和定位问题之外,我们还可以通过⽇志实现以下功能: ● 记录⽤户登录⽇志,⽅便分析⽤户是正常登录还是恶意破解⽤户 ● 记录系统的操作⽇志,⽅便数据恢复和定位操作⼈ ● 记录程序的

    2024年02月04日
    浏览(66)
  • nohup 输出到指定文件 Linux nohup 实现命令后台运行并输出或记录到指定日志文件 设置日志结果文件名称 重定向到某个文件 标准误 标准错误输出定向 输入报错信息保留

    # yourcommand:启动对象命令。可以跟该命令需要的各种参数。 # 是指在后台运行,但当用户推出(挂起)的时候,命令自动也跟着退出. nohup与结合起来,可以实现不挂断的后台运行。 实现屏幕输出记录到日志文件 # 0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standa

    2024年02月05日
    浏览(62)
  • logback日志按照类型输出到不同文件

    公司要将项目的日志分为不同的类别,如所有日志、请求日志、错误日志和 SQL 日志。 目前使用的日志框架为slf4j + logback。 要将日志分为不同的类别,可以使用 Logback 的日志级别和过滤器来实现。 然后,可以针对特定的日志类型设置不同的日志级别和过滤器。 Logback 的appe

    2024年02月16日
    浏览(39)
  • java Logback输出日志内容到文件

    1.首先,在您的项目中添加Logback依赖,例如在Maven项目中的pom.xml文件中添加以下代码: 2.接下来,创建一个Logback配置文件,比如命名为logback.xml,并将其放置在类路径下(src/main/resources/目录)。 3.上述配置将日志输出到名为application.log的文件中。您可以根据需要更改文件名、

    2024年02月09日
    浏览(35)
  • docker查询某时间段的日志

    参考:docker logs 查看docker容器日志详解_Mym_zuoyan_Tmac的博客-CSDN博客_docker logs 查找

    2024年02月16日
    浏览(47)
  • 超轻量级的c#版基于文件的日志记录工具,可定制输出格式,可指定日志文件

    这是我自己个人编写的日志记录,主要使用在只需要记录日志,偶尔到文件中查看一下日志记录的情况。我自己写的一些服务之类的是使用了这个的,代码很少,使用很简单。 搜索和安装zmjtool这个包,我写的,如下图:  

    2024年03月15日
    浏览(68)
  • pytest pytest.ini 配置日志输出至文件

     创建pytest.ini 文件       

    2024年02月10日
    浏览(40)
  • 【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题

    开发 Azure JS Function(NodeJS),使用 mssql 组件操作数据库。当SQL语句执行完成后,在Callback函数中执行日志输出 context.log(\\\" ...\\\") , 遇见如下错误: Warning: Unexpected call to \\\'log\\\' on the context object after function execution has completed. Please check for asynchronous calls that are not awaited or calls to \\\'done\\\' ma

    2024年02月03日
    浏览(47)
  • Logback日志记录只在控制台输出sql,未写入日志文件【解决】

    原因:持久层框架对于Log接口实现方式不一样,日记记录的位置及展示方式也也不一样 可以分别配置到两个环境中,dev用StdOutImpl,prod用Slf4jImpl或者其他的都行,具体需要看他是如何实现的,使用logger对象输出的都是会写入日志的,使用System.out或err的只会在控制台显示,以下是实验

    2024年02月09日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包