log4js2
log4js2 is a fast and lightweight logging library that enables logging flexibility within JavaScript/TypeScript applications,
similar to Apache's Log4j2 library. It can also serve as a drop-in replacement for log4js,
since the namespace and functions are mostly similar.
Installing & Building
If you're building from source, simply run
> npm install
> npm run build
Or, you can install log4js2 from npm.
> npm install --save log4js2
Getting Started
Logging works out-of-the-box, with no configuration. However, note that only error messages will display without
specific configuration.
import {getLogger} from 'log4js2';
const logger = getLogger('myLogger');
console.error('Console error');
logger.error('This is an error log');
logger.debug('This is a debug log');
Configuration
Configure log4js using the configure()
method. This must be the first thing you do. Otherwise,
the first log you commit will not allow updates from this function
import {configure, LogLevel} from 'log4js2';
configure({
layout : '%d [%p] %c %M:%line:%column - %m %ex',
appenders : ['Console'],
loggers : [{
tag: 'App',
logLevel : LogLevel.INFO
}]
});
Virtual Console
This library utilizes a virtual console to intercept console
logs from other libraries/scripts. This is intended to
allow usage of this library without having to replace all console.log commands within your code - or to intercept logs
from third-party libraries to input into your own logs bucket. Make sure log4js2
is loaded at the top of the page to
ensure that all logs are caught.
import * from 'log4js2';
console.log('console log');
To disable this feature, set the virtualConsole
property to false when configuring log4js2.
configure({
virtualConsole: false
});
Contributors
Library built and maintained by Robin Schultz
If you would like to contribute (aka buy me a beer), you can send funds via PayPal at the link below.