angular-logger level demo
by plantface
HTML
<script src="https://code.angularjs.org/1.3.9/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment-with-locales.min.js"></script>
<script src="https://cdn.rawgit.com/alexei/sprintf.js/1.0.2/dist/sprintf.min.js"></script>
<script src="https://cdn.rawgit.com/better-js-logging/angular-logger/master/dist/angular-logger.min.js"></script>
<div ng-app="app"></div>
JavaScript
var app = angular.module('app', ['angular-logger']);
app.config(function (logEnhancerProvider) {
logEnhancerProvider.prefixPattern = '%s::[%s]>';
logEnhancerProvider.datetimePattern = 'dddd h:mm:ss a';
logEnhancerProvider.logLevels = {
'*': logEnhancerProvider.LEVEL.OFF,
'main': logEnhancerProvider.LEVEL.WARN,
'main.subB': logEnhancerProvider.LEVEL.TRACE
};
});
app.run(function ($log) {
$log.getInstance('banana').info('Hello World!'); // ignored, logging turned off for '*'
$log.getInstance('main.subA').info('Hello World!'); // ignored, doesn't pass logging threshold of 'main'
$log.getInstance('main.subB').trace('Hello World!');
$log.getInstance('main.subB').info('Hello %s!', 'World', { 'extra': ['pass-through params'] });
$log.getInstance('main.subB').info('Delayed object creation %j!', function() { return { 'is': 'awesome' }; });
});