UNPKG

@kavist/arjuna

Version:

Node.js Boilerplate, revisited

59 lines (50 loc) 1.51 kB
const { Sequelize } = require("sequelize"); const mongoose = require('mongoose'); const RedisClientFactory = require('../.utility/factory/redis/RedisClientFactory'); const { dbSql, dbDocument, dsRedis } = require('./config'); const logger = (message) => { console.log("[QUERY_LOG] \n" + message); return false; }; const handleSequelize = (connection) => { connection.authenticate() .then(() => { console.info('Sequelize connection has been established successfully.'); }) .catch(err => { console.error('Unable to connect to the database:' + err); }); }; const handleMongoose = (connection) => { connection.once('open', () => { console.info('Mongoose connection has been established successfully.'); }); connection.on('error', () => { console.error('Unable to connect to the document database'); }); }; const connections = { sql: new Sequelize({ dialect: dbSql.connection, host: dbSql.host, port: dbSql.port, database: dbSql.database, username: dbSql.username, password: dbSql.password, logging: logger, timezone: "+07:00", }), document: mongoose.createConnection(dbDocument.connection, { useNewUrlParser: true, useUnifiedTopology: true, useFindAndModify: false, useCreateIndex: true, retryWrites: false }), redis: RedisClientFactory.create({ connection: dsRedis.connection }), }; handleSequelize(connections.sql); handleMongoose(connections.document); module.exports = connections