54 lines
2.2 KiB
Markdown
54 lines
2.2 KiB
Markdown
# Operations
|
||
|
||
本文档覆盖通用部署、备份、健康检查和账务异常处理。设备自动化只适用于授权测试环境,具体平台操作不在公开运维手册中展开。
|
||
|
||
## 部署原则
|
||
|
||
- 使用独立 Linux 用户和 `/opt/paygateway` 等专用目录;
|
||
- `.env`、数据库、日志、备份和密钥只放在部署主机,不提交到仓库;
|
||
- 使用 systemd 或受控容器运行,限制文件系统和网络权限;
|
||
- 启动后先检查配置自检和 `/api/health`;
|
||
- 生产升级前备份数据库并保留可回滚版本。
|
||
|
||
## 备份与恢复
|
||
|
||
使用 `deploy/backup.sh` 通过 SQLite 在线备份方式复制业务库。备份目录必须设置访问权限,备份文件不能公开上传。恢复前停止服务、校验备份文件、保留当前数据快照,并在恢复后运行账本校验和健康检查。
|
||
|
||
## 健康检查
|
||
|
||
关注:
|
||
|
||
- HTTP 健康状态;
|
||
- 数据库可读写状态;
|
||
- 回调失败率;
|
||
- 通知队列和异常池积压;
|
||
- 账本追加与校验结果;
|
||
- 后台任务崩溃恢复日志;
|
||
- 授权设备的连接状态和读取器错误。
|
||
|
||
设备离线或读取结果不明确时,不应猜测业务已成功。相关订单应保持可追溯状态并进入人工核查流程。
|
||
|
||
## 订单与账务异常
|
||
|
||
异常处理遵循以下顺序:
|
||
|
||
1. 先保留原始订单和事件记录;
|
||
2. 检查签名、金额、时间窗口和状态转换;
|
||
3. 重复事件只执行一次;
|
||
4. 无法确认的情况进入异常池;
|
||
5. 人工处理必须留下操作者、原因和结果;
|
||
6. 对账完成后运行账本链校验。
|
||
|
||
不要直接修改数据库中的订单状态或账本记录来“修复”问题。应使用应用层提供的补单、关闭或异常解决流程。
|
||
|
||
## 日志与隐私
|
||
|
||
- 日志不应包含密钥、完整支付凭证、个人信息、API Key 或原始设备标识;
|
||
- 调试日志仅在授权环境短时启用;
|
||
- 对外分享事故记录时只使用脱敏和聚合数据;
|
||
- 日志和数据库备份按最小权限保存并设置生命周期。
|
||
|
||
## 合规边界
|
||
|
||
部署者必须自行确认商户资质、支付平台条款、隐私保护、数据留存和适用监管要求。设备自动化不得用于未经授权访问账户、绕过安全控制或其他违法活动。
|