首页 > 解决方案 > 如何在nodejs中使用信号禁用调试?

问题描述

我们可以在 nodejs 中使用kill -USR1 PID. 我们如何在不终止工作人员的情况下使用任何信号或任何其他方式禁用它?

参考 - https://nodejs.org/en/docs/guides/debugging-getting-started/#enable-inspector

标签: node.jslinuxdebugging

解决方案


虽然 SIGUSR1 用于启动调试检查器(相当于运行带有--inspect标志的节点),但您可以自定义 SIGUSR2 以关闭检查器而不杀死进程。

在您的主应用程序中添加类似的内容应该会添加该行为。

const inspector = require('inspector');

process.on('SIGUSR2', () => {
    console.log('Received SIGUSR2. Closing inspector.');
    inspector.close();
});

https://nodejs.org/api/inspector.html#inspector_inspector_close


推荐阅读