调试挂起#

在 Ray 仪表板中查看堆栈跟踪#

通过点击活跃的 Worker 进程、任务、角色和作业的驱动进程的“CPU 分析”或“堆栈跟踪”操作,Ray 仪表板 允许你分析 Ray 驱动程序或 Worker 进程。

../../../_images/profile.png

点击“堆栈跟踪”将使用 py-spy 返回当前的堆栈跟踪样本。默认情况下,仅显示 Python 堆栈跟踪。要显示本地代码帧,请设置 URL 参数 ``native=1``(仅在 Linux 上支持)。

../../../_images/stack.png

备注

在使用 py-spy 时,您可能会遇到权限错误。要解决此问题:

  • 如果你在Docker容器中手动启动Ray,请按照 py-spy文档 来解决这个问题。

  • 如果你是 KubeRay 用户,请按照 KubeRay 配置指南 进行操作并解决问题。

备注

以下错误是条件性的,不是您Python程序失败的信号:

  • 如果你看到“没有这样的文件或目录”,请检查你的工作进程是否已退出。

  • 如果你看到“未找到堆栈计数”,请检查你的工作进程是否在过去的5秒内处于休眠状态且未活动。

使用 ray stack CLI 命令#

一旦 py-spy 安装完成(如果在 安装 Ray 时包含了“Ray Dashboard”组件,它会自动安装),你可以运行 ray stack 来转储当前节点上所有 Ray Worker 进程的堆栈跟踪。

本文档讨论了人们在使用 Ray 时遇到的一些常见问题以及一些已知问题。如果您遇到其他问题,请 告知我们