无人值守不等于无人维护。真正可运营的自助打印系统,需要平台自动发现问题、门店能够完成基础处理、技术人员可以远程定位,并且每次异常都有订单和资金结论。
状态说明
本章是生产目标运维手册。当前原型可以提供基础心跳、Windows 队列结果和终态 JSON 回执,但提交前
prepared回执、独立submitted状态、本地回执数据库和完整远程告警尚未实现。涉及这些能力的恢复步骤,要在对应功能开发和故障演练通过后才能正式执行。
一、监控指标
业务漏斗
- 扫码次数
- 登录成功率
- 上传开始与完成率
- 文件预检成功率
- 报价到支付转化率
- 支付成功率
- 打印完成率
- 退款率
订单与任务
- 各状态订单数量
- 最老待打印任务年龄
- 每台打印机队列长度
attention_required新增和积压- 单任务领取次数
- 重复打印投诉
代理与打印机
- 最后心跳时间
- 代理版本
- Windows 队列是否存在
- 队列作业数
- 打印机离线、暂停和错误
- 门店电脑磁盘空间
- 系统时间偏差
- 最近成功打印时间
支付与文件
- 下单成功率和延迟
- 回调验签失败
- 主动查单补偿数量
- 每日对账差异
- 上传失败与解析耗时
- 恶意文件隔离数量
- 到期删除积压
- 对象存储异常增长
二、建议告警
| 场景 | 建议级别 | 处理目标 |
|---|---|---|
| 资金金额不一致 | P1 | 立即暂停相关流程并核对 |
| 批量重复打印 | P1 | 立即冻结设备调度并保全证据 |
| 数据泄露或对象公开 | P1 | 立即阻断访问并启动安全响应 |
| 全平台不可用 | P1 | 立即响应并切换或回滚 |
| 单门店全部离线 | P2 | 30 分钟内联系门店并定位 |
| 支付成功任务大量积压 | P2 | 30 分钟内恢复或启动退款方案 |
| 心跳超过 90 秒 | P2/P3 | 根据门店营业状态检查网络和服务 |
| 人工确认任务新增 | P2 | 禁止自动重打,尽快核实 |
| 磁盘低于 2 GB | P2 | 停止领取并清理安全缓存 |
| 单打印机缺纸或卡纸 | P3 | 门店按 SOP 处理 |
阈值需要根据真实运营基线调整,不能永久照搬初始值。
三、结构化日志
每条请求和任务日志使用 JSON,至少包含:
- 时间、环境和服务版本
- trace ID
- 脱敏用户 ID
- 订单 ID、任务 ID、打印机 ID
- 尝试号和租约版本
- 状态变化前后值
- Windows 队列和 Spooler 作业号
- 错误代码、工具退出码和耗时
不要记录文件正文、完整原始文件名、AppSecret、支付私钥、完整 openid 或签名 URL。
四、日常维护制度
每日
平台侧:
- 检查支付对账差异
- 处理死信和人工确认
- 检查离线设备和最老待打印任务
- 检查文件删除积压
门店侧:
- 补充纸张
- 检查墨量或耗材
- 检查卡纸、进纸和出纸区域
- 打印快速测试页
- 保持设备周围整洁
每周
- 复盘打印成功率和平均等待时间
- 抽查订单、支付和回执时间线
- 打印黑白和彩色样张
- 清洁进纸和出纸区域
- 核对代理版本和离线设备
每月
- 从备份恢复数据库到隔离环境
- 复核管理员权限
- 检查依赖和系统更新
- 统计设备故障率、退款率和耗材成本
- 预测容量和备件需求
每季度
- 密钥轮换演练
- 灾备和故障演练
- 安全复测
- 评估高故障设备替换
- 更新本知识库和门店培训材料
五、故障处置
打印机离线
自动停止分配新任务,支付前显示不可用。门店检查电源、USB/网络、Windows 队列和驱动。恢复后先打印测试页,再开放设备。
缺纸、缺墨或卡纸
任务保持或进入降级状态。门店处理前先记录订单和已输出页面。补纸或清除卡纸后,不能在未确认部分输出的情况下直接重打。
Windows 队列卡住
代理停止该打印机领取新任务,记录 Spooler 作业号和队列状态。检查驱动、队列和设备错误。如果任务可能已经出纸,进入人工确认。
不要直接清空队列后自动重试。
代理重启
启动后读取本地回执。下载阶段可以恢复;prepared 或 submitted 的不确定任务进入人工确认。不能只看云端状态重新执行打印命令。
门店断网
中心平台把代理显示为离线,阻止新用户支付。网络恢复后代理先上报本地回执和状态,再领取新任务。不得为了“救急”开放打印机公网端口。
中心 API 故障
负载均衡摘除异常实例,客户端对查询操作安全重试。恢复时先核对支付回调、outbox 和队列积压,不丢弃未处理通知。
支付成功但没有出纸
核对支付、订单、任务、租约、本地回执、Spooler 和现场。确认未打印后退款或由授权人员重打。不得让用户重新支付。
疑似重复打印
立即冻结该打印机的新任务,保全 API 日志、数据库状态、队列投递、本地回执、Spooler 记录和现场证据。确认影响订单并处理用户补偿,修复幂等边界后才恢复。
对象存储异常
暂停新上传和任务领取。恢复后重新校验对象大小和 SHA-256,任何校验失败文件不得打印。
六、管理后台最小模块
- 实时总览:在线设备、排队、成功率、收入、退款和告警
- 资产管理:租户、门店、代理、打印机、二维码和版本
- 订单中心:状态时间线、支付、打印回执、退款和客服备注
- 运维中心:心跳、队列、错误、诊断包、维护模式和升级
- 配置中心:价格、限制、文件保留和营业时间
- 审计中心:管理员操作、密钥轮换、设备吊销和数据导出
七、事故复盘
每次 P1/P2 事故记录:
- 完整时间线
- 影响门店、设备和订单
- 资金和用户补偿
- 直接原因与系统性原因
- 临时止血措施
- 永久修复
- 负责人和完成日期
- 修复后的验证证据
复盘重点是系统为何没有提前发现或阻断,而不是把问题归结为某个人操作失误。