# accessLog-java **Repository Path**: 0X00000000/accessLog-java ## Basic Information - **Project Name**: accessLog-java - **Description**: accessLog日志不用DB的查询分析工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2025-02-09 - **Last Updated**: 2025-11-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # accessLog-java ## 介绍 accessLog-java 是一个用于分析访问日志的工具,无需依赖数据库即可进行日志查询与分析。它支持上传日志文件、定义日志格式、并提供多种分析功能,如IP识别、路径统计、状态码分析等。 ## 软件架构 这是一个单体应用,基于Spring Boot框架开发,前端使用Layui作为UI组件库。项目结构清晰,模块化设计便于扩展和维护。 ### 主要模块 - **日志上传与解析**:支持上传日志文件并定义日志格式。 - **日志分析**:提供多种分析功能,如IP统计、URL过滤、状态码分析等。 - **查询语言支持**:支持自定义查询语言进行复杂查询。 - **IP识别**:集成IP地理位置识别功能。 ## 功能特性 - 支持日志文件上传与解析。 - 提供多种日志分析功能(IP统计、URL过滤、状态码分析等)。 - 支持自定义查询语言进行复杂分析。 - 集成IP地理位置识别功能。 - 优化了路径统计耗时部分,提升性能。 ## 安装与部署 ### 环境要求 - Java 8 或更高版本 - Maven 3.x - Spring Boot 2.x - Layui 前端框架 ### 构建与运行 1. 克隆仓库: ```bash git clone https://gitee.com/0X00000000/accessLog-java.git ``` 2. 进入项目目录: ```bash cd accessLog-java ``` 3. 构建项目: ```bash mvn clean package ``` 4. 运行项目: ```bash java -jar target/accessLog-java.jar ``` 5. 访问应用: 打开浏览器访问 `http://localhost:8080` ## 使用说明 ### 上传日志文件 1. 打开首页,点击“上传日志文件”按钮。 2. 选择日志文件并定义日志格式(如 %a %l %u %t "%r" %s %D)。 3. 点击“上传”按钮,系统将解析并展示日志内容。 ### 日志分析 1. **IP统计**:点击“IP统计”按钮,系统将展示访问次数最多的IP地址。 2. **URL过滤**:点击“URL过滤”按钮,输入过滤条件,系统将展示匹配的URL路径。 3. **状态码分析**:点击“状态码分析”按钮,系统将展示不同状态码的访问次数。 ### 自定义查询 1. 在分析页面输入自定义查询语句,如: ```sql select ip, count(*) as count from access_log where status = 200 group by ip order by count desc limit 10 ``` 2. 点击“分析”按钮,系统将展示查询结果。 ## 技术细节 - **后端框架**:Spring Boot - **前端框架**:Layui - **日志解析**:使用正则表达式解析日志文件。 - **查询语言**:支持自定义查询语言,类似于SQL语法。 - **IP识别**:使用IP数据库进行地理位置识别。 ## 贡献指南 欢迎贡献代码和改进建议。请遵循以下步骤: 1. Fork 仓库。 2. 创建新分支。 3. 提交代码更改。 4. 创建 Pull Request。 ## 许可证 本项目采用 MIT 许可证。详情请查看 LICENSE 文件。