@apolitical/server
Version:
Node.js module to encapsulate Apolitical's express server setup
18 lines (16 loc) • 611 B
JavaScript
;
module.exports = ({ apoliticalLogger, config, logger, loggerHelper }) => {
return async function load(app, { labels }) {
if (config.NODE_ENV === 'production') {
// Setup Google Cloud with Apolitical Logger
const winstonMiddleware = await apoliticalLogger.loggerMiddleware(
logger.where(__filename, 'winstonMiddleware', labels),
);
app.use(winstonMiddleware);
} else {
// Setup Morgan with custom format and Apolitical Logger stream
const morganMiddleware = loggerHelper.buildMiddleware(labels);
app.use(morganMiddleware);
}
};
};