网站开发网址,免费社区建站系统,怎么制作一个app软件,wordpress 暂时关闭docker logs 是什么
docker logs 是 Docker 命令行工具提供的一个命令#xff0c;用于查看容器的日志输出。它可以显示容器在运行过程中生成的标准输出#xff08;stdout#xff09;和标准错误输出#xff08;stderr#xff09;#xff0c;帮助用户诊断容器的行为和排查…docker logs 是什么
docker logs 是 Docker 命令行工具提供的一个命令用于查看容器的日志输出。它可以显示容器在运行过程中生成的标准输出stdout和标准错误输出stderr帮助用户诊断容器的行为和排查问题。
docker logs 作用
故障排除容器在运行过程中可能会发生各种问题如错误、异常或崩溃。使用 docker logs 可以查看容器的日志输出从中获取关于问题发生的线索帮助诊断和解决故障。监控和日志分析通过分析容器的日志可以了解容器的运行状态、性能指标和行为模式。这对于监控容器的健康状况、性能调优和故障预测都非常重要。应用程序调试当容器中的应用程序出现 bug 或异常行为时docker logs 可以提供应用程序输出的详细日志。这些日志有助于开发人员定位和修复问题并进行应用程序调试。日志记录和审计通过将容器的日志输出到中央日志收集系统可以实现日志的集中存储和管理。这样可以更方便地进行日志分析、报告生成、安全审计和合规性检查。安全分析容器的日志可以提供有关容器和应用程序的安全相关信息如潜在的攻击行为、异常访问模式和安全事件。利用 docker logs 可以监视容器的日志及时发现和响应安全问题。
官方文档
链接地址https://docs.docker.com/reference/cli/docker/container/logs/
里面有详细的记录 常用命令
帮助命令 --help
在命令行中运行 docker logs --help 时它会显示有关 docker logs 命令的帮助信息包括命令的语法、可用选项以及它们的说明。这个帮助信息可以帮助你理解和正确使用 docker logs 命令。
docker logs --help日志详情 --details
显示全部的日志详情
使用 --details 选项后docker logs 命令会在输出日志消息时包含以下元数据信息
容器名称或 ID显示生成日志消息的容器的名称或 ID。时间戳显示日志消息生成的时间戳。标签标准输出和标准错误区分标准输出stdout和标准错误stderr的标签以便更清楚地识别消息的来源。
docker logs 默认就是 --details
docker logs --details 32ed2147d371
docker logs 32ed2147d371最后n行数据 -n --tail
–tail 是 Docker Logs 命令的一个选项用于限制显示容器日志的行数。通过指定 --tail 后面的数字参数你可以只显示最后几行的日志内容。
-n和–tail效果一样
docker logs --tail 3 29e77cf8e4af
docker logs -n 3 29e77cf8e4af实时日志输出 -f --follow
–follow 是 Docker Logs 命令的一个选项用于实时跟踪容器的日志输出。当你在命令行中执行 docker logs --follow或简写为 docker logs -f时它将以实时方式显示容器的日志并持续输出新的日志内容。
docker logs --follow 29e77cf8e4af
docker logs -f 29e77cf8e4af显示日志时间戳 -t
-t 是 Docker Logs 命令的一个选项用于在日志输出中包含时间戳。当你在命令行中执行 docker logs -t 时它会在每条日志消息前显示时间戳信息。
docker logs --tail 3 --timestamps 29e77cf8e4af
docker logs -n 3 -t 29e77cf8e4af 显示从某个时刻以来的日志 -since
–since 是 Docker Logs 命令的一个选项用于限制显示容器日志的起始时间。通过指定 --since 后面的时间参数你可以只显示从指定时间点后生成的日志内容。
注意时间参数可以使用多种格式如 ISO 8601例如“2022-01-01T00:00:00”、UNIX 时间戳、相对时间例如“1h ago” 表示一小时前等。
// 查看从2024-03-28T11:43:00.015后的日志
docker logs --since2024-03-28T11:43:00.015 29e77cf8e4af
// 查看最近5分钟的日志
docker logs --since5m 29e77cf8e4af显示指定时刻之前的日志 --until
–until 是 Docker Logs 命令的一个选项用于限制显示容器日志的结束时间。通过指定 --until 后面的时间参数你可以只显示在指定时间点之前生成的日志内容
注意时间参数可以使用多种格式如 ISO 8601例如“2022-01-01T00:00:00”、UNIX 时间戳、相对时间例如“1h ago” 表示一小时前等。
显示到2024-03-28 11:25:55为止的日志
docker logs --until2024-03-28 11:25:55 29e77cf8e4af
显示5分钟前的日志
docker logs --until5m 29e77cf8e4af使用grep过滤日志
docker logs 命令本身并不支持直接使用 grep 进行过滤。然而你可以通过结合使用管道|和 grep 命令来在 Docker 日志中进行文本匹配和过滤。
docker logs 29e77cf8e4af | grep 2024-03-28 11:25:58
docker logs 29e77cf8e4af | grep 2024 | grep 03 | grep 184# 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -3 2024-03-28 11:25:58.184 # 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -C 3 2024-03-28 11:25:58.184
# 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -A 3 -B 3 2024-03-28 11:25:58.184 # 打印匹配行的后3行
docker logs 29e77cf8e4af | grep -A 3 2024-03-28 11:25:58.184 # 打印匹配行的前3行
docker logs 29e77cf8e4af | grep -B 3 2024-03-28 11:25:58.184 # 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -3 ‘2024-03-28 11:25:58.184’ # 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -C 3 ‘2024-03-28 11:25:58.184’ # 打印匹配行的前后3行
docker logs 29e77cf8e4af | grep -A 3 -B 3 ‘2024-03-28 11:25:58.184’ # 打印匹配行的后3行
docker logs 29e77cf8e4af | grep -A 3 ‘2024-03-28 11:25:58.184’ # 打印匹配行的前3行
docker logs 29e77cf8e4af | grep -B 3 ‘2024-03-28 11:25:58.184’ 常用命令
# 查询指定时间范围内的日志信息
# 注意一定要按docker logs --help 中的说明的时间格式格式是2024-03-28T11:43:00.015这种
docker logs --since2024-03-28T11:43:00.015 --until2024-03-28T11:44:00.015 29e77cf8e4af# 查询最近30分钟内的日志
docker logs --since 30m 29e77cf8e4af# 查询最近30分钟前的日志
docker logs --until 30m 29e77cf8e4af# 实时查看最近的100条日志信息很常用
docker logs -f --tail 100 29e77cf8e4af# 从日志中查找指定的内容可以有多个grep
docker logs 29e77cf8e4af | grep 关键字# 从日志中查找指定的内容 - 多个grep
先查找出包含2024的再从中查找包含03最后再查找包含184的
docker logs 29e77cf8e4af | grep 2024 | grep 03 | grep 184# 查询指定时间范围内的日志并且包含特定的字符
docker logs --since2024-03-28T13:00:00 --until2024-03-28T14:00:00 29e77cf8e4af |grep -30 关键字