创建日志诊断作业
当用户训练或推理作业发生故障时,可通过输入CANN应用类日志、用户训练及推理日志、Device侧日志、主机侧日志等类型日志文件存储路径,创建日志诊断作业,实现对AI作业过程中发生的故障进行诊断。日志诊断作业能够对Standard、Lite Cluster、Lite Server场景下的训练或推理作业故障进行诊断。创建后可查看诊断结果,用于分析系统运行状态、定位和解决故障 。
具体流程如下:
- 准备日志上传到OBS
- 创建日志诊断作业
- 查看日志诊断结果详情
- 根据日志诊断结果处理故障。
准备日志上传到OBS
使用日志诊断时,您需要将需要分析的日志数据上传至对象存储服务(OBS)中,并确保上传内容符合OBS路径格式规范。
日志采集的方式如下表所示,Standard场景默认已经采集了日志数据。
|
日志类型 |
采集方法 |
|---|---|
|
CANN应用类日志 |
默认生成在如下目录中:~/ascend/log,参考:https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/81RC1alpha001/devguide/maintenref/logreference/logreference_0002.html |
|
Device侧日志 |
需要使用 msnpureport 命令导出,参考:https://support.huawei.com/enterprise/zh/doc/EDOC1100441248/70f49dde?idPath=23710424|251366513|254884019|261408772|252764743 |
|
用户训练及推理日志 |
容器stdout/err |
|
主机侧日志 |
默认生成在如下目录中:/var/log/message |
请规范日志路径格式,否则将导致作业失败。
- 在OBS路径下,每个节点对应一个文件夹,且每个节点文件夹下有且只有该节点的日志。示例:
- 日志命名请参考昇腾日志文件格式,详见日志类型和路径。
创建日志诊断作业
- 登录ModelArts管理控制台,在左侧导航栏选择“运维管理 > 日志诊断”,进入日志诊断页面。
- 单击“创建作业”进入创建作业界面。
- 在创建日志诊断作业界面,参考表2填写相应参数。
表2 创建日志诊断作业参数说明 参数名
参数说明
作业名称
必填,日志诊断作业的名称。
系统会自动生成一个名称,可以根据业务需求重新命名,命名规则如下:
只允许输入长度为 1 到 64 位由数字、中文、英文、下划线(_)或中划线()组成的字符。
添加描述
可选,日志诊断作业的简单描述。
日志类型和路径
必填,选择多种日志类型,并选择或输入对应的已上传日志的OBS路径,路径格式须符合规范。
日志类型:CANN应用类日志、Device侧日志、用户训练及推理日志、主机侧日志。
OBS路径:只允许输入以obs://开头,桶名称长度为1-128位,子路径名称长度为1-2048位,斜杠作为间隔字符和结束字符的路径。桶名称/子路径名称格式由大小写字母、数字、下划线(_)、中划线(-)组成。
- 参数设置完成后,单击“立即创建”,返回日志诊断列表页面。
诊断作业大概运行10分钟,前往日志诊断作业列表,可以查看诊断作业的基本情况。
- 查看诊断结果,当诊断作业的状态变为“作业成功”,表示作业运行完成,其他状态请参考表3。用户根据故障诊断结果进行故障排查。
表3 作业状态说明 作业状态
说明
创建中
作业刚创建还未被调度执行时状态。
排队中
表示诊断资源已被正在运行的诊断作业占满,需排队等待。
诊断中
作业正在诊断。
作业成功
表示日志诊断作业运行结束,可前往日志诊断作业列表,可以查看诊断结果的基本情况。
部分成功
表示部分节点的日志处理成功,部分节点的日志处理出现了异常,可基于诊断结果判断是否进行二次分析。
作业超时
表示诊断资源严重不足,请联系技术支持处理。
作业失败
表示作业执行失败,可能存在的原因包括OBS无访问权限、日志路径下无符合要求的日志文件、IAM鉴权失败、获取诊断镜像失败等问题,OBS权限或日志路径问题请确认创建日志诊断作业时输入的日志路径是否正确后重试,您也可以在作业状态的提示信息中,单击OBS路径规范,确认日志文件符合OBS路径格式规范后重试。其他原因请联系技术支持处理。
创建失败
表示创建失败,当前限制最多支持同时运行20个作业,如果排队中的作业超过20个,新创建的作业会失败,可等待作业运行结束后再试。
终止中
表示正在释放此诊断作业占用的资源。
作业终止
表示此诊断作业已经终止,所占用的资源已经成功释放。
查看日志诊断结果详情
- 登录ModelArts管理控制台,在左侧导航栏选择“运维管理 > 日志诊断”,进入日志诊断页面。
- 单击作业名称或右侧“操作 > 诊断详情”进入日志诊断详情界面。
在日志诊断详情页可查看日志诊断结果,结果说明请见日志诊断结果说明。图2 日志诊断详情页
日志诊断结果说明
日志诊断结果包括“根因节点分析”和“故障事件分析”。其中根因节点分析部分包括根因节点、现象描述、首错节点、尾错节点、根因日志;故障事件分析则按照不同的类别对可能引起异常的点进行检查,将故障码相关信息汇总,并给出建议方案。
- 根因节点分析
根因节点分析基于CANN应用类日志(Plog)进行。
当创建日志诊断作业时没有选择CANN应用类日志,或者CANN应用类日志目录下并没有符合规范的日志文件时,根因节点分析会在现象描述中报出:未查找到有效的Plog文件,无法定位根因节点。
当创建日志诊断作业时选择了CANN应用类日志中,且日志文件中有报错或超时信息时,根因节点分析会给出结果,如下表所示:
表4 根因节点分析参数说明 参数
说明
根因节点
根因设备所在的Device。
现象描述
解释根据日志分析出的现象及结论。
首错节点
首次出现故障的device及时间。
尾错节点
最后一次出现故障的device及时间。
根因日志
根因节点日志。
- 故障事件分析
故障事件分析基于根因节点分析的结果进行。
当根因节点分析给出根因节点时,故障事件分析会对根因节点上的日志文件进行分析和诊断;
当根因节点分析没有给出根因节点时,故障事件分析会对所有节点上的日志文件进行分析和诊断。
表5 故障事件分析参数说明 参数
说明
故障描述
描述某个组件上报的错误信息。
故障设备
发生故障的设备。
关键日志
该故障对应的故障日志。
故障类别
故障的类别及所在的组件和模块。
故障组件
故障组件信息,如CANN、AI Framework等。
故障模块
故障模块信息,如CANN、Python等。
建议方案
针对该故障的处理建议。
