| import * as log4js from './log4js'; |
| |
| log4js.configure('./filename'); |
| const logger1 = log4js.getLogger(); |
| logger1.level = 'debug'; |
| logger1.debug("Some debug messages"); |
| logger1.fatal({ |
| whatever: 'foo' |
| }) |
| |
| const logger3 = log4js.getLogger('cheese'); |
| logger3.trace('Entering cheese testing'); |
| logger3.debug('Got cheese.'); |
| logger3.info('Cheese is Gouda.'); |
| logger3.warn('Cheese is quite smelly.'); |
| logger3.error('Cheese is too ripe!'); |
| logger3.fatal('Cheese was breeding ground for listeria.'); |
| |
| log4js.configure({ |
| appenders: { cheese: { type: 'console', filename: 'cheese.log' } }, |
| categories: { default: { appenders: ['cheese'], level: 'error' } } |
| }); |
| |
| log4js.configure({ |
| appenders: { |
| out: { type: 'file', filename: 'pm2logs.log' } |
| }, |
| categories: { |
| default: { appenders: ['out'], level: 'info' } |
| }, |
| pm2: true, |
| pm2InstanceVar: 'INSTANCE_ID' |
| }); |
| |
| log4js.addLayout('json', config => function (logEvent) { |
| return JSON.stringify(logEvent) + config.separator; |
| }); |
| |
| log4js.configure({ |
| appenders: { |
| out: { type: 'stdout', layout: { type: 'json', separator: ',' } } |
| }, |
| categories: { |
| default: { appenders: ['out'], level: 'info' } |
| } |
| }); |
| |
| log4js.configure({ |
| appenders: { |
| file: { type: 'dateFile', filename: 'thing.log', pattern: '.mm' } |
| }, |
| categories: { |
| default: { appenders: ['file'], level: 'debug' } |
| } |
| }); |
| |
| const logger4 = log4js.getLogger('thing'); |
| logger4.log('logging a thing'); |
| |
| const logger5 = log4js.getLogger('json-test'); |
| logger5.info('this is just a test'); |
| logger5.error('of a custom appender'); |
| logger5.warn('that outputs json'); |
| log4js.shutdown(() => { }); |
| |
| log4js.configure({ |
| appenders: { |
| cheeseLogs: { type: 'file', filename: 'cheese.log' }, |
| console: { type: 'console' } |
| }, |
| categories: { |
| cheese: { appenders: ['cheeseLogs'], level: 'error' }, |
| another: { appenders: ['console'], level: 'trace' }, |
| default: { appenders: ['console', 'cheeseLogs'], level: 'trace' } |
| } |
| }); |
| |
| const logger6 = log4js.getLogger('cheese'); |
| // only errors and above get logged. |
| const otherLogger = log4js.getLogger(); |
| |
| // this will get coloured output on console, and appear in cheese.log |
| otherLogger.error('AAArgh! Something went wrong', { some: 'otherObject', useful_for: 'debug purposes' }); |
| otherLogger.log('This should appear as info output'); |
| |
| // these will not appear (logging level beneath error) |
| logger6.trace('Entering cheese testing'); |
| logger6.debug('Got cheese.'); |
| logger6.info('Cheese is Gouda.'); |
| logger6.log('Something funny about cheese.'); |
| logger6.warn('Cheese is quite smelly.'); |
| // these end up only in cheese.log |
| logger6.error('Cheese %s is too ripe!', 'gouda'); |
| logger6.fatal('Cheese was breeding ground for listeria.'); |
| |
| // these don't end up in cheese.log, but will appear on the console |
| const anotherLogger = log4js.getLogger('another'); |
| anotherLogger.debug('Just checking'); |
| |
| // will also go to console and cheese.log, since that's configured for all categories |
| const pantsLog = log4js.getLogger('pants'); |
| pantsLog.debug('Something for pants'); |
| |
| |
| import { configure, getLogger } from './log4js'; |
| configure('./filename'); |
| const logger2 = getLogger(); |
| logger2.level = 'debug'; |
| logger2.debug("Some debug messages"); |
| |
| configure({ |
| appenders: { cheese: { type: 'file', filename: 'cheese.log' } }, |
| categories: { default: { appenders: ['cheese'], level: 'error' } } |
| }); |
| |
| log4js.configure('./filename').getLogger(); |
| const logger7 = log4js.getLogger(); |
| logger7.level = 'debug'; |
| logger7.debug("Some debug messages"); |
| |
| const levels: log4js.Levels = log4js.levels; |
| const level: log4js.Level = levels.getLevel('info'); |
| |
| log4js.connectLogger(logger1, { |
| format: ':x, :y', |
| level: 'info', |
| context: true |
| }); |
| |
| log4js.connectLogger(logger2, { |
| format: (req, _res, format) => format(`:remote-addr - ${req.id} - ":method :url HTTP/:http-version" :status :content-length ":referrer" ":user-agent"`) |
| }); |
| |
| //support for passing in an appender module |
| log4js.configure({ |
| appenders: { thing: { type: { configure: () => {} }}}, |
| categories: { default: { appenders: ['thing'], level: 'debug'}} |
| }); |