| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- 'use strict';
- const { loggerOptions, noAWS } = require('./config');
- function TestLogger() {}
- // intentionally disable logging during testing
- TestLogger.prototype.info = () => undefined;
- TestLogger.prototype.fatal = () => undefined;
- TestLogger.prototype.warn = () => undefined;
- // uncomment to see logs during tests
- // // eslint-disable-next-line no-console
- // TestLogger.prototype.info = () => console.log;
- // // eslint-disable-next-line no-console
- // TestLogger.prototype.fatal = () => console.error;
- // // eslint-disable-next-line no-console
- // TestLogger.prototype.warn = () => console.log;
- // console logging when running outside AWS
- function ConsoleLogger() {}
- // eslint-disable-next-line no-console
- ConsoleLogger.prototype.info = console.log;
- // eslint-disable-next-line no-console
- ConsoleLogger.prototype.fatal = console.error;
- // eslint-disable-next-line no-console
- ConsoleLogger.prototype.warn = console.log;
- let logger;
- switch (process.env.NODE_ENV) {
- case 'production':
- case 'development':
- if (noAWS === 'true') {
- logger = new ConsoleLogger();
- } else {
- logger = require('@hw/kinesis-logger')(loggerOptions);
- }
- break;
- default:
- logger = new TestLogger();
- }
- logger.info('Logger initialized');
- module.exports = logger;
|