В моем пакете. json есть следующий скрипт для отладки
"start-admin-endpoints-debug": "одновременно \" npm run mon go -start- admin \ "wait-on \" nodemon --inspect-brk server.js \ "",
Использование в качестве ссылок следующих ссылок: link1 и link2
пробовал решение @Miroslav Bajtoš, а также @Bob и @ bnguyen777, но не может заставить его работать для отладки моего рабочего / дочернего экземпляра кластера.
Не знаю, есть ли в изменениях логика c внутри анонимной функции asyn c ( async () => {})();
.
Запускается ли приложение в порту 448 при первом обнаружении главный процесс и может отлаживать этот экземпляр, но дочерний процесс после cluster.fork (), похоже, не работает в режиме отладки, даже связывая флаг --inspect-brk, как в коде ниже.
Любая помощь был бы признателен
if (cluster.isMaster) {
var debug = process.execArgv.indexOf('--inspect-brk') !== -1;
cluster.setupMaster({
execArgv: process.execArgv.filter(function(s) { return s !== '--inspect-brk' })
});
if (debug) cluster.settings.execArgv.push('--inspect-brk=' + (5859));
cluster.fork();
/* var debug = process.execArgv.indexOf('--inspect-brk') !== -1;
if (debug){
var fixedExecArgv=[];
fixedExecArgv.push('--inspect-brk=5859');//'--debug-brk=5859' //'--inspect-brk=' + (3000)
cluster.setupMaster({
execArgv: fixedExecArgv
});
}
cluster.fork(); */
//var child = require('child_process');
//console.log(`path.join(__dirname,'server.js'): ${path.join(__dirname,'server.js')}`);
//cluster.fork('server.js',[],{execArgv:['--inspect-brk']});
//cluster.fork({execArgv:['--inspect-brk=5859']});
/* const options = {
execArgv: [],
args: ['worker']
};
if (process.execArgv.some(arg => arg.startsWith('--inspect-brk'))) {
options.execArgv.push('--inspect-brk=20002')
}
cluster.setupMaster(options);
cluster.fork(); */
debugger
// eslint-disable-next-line no-unused-vars
cluster.on('exit', function (worker, code, signal) {
AppLog.verbose('-> server.js close and open again see log for error that throwed to exit');
cluster.fork();
});
}
if (cluster.isWorker) {
debugger;