diff --git a/lib/_inspect.js b/lib/_inspect.js index e80a516..6bb8e04 100644 --- a/lib/_inspect.js +++ b/lib/_inspect.js @@ -41,7 +41,16 @@ const [ InspectClient, createRepl ] = const debuglog = util.debuglog('inspect'); -exports.port = 9229; +const DEBUG_PORT_PATTERN = /^--(?:debug|inspect)-port=(\d+)$/; +function getDefaultPort() { + for (const arg of process.execArgv) { + const match = arg.match(DEBUG_PORT_PATTERN); + if (match) { + return +match[1]; + } + } + return 9229; +} function runScript(script, scriptArgs, inspectPort, childPrint) { return new Promise((resolve) => { @@ -228,7 +237,7 @@ class NodeInspector { function parseArgv([target, ...args]) { let host = '127.0.0.1'; - let port = exports.port; + let port = getDefaultPort(); let isRemote = false; let script = target; let scriptArgs = args;