# orca_aiops **Repository Path**: holyorca-ai/orca_aiops ## Basic Information - **Project Name**: orca_aiops - **Description**: orca-aiops-zhangqian - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-22 - **Last Updated**: 2026-09-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HOLYORCA智能日志分析平台(基于前后端分离的智能日志分析平台) ## 1. 项目整体架构 本项目是一个基于 **Spring Boot** 和  **Vue 3** 的前后端分离智能日志分析平台。 - **后端架构**:采用 Spring Boot、Spring Security、JWT、MyBatis、Druid 等核心技术,语言版本基于 Java 17。 - **前端架构**:独立单页应用(SPA),采用 Vue 3、Vite、Element-Plus、Pinia、Vue Router 等现代前端技术栈。 - **数据存储**:使用 PostgreSQL 存储核心业务数据,Redis 承担高频数据缓存和会话(Token)状态管理。 *** ## 2. 主要模块职责 项目在后端采用了多模块(Multi-Module)架构进行关注点分离,前端作为独立工程管理: | 模块名称 | 职责说明 | | :--------------- | :----------------------------------------------------------------------------- | | `orca-admin` | **Web服务入口**。包含系统的核心 Controller(如 `SysLoginController`)、Swagger 接口文档配置以及应用启动主类。 | | `orca-framework` | **核心框架层**。提供全局通用配置,如 Spring Security 安全认证策略、JWT 拦截、全局异常拦截、多数据源配置、Redis 缓存配置等。 | | `orca-system` | **系统业务层**。包含用户、角色、菜单、部门、字典等核心系统模块的领域模型(实体)、Mapper 映射接口以及 Service 业务逻辑实现。 | | `orca-quartz` | **定时任务模块**。集成 Quartz,提供分布式的定时任务调度、执行与日志管理功能。 | | `orca-generator` | **代码生成器模块**。支持基于数据库表一键生成增删改查的后端代码与前端页面,极大提升开发效率。 | | `orca-common` | **通用工具层**。包含各种工具类(如 `StringUtils`, `DateUtils`)、全局常量、自定义注解及系统异常定义。 | | `orca-vue3` | **前端工程**。基于 Vue 3 的独立前端目录,包含页面视图、组件封装、路由守卫和全局状态管理。 | *** ## 3. 关键类与函数说明 ### 后端核心类 - **启动与配置** - [OrcaApplication.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-admin/src/main/java/com/orca/OrcaApplication.java):Spring Boot 应用的启动类,程序的唯一入口,内置了控制台启动 ASCII 标识。 - [SecurityConfig.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-framework/src/main/java/com/orca/framework/config/SecurityConfig.java):Spring Security 核心配置类,负责配置 URL 的匿名访问策略、禁用 CSRF、配置 CORS 跨域过滤以及装配 JWT 拦截器。 - **请求与鉴权** - [JwtAuthenticationTokenFilter.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-framework/src/main/java/com/orca/framework/security/filter/JwtAuthenticationTokenFilter.java):无状态的 JWT 拦截器,对每个进入的 HTTP 请求进行拦截,提取 Token 并解析,刷新用户的登录有效期状态。 - [BaseController.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-common/src/main/java/com/orca/common/core/controller/BaseController.java):Web 层的通用数据处理基类,封装了常用的复用方法,如分页设置 `startPage()`、标准响应返回 `success()` / `error()`,以及获取当前登录用户信息的便捷方法。 - **数据访问** - [DynamicDataSource.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-framework/src/main/java/com/orca/framework/datasource/DynamicDataSource.java):动态数据源实现类,继承自 `AbstractRoutingDataSource`,支持系统在主从数据库或多数据源间进行动态路由切换。 ### 前端核心入口 - [vite.config.js](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-vue3/vite.config.js):Vite 构建与本地服务配置文件。定义了反向代理策略(将 `/dev-api` 代理到后端 `http://localhost:8080`),解决本地开发跨域问题。 - [main.js](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-vue3/src/main.js):前端 Vue 3 实例创建入口,完成全局组件、指令、插件和路由状态的挂载。 - [permission.js](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-vue3/src/permission.js):前端路由守卫,通过全局前置守卫(`router.beforeEach`)控制页面访问权限、拦截未登录请求并动态拉取用户菜单和角色信息。 *** ## 4. 依赖关系 ### 后端主要依赖 - **核心框架**:Spring Boot `4.0.3` - **安全认证**:Spring Security + JWT `0.9.1` - **持久层框架**:MyBatis-Spring-Boot `4.0.1` + PageHelper 分页插件 `2.1.1` - **数据库连接池**:Druid `1.2.28` - **JSON 解析**:Fastjson2 `2.0.61` - **接口文档**:Springdoc `3.0.2` ### 前端主要依赖 - **核心框架**:Vue `3.5.26` - **路由管理**:Vue Router `4.6.4` - **构建工具**:Vite `6.4.1` - **UI 组件库**:Element-Plus `2.13.1` - **状态管理**:Pinia `3.0.4` - **网络请求**:Axios `1.13.2` ### 环境依赖要求 - **Java**:JDK 17 - **数据库**:PostgreSQL 15+ - **缓存**:Redis 6.x 或更高版本 - **包管理工具**:Maven 3.x, npm 或 pnpm *** ## 5. 项目运行方式 ### 5.1 环境准备 1. **数据库初始化**:启动 PostgreSQL 数据库,创建名为 `fullscene_db`(或对应名称)的数据库,并导入项目相关的初始化 SQL 脚本。 2. **修改数据源配置**:编辑 [application-druid.yml](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-admin/src/main/resources/application-druid.yml),将 `url`, `username`, `password` 修改为本地实际的 PostgreSQL 账号信息。 3. **启动 Redis**:确保 Redis 服务已启动,并在 [application.yml](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-admin/src/main/resources/application.yml) 中正确配置其地址与端口(默认 `127.0.0.1:6379`)。 ### 5.2 启动后端服务 1. 打开终端,进入项目根目录。 2. 执行 Maven 安装命令,下载依赖并编译: ```bash mvn clean install -Dmaven.test.skip=true ``` 3. 运行启动类 [OrcaApplication.java](file:///Volumes/data/work/orca_sec/fullscene-log-ai/orca-admin/src/main/java/com/orca/OrcaApplication.java) 中的 `main` 方法,或使用 Maven 命令启动: ```bash cd orca-admin mvn spring-boot:run ``` 4. 服务启动成功后,默认监听 `8080` 端口。可以访问接口文档:`http://localhost:8080/swagger-ui.html` ### 5.3 启动前端服务 1. 另起一个终端,进入前端工程目录: ```bash cd orca-vue3 ``` 2. 安装前端依赖: ```bash npm install ``` 3. 启动本地开发服务: ```bash npm run dev ``` 4. 启动完成后,浏览器会自动打开 `http://localhost:80`(或控制台分配的本地端口),输入初始账号密码即可登录系统。