datai/datai-scenes/datai-scene-salesforce/docs/changelog/0010-realtime-sync-statistics.md
Kris ccc7109c31 feat(salesforce-integration): 完善实时同步和统计功能
主要变更:
- 新增实时同步日志统计接口,支持多维度统计(综合、对象、操作类型、状态、时间趋势)
- 新增实时同步统计接口,提供服务状态、对象统计和订阅统计
- 实现实时服务手动启动管理,移除自动启动注解
- 移除所有统计相关功能(EventProcessor、DataSynchronizer统计方法)
- 解决DataiIntegrationObjectServiceImpl和ObjectRegistryImpl循环依赖问题
- 完善元数据变更统计功能,支持自动时间范围和缺失数据点填充
- 修复SQL布尔值兼容性问题(true/false改为1/0)
- 新增SysJobController和SysJobLogController接口文档
- 更新项目文档和变更日志

技术细节:
- 添加@Lazy注解解决循环依赖
- 实现时间趋势统计的自动时间范围处理
- 支持多种时间单位(天、周、月、季度)的趋势分析
- 优化同步成功率计算和数据处理完整性
- 遵循项目文档规范,更新唯一真源
2026-01-13 13:51:33 +08:00

3.8 KiB
Raw Blame History

Changelog - 实时同步统计接口

变更信息

  • 版本号: v0.1.10
  • 发布日期: 2026-01-13
  • 变更类型: 特性更新

变更摘要

本次变更新增了实时同步统计接口,用于获取实时同步服务的详细统计信息。统计信息包括服务状态、对象统计、订阅统计等多个维度,为系统监控和运维提供了全面的数据支持。

详细变更

特性更新

  • 新增实时同步统计接口 - 在 RealtimeSyncService 中新增 getStatistics 方法:

    • 服务状态统计:包括运行状态、启动时间、运行时长
    • 对象统计:包括启用实时同步的对象总数、标准对象数量、自定义对象数量、对象详细信息列表
    • 订阅统计:包括订阅状态
  • 新增 Controller 接口 - 在 DataiIntegrationRealtimeSyncController 中新增统计接口:

    • 接口路径GET /integration/realtime/statistics
    • 权限要求integration:realtime:statistics
    • 返回数据:包含服务状态、对象统计、订阅统计的综合信息
  • 服务启动时间记录 - 在 RealtimeSyncServiceImpl 中新增启动时间记录:

    • 服务启动时记录启动时间
    • 服务停止时清空启动时间
    • 用于计算服务运行时长

影响范围

受影响的模块

  • datai-salesforce-integration - 以下类被修改:
    • RealtimeSyncService - 新增 getStatistics 方法接口
    • RealtimeSyncServiceImpl - 实现 getStatistics 方法,新增 startTime 字段
    • DataiIntegrationRealtimeSyncController - 新增 getStatistics 接口方法

兼容性说明

  • 本次变更向后兼容,不影响现有功能
  • 新增接口为可选功能,不影响现有接口的使用

升级指南

升级步骤

  1. 部署新的代码版本

  2. 使用新的统计接口获取实时同步服务信息:

    GET /integration/realtime/statistics
    

API 接口说明

获取实时同步统计信息

  • 接口: GET /integration/realtime/statistics
  • 权限: integration:realtime:statistics
  • 返回: 实时同步统计信息

返回数据结构

{
  "success": true,
  "message": "获取实时同步统计信息成功",
  "data": {
    "serviceStatus": {
      "isRunning": true,
      "startTime": "2026-01-13 10:00:00",
      "runningDuration": "2小时30分钟"
    },
    "objectStatistics": {
      "totalCount": 15,
      "standardCount": 10,
      "customCount": 5,
      "objects": [
        {
          "objectApi": "Account",
          "objectName": "账户",
          "isCustom": false
        },
        {
          "objectApi": "CustomObject__c",
          "objectName": "自定义对象",
          "isCustom": true
        }
      ]
    },
    "subscriptionStatistics": {
      "isSubscribed": true
    }
  }
}

注意事项

  • 确保配置了正确的权限 integration:realtime:statistics
  • 服务未启动时startTime 和 runningDuration 字段为 null
  • 对象列表包含所有启用实时同步的对象信息

测试信息

测试环境

  • 开发环境 - 本地开发环境

测试结果

  • 服务启动后,统计接口返回正确的服务状态信息
  • 对象统计信息准确反映启用实时同步的对象数量和类型
  • 订阅统计信息正确反映当前订阅状态
  • 服务未启动时,相关字段正确返回 null

相关链接

发布人员

  • 开发人员 - 开发工程师

审核信息

  • 审核人员: 待审核
  • 审核日期: 待审核
  • 审核状态: 待审核
  • 审核意见: 待审核