# jk **Repository Path**: mafei2018/jk ## Basic Information - **Project Name**: jk - **Description**: 网站监控系统 - 支持页面监控、API监控、后台任务调度、用户注册登录、监控历史统计 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-25 - **Last Updated**: 2026-02-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JK 网站监控系统 一个基于 Go + Gin + MySQL 的网站监控系统,支持页面监控、API监控、后台任务调度等功能。 ## 功能特性 - 📊 **多种监控类型**:支持页面监控、API监控、定时任务 - ⏰ **灵活调度**:可配置监控间隔、超时时间、重试次数 - 📈 **统计分析**:监控历史记录、可用率统计、响应时间分析 - 👤 **用户系统**:用户注册登录、JWT 认证 - 🔔 **告警通知**:支持邮件和 Webhook 告警(待完善) - 🎨 **现代 UI**:响应式前端界面 ## 技术栈 - **后端框架**: Gin - **ORM**: GORM - **数据库**: MySQL - **日志**: Zerolog - **认证**: JWT - **配置**: YAML ## 快速开始 ### 1. 克隆项目 ```bash git clone https://gitee.com/mafei2018/jk.git cd jk ``` ### 2. 安装依赖 ```bash go mod tidy ``` ### 3. 配置数据库 编辑 `config.yaml`,修改数据库连接信息: ```yaml database: host: 121.36.202.107 port: 3306 user: mac-user password: CA5aN5#5L8Dk@gu9 dbname: mac ``` ### 4. 运行项目 ```bash go run cmd/server/main.go ``` 访问 http://localhost:8080 ## API 文档 ### 认证相关 - `POST /api/v1/auth/register` - 用户注册 - `POST /api/v1/auth/login` - 用户登录 - `GET /api/v1/profile` - 获取当前用户信息(需认证) ### 任务管理 - `GET /api/v1/tasks` - 获取任务列表 - `POST /api/v1/tasks` - 创建监控任务 - `GET /api/v1/tasks/:id` - 获取任务详情 - `PUT /api/v1/tasks/:id` - 更新任务 - `DELETE /api/v1/tasks/:id` - 删除任务 - `POST /api/v1/tasks/:id/check` - 手动触发检查 ### 统计数据 - `GET /api/v1/stats/:task_id/records` - 获取监控记录 - `GET /api/v1/stats/:task_id/history` - 获取统计数据 - `GET /api/v1/stats/:task_id/overview` - 获取概览 ## 项目结构 ``` jk/ ├── cmd/ │ └── server/ │ └── main.go # 程序入口 ├── internal/ │ ├── config/ # 配置管理 │ ├── handler/ # HTTP 处理器 │ ├── middleware/ # 中间件 │ ├── model/ # 数据模型 │ ├── repository/ # 数据访问层 │ ├── scheduler/ # 任务调度器 │ └── service/ # 业务逻辑层 ├── pkg/ │ ├── logger/ # 日志工具 │ └── monitor/ # 监控核心 ├── web/ │ ├── static/ # 静态文件 │ └── templates/ # HTML 模板 ├── config.yaml # 配置文件 └── README.md ``` ## License MIT