项目目录

msServiceProfiler详细项目目录介绍如下

3rdparty/                                                    # 第三方依赖目录
    ├── CMakeLists.txt                                       # 第三方依赖的根CMakeLists配置文件
    ├── ascend/                                              # 昇腾(Ascend)AI计算平台相关依赖
    │   ├── CMakeLists.txt                                   # 昇腾依赖的CMakeLists配置文件
    │   ├── include/                                         # 头文件目录
    │   │   ├── acl/                                         # 昇腾计算库头文件,用于访问昇腾计算库的各种功能
    │   │   ├── mspti/                                       # 昇腾平台工具接口头文件
    │   │   └── mstx/                                        # 昇腾工具扩展头文件
    │   └── src/                                             # 第三方依赖源码实现目录
    └── opentelemetry/                                       # OpenTelemetry可观测性框架
        ├── include/                                         # OpenTelemetry头文件目录
        └── proto/                                           # Protocol Buffer定义文件
            ├── collector/                                   # 数据收集器相关定义
            │   └── trace/                                   # 追踪数据收集
            ├── common/                                      # 通用定义
            ├── resource/                                    # 资源定义
            └── trace/                                       # 追踪相关定义
├── CMakeLists.txt                                           # 项目根CMakeLists配置文件
├── README.md                                                # 项目说明文档
└── cpp/                                                     # 基础能力目录(采集),C++源码主目录
    ├── CMakeLists.txt                                       # 数据采集模块,C++模块的CMakeLists配置文件
    ├── include/                                             # 采集能力对外接口目录
    │   └── msServiceProfiler/                               # 数据采集头文件
    │       ├── Config.h                                     # 采集配置文件解析头文件
    │       ├── DBExecutor/                                  # 采集数据落盘模块头文件
    │       ├── Profiler.h                                   # 数据采集接口头文件
    │       ├── ServiceProfilerInterface.h                   # 数据采集对外接口头文件
    │       ├── ServiceTracer.h                              # 服务化Trace追踪头文件
    │       ├── Tracer.h                                     # Trace数据监测对外接口头文件
    │       └── msServiceProfiler.h                          # 主入口头文件
    └── src/                                                 # 基础数据采集能力源文件实现目录
docs/                                                        # 文档目录
└── zh/                                                      # 中文文档目录
    ├── cpp_api/                                             # C++ API文档
    │   ├── serving_tuning/                                  # 服务化调优API
    │   │   ├── ${api_name}.md                               # API接口说明,${api_name}表示接口名称
    │   │   ├── macro_definitions.md                         # 宏定义说明
    │   │   ├── public_sys-resources/                        # 公共系统资源图标
    │   │   └── serving_tuning.md                            # C++ API文档总说明
    │   └── trace_data_monitoring/                           # Trace追踪数据监测API
    │       ├── ${api_name}.md                               # API接口说明,${api_name}表示接口名称
    │       ├── public_sys-resources/                        # 公共系统资源图标
    │       └── sample_code.md                               # 示例代码
    ├── python_api/                                          # Python API文档
    │   ├── README.md                                        # Python API说明
    │   └── context/                                         # 上下文相关API
    │       ├── ${api_name}.md                               # API接口说明,${api_name}表示接口名称
    │       ├── public_sys-resources/                        # 公共系统资源图标
    └── figures/                                             # 图表和示意图目录
