UNPKG

easy-express-cwa

Version:

CLI tool to setup a common Express.js backend developed by codewithashim

46 lines (38 loc) 1.01 kB
import { Server } from 'http'; import mongoose from 'mongoose'; import app from './app'; import config from './config/index'; import { errorLogger, logger } from './shared/logger'; process.on('uncaughtException', error => { errorLogger.error(error); process.exit(1); }); let server: Server; async function bootstrap() { try { await mongoose.connect(config.database_url as string); logger.info(`🛢 Database is connected successfully`); server = app.listen(config.port, () => { logger.info(`Application listening on port ${config.port}`); }); } catch (err) { errorLogger.error('Failed to connect database', err); } process.on('unhandledRejection', error => { if (server) { server.close(() => { errorLogger.error(error); process.exit(1); }); } else { process.exit(1); } }); } bootstrap(); // process.on('SIGTERM', () => { // logger.info('SIGTERM is received'); // if (server) { // server.close(); // } // });