昇腾社区首页
中文
注册

应用类日志

获取应用类日志

假设有一个AscendCL应用程序,进程ID为pid(请以实际为准),应用程序运行完成后,可在日志目录下查看日志如图1所示。

日志目录默认为“$HOME/ascend/log”,也可以使用环境变量ASCEND_PROCESS_LOG_PATH指定日志落盘路径。

设置命令如下:
export ASCEND_PROCESS_LOG_PATH=$HOME/xxx

可指定日志落盘路径为任意有读写权限的目录。

  • 应用类日志支持在容器内或物理机内查看。为保证日志工具在容器内正常运行,需要将日志工具动态库文件libascendalog.so及其依赖的libc_sec.so所在路径映射到容器内。以安装路径“/usr/local/Ascend/”为例,libascendalog.so及其依赖的libc_sec.so所在路径分别为“/usr/local/Ascend/nnae/latest/compiler/lib64/libascendalog.so”和“/usr/local/Ascend/driver/lib64/common/libc_sec.so”
  • 如果Device侧应用类日志回传到Host侧失败,会在Device侧直接落盘(路径为/var/log/npu/slog/xx/device-app-pid/device-app-pid_*.log)。如果Device侧应用类日志回传到Host侧成功,则不会在Device侧落盘。
  • 在容器内,该日志的device-id为逻辑ID。
图1 应用类日志

应用类日志的存储路径及说明请参见表1

表1 应用类日志介绍

存储路径

说明

$HOME/ascend/log/debug/device-id/device-pid_*.log

在Device侧运行应用程序产生的调试日志。主要包括Device侧AI CPU、HCCP等模块的日志。

$HOME/ascend/log/debug/plog/plog-pid_*.log

在Host侧运行应用程序产生的调试日志。

主要包括compiler中各组件(如GE、FE、AI CPU、TBE、HCCL等)、runtime中各组件(如AscendCL、GE、Runtime等)和Driver用户态日志。

$HOME/ascend/log/run/device-id/device-pid_*.log

在Device侧运行应用程序产生的运行日志。

$HOME/ascend/log/run/plog/plog-pid_*.log

在Host侧运行应用程序产生的运行日志。

$HOME/ascend/log/operation/device-id/device-pid_*.log

在Device侧运行应用程序产生的操作日志。

$HOME/ascend/log/operation/plog/plog-pid_*.log

在Host侧运行应用程序产生的操作日志。

$HOME/ascend/log/security/device-id/device-pid_*.log

在Device侧运行应用程序产生的安全日志。

$HOME/ascend/log/security/plog/plog-pid_*.log

在Host侧运行应用程序产生的安全日志。

注1:上述日志中idpid分别代表Device ID和进程ID,请以实际为准;日志文件中的“*”表示该日志文件创建时的时间戳。

注2:以上目录是容器或物理机内所有应用程序共同使用的,会不断增加新的应用进程,日志会不断增多,因此需要用户定期清理该目录(可以使用系统自带的logrotate实现日志切分),否则可能导致磁盘空间不足,影响业务正常运行。

注3:如果存储在只有emmc/flash等有写次数限制的介质下,建议将日志落盘路径设置到内存文件系统路径下,启动业务进程时通过环境变量(ASCEND_PROCESS_LOG_PATH)设置日志落盘路径,可以另起一个常驻进程定时定量将内存文件系统下的日志转储在emmc/flash。

设置Device侧应用类日志回传延时

业务进程退出前,系统有2000ms的默认延时将Device侧应用类日志回传到Host侧,超时后业务进程退出。未回传到Host侧的日志直接在Device侧落盘。

可以通过环境变量ASCEND_LOG_DEVICE_FLUSH_TIMEOUT设置更高的Device侧应用类日志回传到Host侧的延时时间。

设置命令如下:

export ASCEND_LOG_DEVICE_FLUSH_TIMEOUT=5000

设置应用类日志目录存储单个进程回传日志和plog文件数量

plog和device-id日志目录下能够存储的单个进程回传的日志文件数量,默认为10个,该数量可以通过环境变量ASCEND_HOST_LOG_FILE_NUM进行设置。

设置命令如下:

export ASCEND_HOST_LOG_FILE_NUM=20