MailStore Graph API 邮件归档配置文件运行问题:根因分析与临时处置方法(官方确认)

更新时间:2026-06-02 11:29:04

一、已确认的根本原因

MailStore 开发团队已定位到一个缺陷,导致 Graph API 配置文件在特定情况下停止执行归档任务,且该异常状态会同时阻止 MailStore 服务被正常停止(包括手动停止请求)。

该问题的集中爆发有两个背景因素:

一是大量企业客户正在从 EWS 迁移至 Graph API;

二是 Microsoft 365 推送了一次意外的版本更新,MailStore 需要同步适配,导致支持队列积压。

该缺陷仅影响类型为 Graph API 的归档配置文件。EWS 配置文件不受影响。

二、服务无法停止时的自修复机制

当 MailStore 服务因上述缺陷被强制终止或发生意外关闭时,服务在下次启动时会自动执行以下操作:

  1. 检测到异常关闭,触发数据库一致性维护流程
  2. 重新计算部分内部统计数据(归档索引、邮件计数等)
  3. 完成后恢复正常服务状态
上述自修复过程需要一定时间,期间服务处于不可用状态,这是预期行为,无需人工干预。时间长短取决于归档库规模。

三、临时处置方案:切换至 EWS 配置文件

由于该缺陷仅影响 Graph API 配置文件,切换至 EWS 协议可绕过该问题,维持归档任务正常运行。在 MailStore Server v26 中,需通过 API 命令行手动创建 EWS 配置文件(v26 界面不直接提供 EWS 新建入口)。

操作路径

打开 MailStore Client → 管理工具→ 管理API → 命令提示符

创建 EWS 配置文件的命令

CreateProfile --properties="{'owner':'admin','type':'B','connector':'Microsoft365','name':'M365 mailboxes','details':{'archiveMailbox':'0','credentialId':'1','deleteFlaggedMails':'0','disableAutoExcludeSourceFolders':'0','excludeUnRead':'0','maxThreads':'5','performDirectorySync':'0','timeout':'0','userListExclude':'1'},'serverSideExecution':{'automatic':'false'}}" --raw=true
 
 

命令执行成功后,在客户端配置文件列表中找到新建的配置文件(EWS协议),核对并按需调整以下参数:

  1. 确认指向正确的 Microsoft 365 凭据 ID
  2. maxThreads:默认 5,可根据服务器负载调整
  3. userListExclude:设为1表示排除列表模式,按需切换
  4. 服务端执行计划(serverSideExecution):默认关闭,需手动配置触发时间

四、EWS 的弃用时间线(重要)

Microsoft 计划于 2026 年内正式停用 EWS,并已将截止时间延期至 2027 年初。EWS 为临时绕过方案,不应作为长期架构。

该临时方案的有效期取决于 Microsoft 的弃用时间线与 MailStore 官方修复进度,建议持续关注 MailStore 的版本更新公告

五、长期归档架构参考

官方建议在条件允许时评估迁移至日志归档(Journal-based archiving)或网关归档(Gateway-based archiving)架构。与基于 API 扫描邮箱的方式相比,该架构有以下技术差异:

  1. 无需扫描用户邮箱,邮件在传输层即被捕获,资源占用更低
  2. 归档发生在邮件投递前,用户无法在归档完成前删除邮件
  3. 不依赖 Microsoft API(EWS / Graph API),受 API 变更影响小

针对 Microsoft 365 环境,日志归档需要一个专用的外部接收邮箱来承接所有进出邮件的副本。该日志邮箱为全量通信镜像,属于高流量、高安全性敏感资源。

联系我们
电话 021-50583875
扫码咨询
扫码咨询