温馨提示×

Debian上Node.js的调试技巧有哪些

小樊
50
2025-08-01 14:49:13
栏目: 编程语言

在Debian上调试Node.js应用程序有多种方法,以下是一些常用的调试技巧:

使用 debug 包进行调试

  • 安装 debug
    npm install debug
    
  • 在代码中引入并使用 debug 模块
    const debug = require('debug')('myapp');
    debug('Hello, debug!');
    
  • 动态开启调试: 通过设置 DEBUG 环境变量来控制调试器的输出:
    DEBUG=myapp node app.js
    
  • 使用命名空间
    const debug = require('debug');
    const serverDebug = debug.extend('myapp:server');
    const databaseDebug = debug.extend('myapp:database');
    serverDebug('Hello, server!');
    databaseDebug('Hello, database!');
    
  • 自定义输出格式
    DEBUG_COLORS=true DEBUG_FD=3 node app.js
    

使用 Visual Studio Code (VSCode) 进行调试

  • 配置 launch.json 文件: 在 .vscode 目录下创建 launch.json 文件,配置调试任务:
    {
      "version": "0.2.0",
      "configurations": [
        {
          "name": "Debug Node.js",
          "type": "node",
          "request": "launch",
          "program": "${workspaceFolder}/app.js"
        }
      ]
    }
    
  • 启动调试: 在VSCode中按 F5 或点击左侧调试图标,选择配置的任务开始调试。
  • 使用自动附加: 在设置中启用 javascript: Auto Attach,这样可以在不切换终端的情况下直接调试Node.js进程。

使用 Chrome DevTools 调试

  • 启动 Node.js 进程时使用 --inspect-brk 标志
    node server.js --inspect-brk
    
  • 在 Chrome 浏览器中打开 DevTools: 访问 chrome://inspect,点击“为Node打开专用 DevTools”,然后点击“添加连接”并匹配Node.js监听的端口。
  • 调试异常和设置断点: 在DevTools中,可以使用调试工具栏中的按钮暂停执行,检查变量值,设置断点等。

使用 PM2 进行进程管理(适用于生产环境)

  • 安装 PM2
    sudo npm install pm2 -g
    
  • 配置 PM2 服务: 创建 node.service 文件并放置在 /etc/systemd/system/ 目录下:
    [Unit]
    Description=My super Node.js app
    
    [Service]
    WorkingDirectory=/home/root/Heroku/
    ExecStart=/usr/bin/node /home/root/Heroku/server.js
    Restart=always
    RestartSec=500
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=nodejs
    User=root
    Group=root
    Environment=NODE_ENV=production
    
    [Install]
    WantedBy=multi-user.target
    
  • 启动服务
    sudo systemctl daemon-reloadsudo systemctl start node
    sudo systemctl enable node
    

通过以上方法,你可以在Debian系统中有效地调试Node.js应用程序。选择适合你工作流程的方法进行调试。

0