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