专业的日志文件分析工具
LogTrawl 是一个基于 Wails v2 框架开发的现代化桌面日志分析工具,提供强大的日志查看、搜索、过滤和分析功能。
- 智能搜索: 支持正则表达式、大小写敏感、全词匹配
- 实时过滤: 创建多个过滤窗口,支持复杂的逻辑表达式
- 快速过滤: 选中文本按
F键快速创建过滤器 - 过滤示例: 内置丰富的过滤表达式示例
- 语法高亮: 自动识别日志格式并高亮显示关键信息
- 自定义高亮: 选中文本按
E键添加自定义高亮词 - 多色彩标记: 支持多种颜色的高亮标记
- 行号显示: 可切换的行号显示功能
- 统计分析: IP地址、URL、状态码等统计分析
- 图表展示: 使用 ECharts 生成可视化图表
- 时间线功能: 标记重要日志条目,按
T键快速添加 - 流程图: 支持 Mermaid 流程图展示
- 文件分片: 大文件智能分片,支持按大小、行数、时间分割
- 项目管理: 保存和恢复工作状态,包括过滤器和高亮设置
- 多文件支持: 同时打开和分析多个日志文件
- 导出功能: 导出过滤结果和分析报告
- 响应式界面: 适配不同屏幕尺寸,小窗口智能收纳功能
- 快捷键操作: 丰富的快捷键支持,提高操作效率
- 拖拽支持: 支持拖拽文件打开
- 最近文件: 快速访问最近打开的文件
- 后端: Go 1.21+ + Wails v2 框架
- 前端: Vue 3 + TypeScript + Element Plus + Pinia
- 图表: ECharts 5.6+ + Mermaid 11.9+
- 构建: Vite 4.x + Vue-tsc
- 桌面: 跨平台桌面应用程序 (Windows/macOS/Linux)
- 操作系统: Windows 10+, macOS 10.13+, Linux (Ubuntu 18.04+)
- 开发环境: Go 1.21+, Node.js 16+
- 内存: 建议 4GB+ RAM
- 存储: 100MB+ 可用空间
-
安装依赖
# 安装 Go (https://golang.org/dl/) # 安装 Node.js (https://nodejs.org/) # 安装 Wails CLI go install github.com/wailsapp/wails/v2/cmd/wails@latest
-
克隆项目
git clone https://github.com/onewinner/LogTrawl.git cd LogTrawl -
安装前端依赖
cd frontend npm install cd ..
-
运行开发模式
wails dev
# 构建所有平台
wails build
# 构建特定平台
wails build -platform windows/amd64
wails build -platform darwin/amd64
wails build -platform linux/amd64构建完成后,可执行文件位于 build/bin/ 目录下。
- 下载预编译版本 (推荐)
- 解压并运行
LogTrawl.exe(Windows) 或LogTrawl(Linux/macOS) - 拖拽日志文件到应用窗口或点击"打开文件"按钮
- 开始分析你的日志!
| 方式 | 操作 | 说明 |
|---|---|---|
| 拖拽打开 | 直接拖拽文件到窗口 | 最快捷的方式 |
| 菜单打开 | 点击工具栏"文件"按钮 | 支持多选 |
| 文件夹 | 侧边栏"打开文件夹" | 批量导入 |
| 最近文件 | 侧边栏"最近打开" | 快速访问 |
- 在顶部搜索框输入关键词
- 使用
↑↓键或按钮导航结果 - 支持实时搜索和结果高亮
| 选项 | 图标 | 功能 |
|---|---|---|
| 正则表达式 | .* |
支持复杂模式匹配 |
| 大小写敏感 | Aa |
区分大小写 |
| 全词匹配 | Ab |
完整单词匹配 |
# 基础过滤
error # 包含 "error" 的行
# 逻辑操作
error AND 404 # 同时包含两个关键词
error OR warning # 包含任一关键词
(GET OR POST) AND /api/ # 复合条件
# 实际应用
(error OR warning) AND 404 # 错误信息且404状态
login && (success || failed) # 登录相关记录
(GET || POST) AND /api/ AND (200 OR 201) # API成功响应- 选中文本 → 按
E键 → 自动添加高亮 - 支持多种颜色自动分配
- 可在工具栏管理高亮词
- 点击日志行 → 按
T键 → 添加到时间线 - 在时间线面板查看和管理标记
- 支持添加备注和跳转
- IP 分析: 访问频率
- URL 分析: 热门页面
- 状态码: 错误率统计
- 时间分布: 访问模式分析
- 柱状图、饼图、折线图
- 支持交互式图表操作
- 可导出图表为图片
- 点击工具栏"分片"按钮
- 选择分片方式:
- 按大小: 每片固定大小
- 按行数: 每片固定行数
- 按时间: 按时间段分割
- 设置输出目录和文件名格式
- 保存项目: 保存当前工作状态
- 加载项目: 恢复之前的工作环境
- 包含:过滤器、高亮词、时间线等
- 字体: 大小、字体族
- 编码: UTF-8、GBK等
- 行距: 可调节行高
- 显示选项: 行号、自动换行、语法高亮
查看完整的快捷键列表和使用技巧
# Apache Common Log Format
127.0.0.1 - - [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326
# Nginx Access Log
192.168.1.1 - - [25/Dec/2023:10:00:01 +0000] "GET /index.html HTTP/1.1" 200 1024 "-" "Mozilla/5.0"
# Combined Log Format
127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 2326 "http://www.example.com/start.html" "Mozilla/4.08"# 标准应用日志
2023-12-25 10:00:01 INFO [main] Application started successfully
2023-12-25 10:00:02 WARN [worker-1] Connection timeout, retrying...
2023-12-25 10:00:03 ERROR [worker-2] Database connection failed
# JSON 格式日志
{"timestamp":"2023-12-25T10:00:01Z","level":"INFO","message":"User login","user_id":12345}# Syslog 格式
Dec 25 10:00:01 server01 sshd[1234]: Accepted password for user from 192.168.1.100
# Windows Event Log
2023-12-25 10:00:01 Information Microsoft-Windows-Security-Auditing Logon success- 支持自定义正则表达式解析
- 灵活的字段映射配置
- 可扩展的语法高亮规则
| 快捷键 | 功能 | 说明 |
|---|---|---|
E |
添加高亮词 | 选中文本后按 E 键 |
| 快捷键 | 功能 | 说明 |
|---|---|---|
T |
快速添加时间线 | 点击日志行后按 T 键 |
| 快捷键 | 功能 | 说明 |
|---|---|---|
F |
快速过滤 | 选中文本后按 F 键 |
| 快捷键 | 功能 | 说明 |
|---|---|---|
Ctrl + A |
全选当前窗口文本 | 选择所有可见内容 |
- 高亮词: 选中任意文本后按 E 键即可快速添加高亮,支持多种颜色自动分配
- 时间线: 点击日志行使其获得焦点,然后按 T 键可快速添加到时间线
- 过滤: 选中关键词后按 F 键可快速创建包含该词的过滤窗口
- 窗口切换: 可在主窗口和过滤窗口之间切换,快捷键在各窗口中都有效
我们欢迎所有形式的贡献!无论是 bug 报告、功能请求、代码贡献还是文档改进。
- 已开源
- 在 Issues 页面创建新的 issue
- 使用 Bug 报告模板
- 提供详细的复现步骤和环境信息
- 在 Issues 页面创建新的 issue
- 使用功能请求模板
- 详细描述期望的功能和使用场景
- Fork 本仓库
- 创建功能分支:
git checkout -b feature/amazing-feature - 提交更改:
git commit -m 'Add amazing feature' - 推送到分支:
git push origin feature/amazing-feature - 创建 Pull Request
🎯 首个正式版本发布
- 智能日志查看器: 支持大文件快速加载和分块处理
- 高级搜索引擎: 正则表达式、大小写敏感、全词匹配
- 实时过滤系统: 支持复杂逻辑表达式 (AND/OR/括号分组)
- 语法高亮: 自动识别日志格式,支持时间、IP、状态码等高亮
- 自定义高亮: 多色彩标记系统,支持快捷键操作
- 时间线标注: 重要日志条目标记和备注功能
- 数据分析图表: 基于 ECharts 的统计可视化
- 流程图支持: 集成 Mermaid 图表展示
- 文件分片器: 按大小、行数、时间智能分割大文件
- 项目管理: 保存和恢复完整工作状态
- 多文件支持: 标签页式文件管理
- 导出功能: 支持过滤结果和分析报告导出
-
响应式界面: 适配不同屏幕尺寸,智能按钮收纳
-
快捷键系统:
-
E- 添加高亮词 -
T- 快速添加时间线 -
F- 快速过滤 -
Ctrl+A- 全选文本 -
右键菜单: 上下文感知的智能菜单
-
拖拽支持: 文件拖拽打开
- IP 分析: 访问频率统计和地理分布
- URL 分析: 热门页面和响应时间分析
- 状态码统计: 错误率和成功率分析
- 时间分布: 访问模式和趋势分析
- 大文件优化: 支持 GB 级文件的流畅操作
- 内存管理: 智能分块加载和内存清理
- 性能监控: 实时系统资源监控
- 多格式支持: Web服务器日志、应用日志、系统日志
- 现代化设计: Element Plus UI 组件库
- 主题一致性: 统一的视觉风格和交互体验
- 设置系统: 完整的个性化配置选项
- 多语言准备: 国际化架构支持
- 异步加载: 非阻塞的文件处理
- 虚拟滚动: 大数据量的流畅滚动
- 缓存机制: 智能数据缓存策略
- 并发处理: 多线程文件分析
- Windows: 完整功能支持
- macOS: 原生体验(未测试)
- Linux: 全平台兼容(未测试)
⭐ 如果这个项目对你有帮助,请给它一个 Star!
compilelife/loginsight: loginsight致力于打造一款日志分析的利器
Made with ❤️ by onewin 欢迎关注作者公众号:
















