VSCode的Auto Attach功能可自动连接调试器到Node.js进程,支持四种方式:一、命令面板切换;二、launch.json配置autoAttach;三、设置NODE_OPTIONS环境变量;四、调试控制台执行_debugProcess。

如果您在VSCode中调试Node.js应用时希望跳过手动附加调试器的步骤,则“Auto Attach”功能可自动将调试器连接到新启动的Node.js进程。以下是启用和配置该功能的具体操作:
本文运行环境:MacBook Pro,macOS Sequoia。
一、通过命令面板启用Auto Attach
VSCode内置了快速开关机制,允许用户在不修改配置文件的情况下临时启用或禁用Auto Attach功能。该方式适用于需要即时调试单次运行场景,且不影响全局设置。
1、按下 Cmd+Shift+P(macOS)或 Ctrl+Shift+P(Windows/Linux)打开命令面板。
2、输入 Debug: Toggle Auto Attach 并回车。
3、状态栏右下角出现 Auto Attach On 提示即表示已激活。
二、在launch.json中配置autoAttach
通过调试配置文件显式声明autoAttach选项,可实现对特定调试配置的精确控制,适用于项目级长期调试需求。该设置仅作用于当前工作区的对应配置项。
1、在项目根目录下打开 .vscode/launch.json 文件。
2、在某个 configuration 对象内添加字段:"autoAttach": true。
3、保存文件后,使用该配置启动调试时,VSCode将在检测到匹配的Node.js子进程时自动附加调试器。
三、设置环境变量NODE_OPTIONS启用自动附加
通过注入Node.js运行时参数,可在进程启动阶段强制启用调试模式,并使VSCode识别并连接。此方法不依赖VSCode界面操作,适合CI/CD或脚本化调试流程。
1、在终端中执行:export NODE_OPTIONS='--inspect=0.0.0.0:9229'(macOS/Linux)或 set NODE_OPTIONS=--inspect=0.0.0.0:9229(Windows)。
2、启动Node.js应用,例如:node app.js。
3、VSCode在监听端口 9229 时将自动发现并附加到该进程。
四、使用调试控制台触发Auto Attach
当应用已在运行且未预先配置调试参数时,可通过调试控制台向目标进程动态注入调试支持。该方式适用于已启动但尚未进入调试状态的Node.js进程。
1、在VSCode中打开调试视图,点击 运行和调试 侧边栏中的 创建JavaScript调试器配置 链接。
2、选择 Node.js: Auto Attach 模板并保存。
3、在调试控制台中输入:process._debugProcess( process.pid )。










