Docker 日志过滤
简介
Docker logs 命令用于从正在运行的容器中获取日志输出。为了提高效率和解析能力,Docker 提供了多种过滤选项,允许用户根据各种标准筛选日志消息。
过滤选项
1. 按容器
```
--container
2. 按时间戳
```
--since
3. 按日志级别
```
--log-level
4. 按流类型
```
--stream
5. 按正则表达式
```
--filter
6. 按标签
``` --label
7. --follow
此选项使日志命令持续运行,直到容器停止或用户中断它。这对于实时监控日志很有用。
示例用法
按日志级别过滤
``` docker logs --container nginx --log-level error ```此命令将只显示来自 nginx 容器的错误日志消息。
按时间范围过滤
``` docker logs --container webapp --since "2023-01-01T00:00:00Z" --until "2023-01-02T00:00:00Z" ```此命令将显示从 2023 年 1 月 1 日到 2 日期间从 webapp 容器生成的日志消息。
按正则表达式过滤
``` docker logs --container my-app --filter "error|warning" ```此命令将只显示包含 "error" 或 "warning" 字符串的日志消息。
按标签过滤
``` docker logs --container my-app --label env=prod ```此命令将只显示来自具有标签 env=prod 的 my-app 容器的日志消息。
持续监控日志
``` docker logs --container my-app --follow ```此命令将持续显示来自 my-app 容器的日志消息,直到容器停止或用户按下 Ctrl+C 中断命令。