Skip to content

Commit 6bde01e

Browse files
soso
authored andcommitted
Release v0.0.6 operations features
1 parent 98bdca8 commit 6bde01e

17 files changed

Lines changed: 2748 additions & 144 deletions

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "emby302gateway-rs"
3-
version = "0.0.5"
3+
version = "0.0.6"
44
edition = "2024"
55
license = "MIT"
66

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,4 +42,5 @@ COPY --from=frontend-builder /app/frontend/dist /app/frontend/dist
4242
COPY data/config.toml.example /data/config.toml.example
4343
VOLUME ["/data"]
4444
EXPOSE 8090 8091 8092 8093 8094 8095
45+
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 CMD ["/app/emby302gateway-rs", "--healthcheck"]
4546
ENTRYPOINT ["/app/emby302gateway-rs"]

README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ EmbyPanel 是一个 Rust + Vue 实现的 Emby STRM 直链反代面板。后端
1414
- 客户端 UA 拦截、播放频率限制、IP 屏蔽、用户禁用和解除封禁。
1515
- Webhook 通知,支持多个 POST JSON Webhook。
1616
- 实时播放、播放日志、运行信息日志,支持按服务器查看。
17+
- 运维健康检查、反代端口状态、今日请求统计、播放频率窗口状态。
18+
- 日志关键词搜索、级别筛选、时间筛选和 CSV 导出。
19+
- 配置文件备份/恢复,包含服务器、客户端管控、通知和日志配置。
20+
- 配置测试校验、配置审计日志、GitHub Release 更新检查。
21+
- `/data/logs/embypanel.log` 文件日志,支持级别、单文件大小和保留数量配置。
1722
- SQLite 持久化配置,Docker 下数据保存在 `/data/embypanel.db`
1823

1924
## 目录结构
@@ -71,6 +76,13 @@ docker compose up -d
7176
docker logs -f embypanel
7277
```
7378

79+
查看健康状态:
80+
81+
```bash
82+
docker ps --filter name=embypanel
83+
curl http://127.0.0.1:8090/healthz
84+
```
85+
7486
停止:
7587

7688
```bash
@@ -93,6 +105,29 @@ ports:
93105
94106
然后在面板中把服务器反代端口配置到同一范围内。
95107
108+
## 备份和恢复
109+
110+
面板提供独立“备份”页面。点击备份会生成配置文件并触发浏览器下载;点击还原会弹出本机文件选择框,选择配置文件后自动还原。还原会覆盖当前配置并自动重启全部反代服务。
111+
112+
备份内容包含:
113+
114+
- Emby 服务器配置和 API Key。
115+
- OpenList 地址和 Token。
116+
- 客户端管控配置、播放频率限制、Webhook 通知。
117+
- UA 规则只备份已禁用的拦截规则;自动记录且放行的客户端不会写入备份。
118+
- 播放频率封禁只备份仍有效的封禁;已过期或已解除的 IP/用户封禁会自动清理。
119+
- 系统日志文件配置。
120+
121+
备份不包含面板管理员用户名、管理员密码、登录会话、运行日志文件和请求统计数据。
122+
123+
## 运维接口
124+
125+
- `GET /healthz`:公开健康检查,不需要登录,不返回敏感信息。
126+
- `GET /api/monitoring/healthz`:面板详细健康信息。
127+
- `GET /api/monitoring/proxy-status`:每个反代端口的监听状态、启动时间、最近请求和最近错误。
128+
- `GET /api/monitoring/stats`:今日请求、重定向、缓存命中、拦截、错误统计。统计持久化在 SQLite,并自动清理旧数据。
129+
- `GET /api/app-info/update-check`:登录后检查 GitHub Releases 是否有新版本。
130+
96131
## License
97132

98133
本项目基于 MIT License 开源,详见 [LICENSE](LICENSE)。

docs/changelog.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,40 @@
11
# 版本更新日志
22

3+
## v0.0.6
4+
5+
发布时间:2026-05-24
6+
7+
### 新增
8+
9+
- 新增公开健康检查 `/healthz` 和面板详细健康检查。
10+
- 新增反代端口状态,显示监听状态、启动时间、最近请求和最近错误。
11+
- 新增请求统计,按服务器持久化保存今日请求、重定向、缓存命中、拦截和错误数,并自动清理旧数据。
12+
- 新增配置文件备份和还原,还原后自动刷新配置并重启反代服务。
13+
- 新增配置测试校验,可检测本地端口、Emby API Key 和连接状态。
14+
- 新增 GitHub Releases 更新检查。
15+
- 新增配置审计日志,记录服务器配置、客户端规则、通知、账户、备份恢复等管理操作。
16+
- 新增日志文件写入 `/data/logs/embypanel.log`,支持日志级别、单文件大小和保留数量配置。
17+
- 新增日志关键词、级别、时间范围筛选和 CSV 导出。
18+
- 新增播放频率限制窗口可视化,显示 IP 当前次数、阈值、剩余次数、重置时间和封禁状态。
19+
- 备份还原调整为独立页面,点击备份自动下载配置文件,点击还原弹出本机文件选择框,备份范围明确排除面板管理员用户名和密码。
20+
- 备份客户端 UA 规则时只保留已禁用的拦截规则,自动记录且放行的客户端不再写入备份。
21+
- 播放频率封禁记录改为自动清理,已过期或已解除的 IP/用户封禁不再保留到数据库和备份中。
22+
23+
### 优化
24+
25+
- CSV 日志导出改为带登录态下载,避免直接打开导出接口导致 401。
26+
- 配置测试时当前服务已经监听的反代端口不再误报为端口占用。
27+
- 代理 Emby 失败会记录到端口状态和今日错误统计。
28+
- 首页新增运维概览,服务器页新增配置测试,日志页新增文件日志配置,账户页新增审计日志。
29+
30+
### 验证
31+
32+
- `cargo fmt --check`
33+
- `cargo clippy --all-targets -- -D warnings`
34+
- `cargo test`
35+
- `cd frontend && npm run build`
36+
- `cargo build --release --locked`
37+
338
## v0.0.5
439

540
发布时间:2026-05-24

0 commit comments

Comments
 (0)