调试挂起#
在 Ray 仪表板中查看堆栈跟踪#
通过点击活跃的 Worker 进程、任务、角色和作业的驱动进程的“CPU 分析”或“堆栈跟踪”操作,Ray 仪表板 允许你分析 Ray 驱动程序或 Worker 进程。
点击“堆栈跟踪”将使用 py-spy
返回当前的堆栈跟踪样本。默认情况下,仅显示 Python 堆栈跟踪。要显示本地代码帧,请设置 URL 参数 ``native=1``(仅在 Linux 上支持)。
备注
在使用 py-spy 时,您可能会遇到权限错误。要解决此问题:
如果你在Docker容器中手动启动Ray,请按照 py-spy文档 来解决这个问题。
如果你是 KubeRay 用户,请按照 KubeRay 配置指南 进行操作并解决问题。
备注
以下错误是条件性的,不是您Python程序失败的信号:
如果你看到“没有这样的文件或目录”,请检查你的工作进程是否已退出。
如果你看到“未找到堆栈计数”,请检查你的工作进程是否在过去的5秒内处于休眠状态且未活动。
使用 ray stack
CLI 命令#
一旦 py-spy
安装完成(如果在 安装 Ray 时包含了“Ray Dashboard”组件,它会自动安装),你可以运行 ray stack
来转储当前节点上所有 Ray Worker 进程的堆栈跟踪。
本文档讨论了人们在使用 Ray 时遇到的一些常见问题以及一些已知问题。如果您遇到其他问题,请 告知我们。