DPanel 日志收集分析器插件 — 基于管道的日志收集、实时查看与智能分析。
- 管道管理 — 创建收集管道,一个管道对接一个容器,数据完全隔离
- 动态收集 — 通过 Fluentd Forward / Syslog UDP 协议接收容器日志
- 静态分析 — 自动识别挂载的日志文件,支持 Nginx / Syslog / JSON / Docker 等格式
- 实时日志流 — 自动滚动显示最新日志
- 智能分析 — 日志级别分布、Top IP、HTTP 状态码统计、时间线趋势
- 告警系统 — 每管道独立告警阈值,高危事件持久化通知
- 日志持久化 — SQLite 存储,自动清理过期数据
- 日志导出 — JSONL 格式一键导出
在 DPanel 插件管理中安装 LogLens,配置日志接收端口(默认 24224)。
在 LogLens 界面点击「新建管道」,输入名称(如 nginx-prod),名称同时作为日志路由的 Tag。
启动容器时指定日志驱动:
docker run --log-driver=fluentd \
--log-opt fluentd-address=<host>:24224 \
--log-opt tag=nginx-prod \
nginx:latest或使用 Syslog:
docker run --log-driver=syslog \
--log-opt syslog-address=udp://<host>:15140 \
--log-opt tag=nginx-prod \
nginx:latest- 「实时日志」Tab — 自动滚动显示最新日志
- 「分析」Tab — 一键生成统计报告和告警
- 「日志查询」Tab — 按级别、关键词过滤搜索
| 类型 | 说明 |
|---|---|
| 动态 | 用户创建,通过 fluentd/syslog 驱动接收容器日志 |
| 静态 | 启动时自动扫描 /logs/ 目录生成,不可删除,可编辑名称 |
| 配置 | 默认值 | 说明 |
|---|---|---|
| RECEIVE_PORT | 24224 | Fluentd Forward 协议端口 |
| SYSLOG_PORT | 15140 | Syslog UDP 端口 |
| DATA_RETENTION_DAYS | 7 | 日志保留天数 |
| MAX_LOG_SIZE_MB | 100 | 静态文件单次分析上限 |
| TIMEZONE | Asia/Shanghai | 时区 |
| LOG_PATHS | (空) | 额外挂载的宿主机日志路径,逗号分隔 |
- 后端:Go + Gin + SQLite
- 前端:Vue 3 + Material Design 3
- 协议:Fluentd Forward (MessagePack) + Syslog UDP (RFC 3164)
- 部署:Docker Compose 源码构建
| 接口 | 方法 | 说明 |
|---|---|---|
/api/pipelines |
GET | 列出所有管道 |
/api/pipelines/create |
POST | 创建动态管道 |
/api/pipelines/update |
POST | 编辑管道名称/描述 |
/api/pipelines/delete |
POST | 删除动态管道 |
/api/logs/query |
POST | 分页查询日志 |
/api/logs/tail |
POST | 获取最新日志 |
/api/logs/search |
POST | 搜索日志 |
/api/logs/export |
POST | 导出日志 (JSONL) |
/api/analyze |
POST | 分析管道 |
/api/alerts |
GET | 告警列表 |
/api/alerts/read |
POST | 标记已读 |
/api/alerts/config |
POST | 更新告警阈值 |
/api/stats |
GET | 全局统计 |
/api/stats/pipeline/:id |
GET | 管道统计 |
MIT