Metadata-Version: 2.4
Name: systrace-mcp
Version: 1.1.1
Summary: MCP Server for Systrace Fail Slow Detection for AI Model Training and Inference
Author-email: xu hou <houxu5@h-partners.com>
Project-URL: Homepage, https://gitcode.com/openeuler/sysTrace
Keywords: Fail Slow Detection,Group Compare,AI Model,MCP Server
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Intended Audience :: Developers
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: systrace-failslow
Requires-Dist: mcp<2
Requires-Dist: paramiko
Requires-Dist: fastapi
Requires-Dist: uvicorn

# README

# 安装部署
## 前置条件
支持的 Python 版本：3.10+；
failslow 依赖于 systrace 采集的数据通信算子数据，请先完成 训练任务的 通信算子采集；

failslow-mcpserver 支持本地或者远程获取远程目标服务器的systrace 采集的通信算子数据，需要在配置文件中指定通信算子数据的路径。
failslow-openapi 支持本地或者远程获取远程目标服务器的systrace 采集的通信算子数据，需要在配置文件中指定通信算子数据的路径。

## 从本仓库源码安装运行（适用于开发者）
### 下载源码
 git clone https://gitcode.com/openeuler/sysTrace.git
### 安装依赖
在仓库根目录执行下面命令，uv 会创建并同步工作区虚拟环境：
uv sync --locked --all-packages

华为云 PyPI 镜像已在根目录 `pyproject.toml` 中配置。
### 运行 failslow
uv run --locked --all-packages systrace-failslow

### 运行 mcpserver
uv run --locked --all-packages systrace-mcpserver # 开启 mcp server 服务，端口为 12145

uv run --locked --all-packages systrace-openapi # 开启 openapi server 服务，端口为 12146


配置远程获取数据，修改./config/ftp_config.json文件
~~~json
{
  "servers": [
    {
      "ip": "192.168.122.196",  #远程目标服务器的ip
      "port": 22, #远程目标服务器的ssh端口
      "user": "root", #用户名
      "password": "Huawei12#$", #密码
      "perception_remote_dir": "/home/hx/sysTrace_dataloader/timeline", #远程目标服务器systrace采集的timeline数据保存路径
      "detection_remote_dir": "/home/hx/sysTrace_dataloader/mspti",#远程目标服务器systrace采集的mspti数据保存路径
    }
  ],
  "enable": "False" #True 为开启远程获取数据，False为关闭只使用本地文件进行分析
}

~~~


### 数据分析
**算子执行**：3ms左右，计算慢导致的异常时7-8ms
**算子下发**: 表示算子下发到算子开始执行的时间 600ms左右
**通信慢**: sendrecv：几十ms到1200ms