ms_service_profiler/                                         # 基础能力目录(解析、数据比对等)
    ├── config/                                              # 配置文件目录
    ├── data_source/                                         # 数据源导入模块目录
    │   └── ${name}_source.py                                # ${name}数据源导入模块,name为数据源名称
    └── exporters/                                           # 数据导出器模块目录
    │    └── exporter_${name}.py                             # ${name}数据导出器,name为数据名称
    ├── mstx.py                                              # python数据采集模块
    ├── parse.py                                             # 数据解析主模块
    ├── profiler.py                                          # python数据采集接口
    ├── trace.py                                             # Trace追踪主模块
    ├── analyze.py                                           # 扩展分析功能主模块
    ├── compare.py                                           # 数据对比功能主模块
    ├── split.py                                             # 数据拆解功能主模块
    ├── parse_helper/                                        # 解析辅助工具模块
    ├── pipeline/                                            # 数据处理管道模块
    │   └── pipeline_${name}.py                              # ${name}数据处理管道,name为数据名称
    ├── plugins/                                             # 插件系统模块
    │   ├── plugin_${name}.py                                # ${name}数据处理插件,name为数据名称
    │   └── sort_plugins.py                                  # 插件排序工具
    ├── processor/                                           # 数据处理器模块
    │   └── processor_${name}.py                             # ${name}数据处理器,name为数据名称
    ├── task/                                                # 任务管理模块
    ├── tracer/                                              # Trace追踪模块
    ├── utils/                                               # 工具模块
    │   ├── check/                                           # 检查工具
    │   ├── secur/                                           # 安全模块
    │   │   ├── constraints/                                 # 安全约束
    │   │   └── utils/                                       # 安全常量
    │   └── trace_to_db.py                                   # tarce数据从json格式转为db格式处理模块
    └── patcher/                                             # hook采集模块
        ├── config/                                          # 配置样例
        │   ├── custom_handler_example.py                    # 自定义处理器示例
        │   ├── hooks_example.yaml                           # 钩子配置示例
        ├── vllm/                                            # vLLM数据采集模块
        │   ├── config/                                      # vLLM数据采集配置文件目录
        │   ├── handlers/                                    # vLLM数据采集函数钩子
        |   |   ├── v0/                                      # vLLM v0版本函数钩子
        |   |   └── v1/                                      # vLLM v1版本函数钩子
        |   └── service_profiler.py                          # vLLM数据采集入口主类
        ├── sglang/                                          # SGLang数据采集模块
        │   ├── config/                                      # SGLang数据采集配置文件目录
        │   ├── handlers/                                    # SGLang数据采集函数钩子
        |   └── service_patcher.py                           # SGLang数据采集入口主类
msservice_advisor/                                           # 专家建议工具目录
    ├── msservice_advisor/                                   # 专家建议工具主目录
    │   └── profiling_analyze                                # 专家建议各分析器模块
    └── advisor.py                                           # 专家建议主模块
ms_serviceparam_optimizer/                                              # 自动寻优工具目录
    ├──ms_serviceparam_optimizer/                                       # 自动寻优工具主目录
    ├──pyproject.toml                                        # 自动寻优工具项目配置文件
├── pyproject.toml                                           # Python项目配置文件
└── test/                                                    # 测试目录
    ├── CMakeLists.txt                                       # C++测试构建配置
    ├── run_st.py                                            # 系统测试运行脚本(Python)
    ├── run_st.sh                                            # 系统测试运行脚本(Shell)
    ├── run_ut.sh                                            # 单元测试运行脚本
    ├── fuzz/                                                # 模糊测试目录
    │   ├── CMakeLists.txt                                   # 模糊测试构建配置
    │   ├── FuzzMain.cpp                                     # 模糊测试主程序
    │   ├── run_fuzz.sh                                      # 模糊测试运行脚本
    │   └── manager/                                         # 管理模块模糊测试
    │       └── ${name}_fuzz.cpp                             # ${name}模块模糊测试用例
    ├── st/                                                  # 系统测试(System Test)
    │   ├── cpp/                                             # C++系统测试
    │   │   └── test.cpp                                     # C++测试主程序
    │   └── python/                                          # Python系统测试
    │       ├── conftest.py                                  # Pytest配置
    │       ├── analyze/                                     # 分析功能测试
    │       ├── checker/                                     # 数据检查模块
    │       ├── collect/                                     # 数据收集测试
    │       ├── executor/                                    # ST执行器模块
    │       ├── multi_analyze/                               # 多服务性能分析测试
    │       ├── profiler/                                    # 性能分析器测试
    │       └── split/                                       # 数据拆解测试
    └── ut/                                                  # 单元测试(Unit Test)
        ├── cpp/                                             # C++单元测试
        │   ├── include/                                     # 单元测试辅助头文件目录
        │   ├── test${name}.cpp                              # ${name}模块测试用例,${name}为模块名称
        └── python/                                          # Python单元测试
            ├── data_source/                                 # 数据源测试
            ├── eplb_observe/                                # EPLB观测测试
            ├── task/                                        # 任务管理测试
            ├── trace/                                       # Trace监测模块测试
            ├── test_ms_service_profiler_ext/                # 服务化性能分析扩展能力测试
            ├── test_msguard/                                # 安全模块测试
            ├── test_vllm_profiler/                          # vLLM数据采集能力测试
            └── test_${name}.py                              # ${name}模块测试,${name}为模块名称