跳转到内容

操作日志与邮件模板 ​

仅在线平台管理员可使用。入口为「系统管理 → 系统日志」与「系统管理 → 邮件模板」;普通用户、单机和桌面不提供这两个页面或管理 API。设计与扩展边界见 ADR-0020。

操作日志 ​

按操作类型、操作者/ID、目标、详情或 IP 搜索;关键词中的 %、_ 是字面字符。日期按当前浏览器本地时区解释,开始日包含,结束日包含整天(后端结束时间不包含);清空筛选恢复全部。ID 与时间可切换正/倒序,时间相同以 ID 稳定排序;每页 20/50/100 条。ID、目标和详情截断时可悬停查看完整值。

导出沿用当前筛选和排序,忽略所在页,最多 10,000 条;到达上限会给出提示,请缩小范围。CSV 使用 UTF-8 BOM,时间为 UTC,单元格有公式注入保护。导出下载由已登录 SDK 完成,不生成公共下载地址。

新增操作记录快照当时的用户名与身份域。IP 是实际 socket 连接地址,Nginx 后可能显示代理地址;不会直接相信 X-Forwarded-For。旧记录没有的目标、姓名或 IP 显示空缺。日志不包含密钥、密码、验证码或邮件正文;邮件投递标签继续提供最近 30 个队列任务及脱敏结果。新增业务应通过服务端 audit.Target(ctx, target, detail) 传递简短非敏感信息,再使用已有审计 port,不将任意请求体写入日志。

配置邮件模板 ​

选择注册验证、登录验证码、密码重置、服务测试或系统通知;修改邮件主题和内容后保存当前场景。切换标签保留各自草稿;刷新前应保存。默认内容为中文业务内容,中英文界面切换不会改写内容,管理员可自行编辑为其他语言。

编辑器提供段落、加粗、斜体、有序/无序列表、撤销/重做、安全链接及源码模式。粘贴默认为纯文本。变量插入到当前主题或正文光标位置;源码模式也可插入。允许变量如下:

场景变量
全部、
注册、登录、重置另有 、
系统通知另有 、

账号模板必须在可见正文保留 。预览和测试使用示例码 654321,不签发真实验证码。验证码正文的有效期仍由账号流程管理;模板不能更改验证码策略。主题最多 160 字符、禁止换行;正文最多 12,000 字符/24,000 UTF-8 字节。允许 p/br/strong/b/em/i/u/ul/ol/li/a/blockquote;仅 a 可有 href,值为 HTTP(S) 或 。不支持图片、CSS、事件、脚本或任意模板逻辑。链接、变量和替换后的内容由服务端重新验证,不能靠前端净化替代。

「预览」展示当前草稿并保留品牌页眉、Logo 与版权页脚,在禁脚本的隔离 iframe 中查看。「测试发送」在弹窗填写收件邮箱,使用当前草稿直接等待 SMTP 确认;需先在邮件设置完成配置与真实连通性测试,每个管理员最多 5 次/分钟。测试成功代表 SMTP 接受,不保证收件箱投递。「恢复默认」须确认,仅恢复当前场景。

保存通过 mail.template.{purpose} 持久化,普通设置 PATCH 拒绝写入这些键;发送时自动读取,修改只影响后续新建邮件,已入队邮件使用当时快照。真实六位码、SMTP 测试和系统通知共用配置渲染;已 deprecated 的长链接兼容 API 仍使用原模板。新增场景需同步 mailcontent 白名单、实际调用点、OpenAPI、双语标签和测试,不能只新增一个无发送用途的界面标签。

升级与恢复 ​

本增量平台 schema 9 → 10,新增 audit_metadata;原 audit_logs、账号和设置保留。SQLite/PostgreSQL 事务执行,MySQL 可在中断后幂等重试;本地形态的 framework schema 仍为 1。模板配置复用 system_settings,无额外表。

先停服,按 备份手册 保存 DB、完整私有目录/密钥及对象文件,再部署新程序并启动迁移,检查日志与模板保存。当前签名 OTA 拒绝跨 schema 的包,不能用页面直接完成 9 → 10;Tar 用人工程序替换,Docker 用外部替换镜像并保留数据卷。恢复时停服,将匹配的升级前快照恢复到新目录/空专用库,再启动对应旧程序;不要仅覆盖旧 binary,也不要删除迁移记录或模板值来模拟恢复。

操作类型为事件分类;目标和详情为当前实际对象/字段/状态/版本摘要。旧记录缺详情显示 —,不重复类型。邮件默认主题正文始终中文,UI 切换语言保留原始内容;新增平台公告见 公告手册。当前 schema 为 11,business 为 2。

基于 MIT 许可发布 · 详细手册目前主要为中文