开发者
资源
我要评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

path子命令

命令功能

根据数据文件生成HTML形式的可视化分析报告,以便于查看函数高频调用链和时延信息。

命令格式

devopt.sh path [-h] -i INPUT | -d INPUT1 INPUT2 [-o OUTPUT]

参数说明

表1 参数说明

参数

参数选项

说明

-h/--help

-

可选参数,获取帮助信息。

-i/--input

-

可选参数,指定数据文件。

-d/--diff

-

可选参数,指定两个数据文件,用空格隔开,生成HTML形式的可视化分析报告,用于对比两个数据文件的函数高频调用链和时延信息。

说明:

选择“-i”时不能选择“-d”参数,两者不兼容,需选择其中一个参数指定数据文件。

-o/--output

-

可选参数,指定可视化分析报告的输出目录,默认为当前命令执行的目录。

使用示例

  1. 执行以下命令,查看path命令支持的功能信息:
    ./devopt.sh path -h

    返回信息如下:

    USAGE
      devopt.sh path [-h] -i INPUT | -d INPUT1 INPUT2 [-o OUTPUT]
    
    DESCRIPTION
      Analyzes data files and generates a visual analysis report.
    
    OPTIONS
      -h, --help              
      Displays help information and exits.
    
      -i INPUT, --input INPUT 
      the input file
    
      -d INPUT1 INPUT2, --diff INPUT1 INPUT2
      diff two input files
    
      -o OUTPUT, --output OUTPUT
      Specifies the output directory for the HTML report. It defaults to the current directory.
    
    EXAMPLES
      # Generate a visual analysis report of function and component call chains.
      devopt.sh path -i /home/output/devopt_pid_timestamp.rawdata
      # Compare two data files and generate a visual analysis report of function and component call chains.
      devopt.sh path -d /home/output/devopt_pid1_timestamp.rawdata /home/output/devopt_pid2_timestamp.rawdata
      # Specify a custom output directory for the generated HTML report.
      devopt.sh path -i /home/output/devopt_pid_timestamp.rawdata -o /home/reports
  2. 指定单个数据文件,生成可视化报告。
    1
    ./devopt.sh path -i /home/output/devopt_3315674_20260513155321.rawdata -o /home/reports
    

    返回信息如下:

    Successfully generated analysis report: "/home/reports/analysis_report_20260525112914.html"

    返回信息表明命令执行成功,在指定的目录下已生成HTML形式的可视化分析报告。

  3. 打开可视化报告,如下图所示。

    • 图中显示进程的组件链路调用关系,包括一个主线程和一个子线程组,选中线程组时颜色会加深,同时显示涉及的组件和组件调用链路。
    • 子线程数占全部子线程数比例大于或等于80%时子线程组颜色为浅红色,子线程数占全部子线程数比例大于或等于50%且小于80%时子线程组颜色为浅橙色,子线程数占全部子线程数比例小于50%时子线程组颜色为浅绿色。
  4. 单击“函数链路调用”可显示主线程和子线程组的函数链路调用信息,如下图所示。

    图中左边的是函数调用链索引,数值代表函数调用链的调用比例,中间是具体的函数调用链信息,按照自上到下的顺序进行展示,选中任一行,右边会显示编译器版本信息和依赖库信息。

  5. 指定两个不同的数据文件,生成可视化报告。
    1
    ./devopt.sh path -d /home/output/devopt_3315674_20260513155321.rawdata /home/output/devopt_384999_20260515161218.rawdata -o /home/reports
    

    返回信息如下:

    Successfully generated analysis report: "/home/reports/analysis_diff_report_20260528111152.html"

    打开可视化报告,如下图所示。

    • 图中显示进程在鲲鹏平台和x86平台上的组件链路调用关系,在鲲鹏平台上为一个主线程和一个子线程组,子线程组里有三个线程,在x86平台上为一个主线程和三个子线程组,每个子线程组里有一个线程,选中线程组时颜色会加深,同时显示涉及的组件和组件调用链路。
    • 子线程数占全部子线程数比例大于或等于80%时子线程组颜色为浅红色,子线程数占全部子线程数比例大于或等于50%且小于80%时子线程组颜色为浅橙色,子线程数占全部子线程数比例小于50%时子线程组颜色为浅绿色。

    单击“函数链路调用DIFF”可显示主线程和子线程组在不同平台上的函数链路调用信息,如下图所示。

    图中左边的是函数调用链索引,右边是同一调用链在不同平台上的具体调用链信息,鲲鹏平台上的调用链信息为浅绿底纹的,x86平台上的调用链信息为浅红底纹的。