diff options
Diffstat (limited to 'front/odiparpack/server/logger.js')
| -rw-r--r-- | front/odiparpack/server/logger.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/front/odiparpack/server/logger.js b/front/odiparpack/server/logger.js new file mode 100644 index 0000000..ab80126 --- /dev/null +++ b/front/odiparpack/server/logger.js @@ -0,0 +1,39 @@ +/* eslint-disable no-console */ + +const chalk = require('chalk'); +const ip = require('ip'); + +const divider = chalk.gray('\n-----------------------------------'); + +/** + * Logger middleware, you can customize it to make messages more personal + */ +const logger = { + // Called whenever there's an error on the server we want to print + error: err => { + console.error(chalk.red(err)); + }, + + // Called when express.js app starts on given port w/o errors + appStarted: (port, host, tunnelStarted) => { + console.log(`Server started ! ${chalk.green('✓')}`); + + // If the tunnel started, log that and the URL it's available at + if (tunnelStarted) { + console.log(`Tunnel initialised ${chalk.green('✓')}`); + } + + console.log(` +${chalk.bold('Access URLs:')}${divider} +Localhost: ${chalk.magenta(`http://${host}:${port}`)} + LAN: ${chalk.magenta(`http://${ip.address()}:${port}`) + + (tunnelStarted + ? `\n Proxy: ${chalk.magenta(tunnelStarted)}` + : '')}${divider} +${chalk.blue(`Press ${chalk.italic('CTRL-C')} to stop`)} +${chalk('Webpack is building script...')} + `); + }, +}; + +module.exports = logger; |
