# logParser **Repository Path**: iqiaoke/log-parser ## Basic Information - **Project Name**: logParser - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-29 - **Last Updated**: 2025-12-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 日志解析器 (Log Parser) 一个用于解析和分析日志文件的图形界面应用程序。 ## 功能特性 - 解析指定的日志文件并存储到内置数据库 - 使用SQL查询日志数据 - SQL语法高亮显示 - SQL格式化功能 - 查询结果表格显示,支持列宽调整 - 支持将查询结果导出到Excel文件 ## 系统要求 - Java 8 或更高版本 - Windows 7 或更高版本(或其他支持Java的操作系统) ## 使用方法 ### 方法一:使用批处理文件(推荐) 双击运行 [run.bat](file:///D:/IdeaProjects/java/logParser/run.bat) 文件,程序将自动完成编译和启动过程。 ### 方法二:手动运行 1. 确保已安装Java 8或更高版本 2. 打开命令行窗口 3. 进入项目根目录 4. 执行以下命令编译和打包: ``` mvn clean package ``` 5. 运行应用程序: ``` java -jar target/logParser-1.0-SNAPSHOT.jar ``` ## 操作说明 1. **解析日志文件** - 在"日志文件"字段中输入日志文件路径,或点击"浏览..."按钮选择文件 - 点击"解析并存储日志"按钮 - 等待解析完成 2. **执行SQL查询** - 在SQL查询区域编写SQL语句 - 点击"格式化SQL"按钮优化SQL语句格式(可选) - 点击"执行SQL"按钮执行查询 - 查询结果将显示在下方表格中 3. **导出结果** - 点击"导出到Excel"按钮将查询结果导出到Excel文件 - 在弹出的对话框中选择要导出的列 - 选择保存位置和文件名 ## 注意事项 - 程序使用H2数据库存储日志数据,默认存储在用户主目录下的`logparser`文件中 - 应用程序默认加载`src/main/resources/app.log`文件作为示例日志 - SQL查询支持标准SQL语法,表名为`log_info`,字段包括: - query: 查询内容 - log_id: 日志ID - user_id: 用户ID - message_id: 消息ID - domain_id: 业务域ID - subject_id: 主题ID - processor: 处理器 - request: 请求内容 - response: 响应内容 - elapsed_time: 耗时(毫秒) - log_time: 日志时间 ## 常见问题 ### 乱码问题 如果在解析日志时出现乱码,这是因为程序现在会自动使用UTF-8编码读取文件,应该不会再出现乱码问题。 ### libpng警告 如果出现"libpng warning: iCCP: cHRM chunk does not match sRGB"警告,这是Swing界面库的正常警告,不影响程序功能。 ### JSON解析错误 如果出现JSON解析错误(如Expected a ',' or '}'),这通常是由于特殊字符未正确处理导致的。程序已经增加了对转义字符和Unicode字符的处理,如果仍然出现问题,请检查日志文件格式是否正确。 ### JSON格式保留 程序会自动识别request和response字段中的JSON内容,并保留其原始格式,不会破坏JSON结构。 ## 技术栈 - Java Swing (图形界面) - H2 Database (嵌入式数据库) - Hutool (工具库) - Apache POI (Excel处理) - RSyntaxTextArea (SQL编辑器)