调试笔记本

重要

此功能目前以公共预览版提供。

本页介绍了如何在 Databricks 笔记本中使用内置的交互式调试器。 该调试器仅适用于 Python。

交互式调试器提供断点、分步执行、变量检查等工具,可帮助更高效地在笔记本中开发代码。

要求

笔记本必须附加到满足以下要求的群集:

  • Databricks Runtime 版本 13.3 LTS 或更高版本。
  • 访问模式必须为单个用户(已分配)或无隔离共享

启用调试程序

若要启用调试程序,请执行以下步骤:

  1. 点击工作区右上角的用户名,然后从下拉列表中选择“设置”。
  2. 在“设置”边栏中,选择“开发人员”。
  3. 实验性功能部分中,切换Python Notebook 交互式调试器

开始调试

要启动调试器,请执行以下步骤:

  1. 点击单元格的装订线以添加一个或多个断点。 要删除断点,请再次点击。

    创建和移除断点视频

  2. 使用以下选项之一启动调试会话:

    • 点击“运行>”“调试单元格”。
    • 使用组合键 Option + Shift + D
    • 在单元格运行菜单中,选择“调试单元格”。

    在单元格运行菜单中调试单元格项

调试会话会自动启动并运行所选单元格。

如果单元格触发错误,还可以启动调试器。 在单元格输出的底部,点击“调试”按钮

当调试会话处于活动状态时,调试工具栏调试工具栏显示在单元格顶部。

调试操作

带批注的调试器工具栏

在调试会话中,可以执行以下操作:

  • 设置或删除断点。
  • 查看断点处变量的值。
  • 逐步执行代码。
  • 单步执行或退出函数。

当代码到达断点时,它会在运行行之前停止,而不是运行行之后。

使用调试器工具栏中的按钮逐步执行代码。 单步执行代码时,当前行在单元格中突出显示。 可以在右侧栏的变量资源管理器窗格中查看变量值。

单步执行函数时,局部函数变量显示在变量窗格中,标记为[local]

调试控制台

当你启动调试会话时,调试控制台会自动显示在底部面板中。 此控制台允许在断点暂停时执行 Python 代码来检查或操作变量。 主笔记本中执行的代码不会在调试会话期间运行。 若要在控制台中运行代码,请按 Enter。 对于多行表达式,请使用 Shift + Enter 转移到新行

debug_console

注意

  • 调试控制台旨在用于快速评估,如果代码执行时间超过 15 秒,则会发生超时。
  • 调试控制台不支持 display 命令。 若要查看数据帧中的示例数据,请对 PySpark 数据帧使用 df.show() 或对 Pandas 数据帧使用 df.head()

变量资源管理器

你可以使用右侧的变量资源管理器面板查看变量的值。变量资源管理器图标 单击“检查”会自动在调试控制台中执行代码以输出变量的值

示例变量资源管理器面板

若要筛选显示内容,请在搜索框中输入文本。 键入时会自动筛选列表。

对于 Databricks Runtime 12.2 LTS 及更高版本上的 Python,变量会在单元运行时更新。 对于 Scala、R 和 Databricks Runtime 11.3 LTS 及更低版本上的 Python,变量会在单元完成运行后更新。

终止调试器会话

要结束调试会话,请点击单元格左上角的调试器停止按钮,或点击笔记本顶部的笔记本停止按钮。 如果用户不使用调试工具栏或调试控制台,则调试会话也会在 30 分钟后自动终止。

使用 Databricks 助手进行调试

Databricks 助手是一种上下文感知 AI 助手,可帮助你调试代码。 有关详细信息,请参阅在笔记本单元中使用 Databricks 助手

限制

有关详细信息,请参阅 Databricks 笔记本的已知限制