| var log4js = require('../lib/log4js'); |
| //log the cheese logger messages to a file, and the console ones as well. |
| log4js.configure({ |
| appenders: [ |
| { |
| type: "file", |
| filename: "cheese.log", |
| category: [ 'cheese','console' ] |
| }, |
| { |
| type: "console" |
| } |
| ], |
| replaceConsole: true |
| }); |
| |
| //to add an appender programmatically, and without clearing other appenders |
| //loadAppender is only necessary if you haven't already configured an appender of this type |
| log4js.loadAppender('file'); |
| log4js.addAppender(log4js.appenders.file('pants.log'), 'pants'); |
| //a custom logger outside of the log4js/lib/appenders directory can be accessed like so |
| //log4js.loadAppender('what/you/would/put/in/require'); |
| //log4js.addAppender(log4js.appenders['what/you/would/put/in/require'](args)); |
| //or through configure as: |
| //log4js.configure({ |
| // appenders: [ { type: 'what/you/would/put/in/require', otherArgs: 'blah' } ] |
| //}); |
| |
| var logger = log4js.getLogger('cheese'); |
| //only errors and above get logged. |
| //you can also set this log level in the config object |
| //via the levels field. |
| logger.setLevel('ERROR'); |
| |
| //console logging methods have been replaced with log4js ones. |
| //so this will get coloured output on console, and appear in cheese.log |
| console.error("AAArgh! Something went wrong", { some: "otherObject", useful_for: "debug purposes" }); |
| |
| //these will not appear (logging level beneath error) |
| logger.trace('Entering cheese testing'); |
| logger.debug('Got cheese.'); |
| logger.info('Cheese is Gouda.'); |
| logger.warn('Cheese is quite smelly.'); |
| //these end up on the console and in cheese.log |
| logger.error('Cheese %s is too ripe!', "gouda"); |
| logger.fatal('Cheese was breeding ground for listeria.'); |
| |
| //these don't end up in cheese.log, but will appear on the console |
| var anotherLogger = log4js.getLogger('another'); |
| anotherLogger.debug("Just checking"); |
| |
| //one for pants.log |
| //will also go to console, since that's configured for all categories |
| var pantsLog = log4js.getLogger('pants'); |
| pantsLog.debug("Something for pants"); |
| |
| |
| |