From cf6f04defb3d0aad5c524fd93cb01f57916527c7 Mon Sep 17 00:00:00 2001 From: zadam Date: Wed, 4 Dec 2019 22:59:26 +0100 Subject: [PATCH] better port error logging --- src/www | 49 ++++++++++++++++++++++--------------------------- 1 file changed, 22 insertions(+), 27 deletions(-) diff --git a/src/www b/src/www index 26375f40a..338d61314 100755 --- a/src/www +++ b/src/www @@ -74,7 +74,28 @@ async function startTrilium() { httpServer.keepAliveTimeout = 120000 * 5; httpServer.listen(usedPort, usedHost); - httpServer.on('error', onError); + httpServer.on('error', error => { + if (error.syscall !== 'listen') { + throw error; + } + + // handle specific listen errors with friendly messages + switch (error.code) { + case 'EACCES': + console.error(`Port ${usedPort} requires elevated privileges`); + process.exit(1); + break; + + case 'EADDRINUSE': + console.error(`Port ${usedPort} is already in use`); + process.exit(1); + break; + + default: + throw error; + } + } + ); httpServer.on('listening', () => debug('Listening on port' + httpServer.address().port)); sqlInit.dbReady.then(() => ws.init(httpServer, sessionParser)); @@ -86,29 +107,3 @@ async function startTrilium() { } startTrilium(); - -/** - * Event listener for HTTP server "error" event. - */ - -function onError(error) { - if (error.syscall !== 'listen') { - throw error; - } - - // handle specific listen errors with friendly messages - switch (error.code) { - case 'EACCES': - console.error('Port requires elevated privileges'); - process.exit(1); - break; - - case 'EADDRINUSE': - console.error('Port is already in use'); - process.exit(1); - break; - - default: - throw error; - } -}