# API-Monitor
**Repository Path**: dext7r/API-Monitor
## Basic Information
- **Project Name**: API-Monitor
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: dependabot/go_modules/agent-go/golang.org/x/net-0.38.0
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-01
- **Last Updated**: 2026-02-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
API Monitor
---
**一个全能型的 API 管理与服务器监控面板**。
它不仅能帮您集中管理主机、实时 SSH 终端、Docker 容器监控,还提供了强大的云服务集成功能,包括 Cloudflare、OpenAI、Zeabur、Koyeb、等多种云服务。
同样支持Antigravity / Gemini 的模型转 API 调用,同时有完善的额度使用统计、日志记录、模型列表获取、全链路耗时统计等功能。
[🔵 Docker Hub](https://hub.docker.com/r/iwvw/api-monitor) | [🔴 在线演示 (Demo)](https://api-monitor.zeabur.app/)
> [!TIP]
> **多架构支持**:本项目 Docker 镜像已原生支持 `linux/amd64` 和 `linux/arm64`。
> [!WARNING]
> 请勿在演示环境中输入真实的敏感数据(如 API Key、服务器密码等)。演示数据将**定期自动清空**。
---
## ✨ 核心特性
### 🖥️ 基础设施管理
- **主机监控**:实时可视化 CPU、内存、磁盘及系统负载数据。
- **SSH Web 终端**:全功能交互式终端,支持多会话切换与断线重连。
- **Docker 管理**:一键控制容器启停、重启,查看实时运行状态。「待重构」
- **健康拨测**:定时检测主机连通性及响应时间,生成历史趋势图。
### ☁️ 云服务集成
- **Cloudflare DNS**:多账号域名管理、DNS 记录快速增删改、代理模式切换。
- **AI 模型 API**:
- **OpenAI / Antigravity / Gemini**:多端点可用性检测、实时配额查询、模型列表获取、全链路耗时统计。
- **Zeabur**:多账号余额监控、项目费用追踪、服务生命周期管理。
- **Koyeb**:
- 支持多账号管理与组织切换。
- 服务/应用生命周期控制(暂停/重启/重新部署)。
- 实时日志流查看、实例状态监控及资源用量统计。
### 🛠️ 架构与安全
- **现代前端栈**:基于 **Vue 3 + Pinia** 的响应式状态管理,使用 **Vite 7** 构建,极致的加载速度。
- **全链路追踪**:引入 **Trace ID**,从 HTTP 请求到数据库审计日志实现全生命周期追踪。
- **结构化日志**:基于 Node.js `AsyncLocalStorage` 的高性能异步 JSON 日志系统。
- **自动脱敏**:智能识别并打码日志及数据库中的 Token、密码、Key 等敏感信息。
- **持久化存储**:采用 SQLite,支持千万级日志存量与自动保留策略(按天/按量清理)。
---
## 📦 快速开始
### 1. Docker 部署 (推荐)
**方式一:Docker Compose (最简)**
```yaml
version: '3.8'
services:
api-monitor:
image: iwvw/api-monitor:latest
container_name: api-monitor
ports:
- "3000:3000"
volumes:
- ./data:/app/data
restart: unless-stopped
```
**方式二:Docker CLI**
```bash
docker run -d --name api-monitor \
-p 3000:3000 \
-v $(pwd)/data:/app/data \
--restart unless-stopped \
iwvw/api-monitor:latest
```
### 2. 本地开发
```bash
# 克隆仓库
git clone https://github.com/iwvw/api-monitor.git
cd api-monitor
# 安装依赖
npm install
# 启动开发模式 (热重载: 前端 Vite + 后端 Express)
npm run dev
```
如需仅运行生产环境模式:
```bash
npm run build && npm start
```
---
## 🔒 环境变量配置
支持通过 `.env` 文件或 Docker 环境变量进行配置。可参考根目录下的 `.env.example`。
| 变量名 | 默认值 | 说明 |
| :--- | :--- | :--- |
| `PORT` | `3000` | 服务运行端口 |
| `NODE_ENV` | `production` | 运行环境 (`development` / `production`) |
| `ADMIN_PASSWORD` | - | **初始管理员密码**(首次启动时生效,也可在界面设置) |
| `JWT_SECRET` | (随机) | **强烈建议设置**。用于加密会话 Token |
| `DATA_DIR` | `/app/data` | 数据持久化目录 (数据库与日志存放路径) |
| `DB_NAME` | `data.db` | 数据库文件名 |
| `LOG_LEVEL` | `INFO` | 日志级别 (`DEBUG`, `INFO`, `WARN`, `ERROR`) |
| `LOG_RETENTION_DAYS` | `7` | 本地日志文件保留天数 |
| `TRUST_PROXY` | `false` | 若部署在反代后 (如 Nginx/CF),建议设为 `true` |
| `VITE_USE_CDN` | `true` | 是否启用 CDN 加载静态资源 (构建时生效) |
| `VITE_CDN_PROVIDER`| `npmmirror` | CDN 节点选择 (`npmmirror`, `jsdelivr`, `unpkg`, `bootcdn`) |
---
## 📁 目录结构
```text
api-monitor/
├── src/ # 前端源码 & 后端核心
│ ├── js/
│ │ ├── stores/ # Pinia 状态管理中心 (Auth, App, Server 等)
│ │ ├── modules/ # 前端中间件与注入逻辑
│ │ └── main.js # 应用入口与热重载配置
│ ├── db/ # 数据库模型 (SQLite) & 自动迁移
│ ├── middleware/ # 增强版中间件 (TraceID, RateLimit, Security)
│ ├── routes/ # 统一路由注册中心
│ ├── services/ # 核心业务服务 (Session, Log, Metrics)
│ └── utils/ # 加密存储与通用工具
├── modules/ # 业务扩展功能库
│ ├── server-management/ # 主机/SSH/Docker 管理核心
│ ├── antigravity-api/ # Antigravity 客户端
│ ├── cloudflare-dns/ # Cloudflare DNS 控制台
│ └── ... # 其他多云集成模块
├── data/ # 数据库与日志持久化 (挂载点)
├── dist/ # 基于 Vite 7 的生产产物
├── server.js # 高度精简的 Express 启动入口
├── vite.config.mjs # Vite 7 极速构建配置
├── cdn.config.mjs # 弹性 CDN 别名映射配置
└── Dockerfile # 多阶段多架构构建脚本
```
---
## 🧩 模块开发指南
本项目采用插件化架构,您可以轻松扩展新功能。详细的开发步骤和规范请参考:
👉 **[模块开发模板使用指南](./modules/_template/README.md)**
---
## 📄 许可证
本项目基于 [MIT](LICENSE) 协议开源。
**Made with ❤️ by [iwvw](https://github.com/iwvw) & [jiujiu532](https://github.com/jiujiu532)**