Timeline模块文件目录结构逻辑
core // 待进一步理清、拆分
handler // 前端请求处理handler
protocol // 前后端请求、响应、事件转换实现,JSON与数据结构间相互转换
core/database
Timeline模块作为Insight的核心功能,其实现代码非常多,特别是数据库查询相关操作,因此需要实现代码拆分,非数据库直接操作,而是调用数据库操作进一步完成任务,可以放在包外面。
core/database // 父目录
-- TraceDatabaseDef.h // 数据结构定义
-- TraceDatabaseConst.h // 常量定义,如表名等复用字段
-- VirtualTraceDatabase.h // Trace相关DB的接口头文件
-- DBTraceDatabase.h // DB场景下TraceDatabase的头文件
-- DBTraceDatabaseOperation.cpp // DB场景下打开/关闭DB、增删表、创建表/索引等操作对应的实现
-- DBTraceDatabaseSliceChart.cpp // DB场景下Timeline图表区域相关的查询接口,也包括Slice Detail/List和Find的实现
-- DBTraceDatabaseBarChart.cpp // DB场景下Timeline图表区域相关的查询接口,也包括Slice Detail/List和Find的实现
-- DBTraceDatabaseAdvice.cpp // DB场景下专家建议相关实现,也包括Summary、Communication页面分析相关的接口实现
-- DBTraceDatabaseStatistics.cpp // DB场景下System View下统计分析的相关实现,包括Stat System View和Event System View
-- TextTraceDatabase.h // Text场景下TraceDatabase的头文件
-- TextTraceDatabaseOperation.cpp // Text场景下打开/关闭DB、增删表、创建表/索引等操作对应的实现
-- TextTraceDatabaseChart.cpp // Text场景下Timeline图表区域相关的查询接口,也包括Slice Detail/List和Find的实现
-- TextTraceDatabaseAdvice.cpp // Text场景下专家建议相关实现,也包括Summary、Communication页面分析相关的接口实现
-- TextTraceDatabaseStatistics.cpp // Text场景下System View下统计分析的相关实现,包括Stat System View和Event System View
-- TraceDatabaseHelper.h/cpp // TraceDatabase下Text和DB下通用方法的实现