邮件服务与监控告警
SMTP 配置(管理后台 → 邮件服务)
| 字段 | 说明 |
|---|---|
| 主机 | 例如 smtp.qq.com、smtp.gmail.com |
| 端口 | 465(加密)或 587(STARTTLS) |
| 加密 | 选择「加密」即可,程序自动适配 465 隐式 TLS 与 587 STARTTLS |
| 用户名 / 密码 | 邮箱与授权码(QQ / 163 等需使用授权码而非登录密码) |
| 发件人 | 与登录邮箱一致即可 |
填写后点「发送测试邮件」确认通路。SMTP 用于注册验证码、密码重置与监控告警邮件,也是用户通知中心邮件渠道的发信通道。
监控告警配置
在监控项目详情页的「告警设置」中开启:
- 打开「状态变化邮件告警」开关
- 填写收件邮箱(多个用英文逗号分隔,留空发送到注册邮箱)
告警仅在状态变化时发送:服务从正常变为异常时收到一封告警,恢复时再收到一封恢复通知,持续异常不会重复发送。每次通知都记录在告警列表中,发送失败会注明原因。
告警邮件为卡片样式的 HTML 邮件,同时附带纯文本版本。
手机 App 通知
Android 套壳 App(android/)可以在浏览器关闭的情况下收到同一条告警:App 内开启「通知设置 → 本机通知 → 后台告警推送」后,会启动一个前台服务,每 60 秒轮询一次 GET /api/alerts,按游标取回新增的告警并发出系统通知。
几点需要知道:
- 推送与邮件同源,同样需要在监控项目里开启「告警」,同样只在状态变化时触发,不额外重复发送
- 只在 App 内生效,且必须手动开启;App 不会开机自启,也不会替你做决定
- 状态异常走「高优先级」渠道(响铃),恢复走「默认」渠道,常驻的「后台监控」通知是系统对前台服务的强制要求,可在系统设置里单独设为静音
- 服务端没有配置 SMTP 时,告警记录仍会写入并在 App 上推送,只是邮件那一路会记为「未发送」
- 开启后建议同时允许「忽略电池优化」,否则部分机型息屏后会把轮询掐掉
- 登录态失效时推送会自动停止并弹一条提示,重新登录后需要再打开开关
加密密钥
SMTP 密码、Cloudflare 授权令牌与 2FA 密文使用 APP_ENCRYPTION_KEY 加密存储。解析顺序:环境变量 → 管理后台保存的密钥 → 首次启动自动生成并入库(管理后台可查看来源并手动替换)。
更换密钥后需重启服务,且会使已保存的密文失效(需要重新授权 Cloudflare、重新绑定 2FA、重新填写 SMTP)。