mirror of
https://bitbucket.org/bellord13/kit.git
synced 2026-11-13 19:06:11 +03:00
74 lines
2.1 KiB
JavaScript
74 lines
2.1 KiB
JavaScript
/** @module Logger */
|
|
__PluginManager__.register('Logger', function(module, exports, require, global){
|
|
|
|
var support = require('support');
|
|
var Collection = require('Collection');
|
|
|
|
var LogLevel = {
|
|
EMERGENCY: 'emergency',
|
|
ALERT: 'alert',
|
|
CRITICAL: 'critical',
|
|
ERROR: 'error',
|
|
WARNING: 'warning',
|
|
NOTICE: 'notice',
|
|
INFO: 'info',
|
|
DEBUG: 'debug',
|
|
SUCCESS: 'success',
|
|
};
|
|
|
|
/**
|
|
* @class Logger
|
|
* @memberOf kit
|
|
*/
|
|
var Logger = function() {
|
|
this.collection = new Collection();
|
|
this.onLog = new Collection();
|
|
};
|
|
|
|
/**
|
|
* @param collection {kit.Collection}
|
|
*/
|
|
Logger.prototype.setCollection = function (collection) {
|
|
this.collection = collection;
|
|
};
|
|
|
|
Logger.prototype.emergency = function (message, context) {
|
|
this.log(LogLevel.EMERGENCY, message, context);
|
|
};
|
|
Logger.prototype.alert = function (message, context) {
|
|
this.log(LogLevel.ALERT, message, context);
|
|
};
|
|
Logger.prototype.critical = function (message, context) {
|
|
this.log(LogLevel.CRITICAL, message, context);
|
|
};
|
|
Logger.prototype.error = function (message, context) {
|
|
this.log(LogLevel.ERROR, message, context);
|
|
};
|
|
Logger.prototype.warning = function (message, context) {
|
|
this.log(LogLevel.WARNING, message, context);
|
|
};
|
|
Logger.prototype.notice = function (message, context) {
|
|
this.log(LogLevel.NOTICE, message, context);
|
|
};
|
|
Logger.prototype.info = function (message, context) {
|
|
this.log(LogLevel.INFO, message, context);
|
|
};
|
|
Logger.prototype.debug = function (message, context) {
|
|
this.log(LogLevel.DEBUG, message, context);
|
|
};
|
|
Logger.prototype.success = function (message, context) {
|
|
this.log(LogLevel.SUCCESS, message, context);
|
|
};
|
|
Logger.prototype.log = function (level, message, context = []) {
|
|
var data = {
|
|
level: level,
|
|
message: message,
|
|
context: context,
|
|
};
|
|
this.collection.push(data);
|
|
this.onLog.eachCall(this, data);
|
|
};
|
|
|
|
return module.exports = Logger;
|
|
});
|