Closed jincod closed 11 years ago
Why you needs in so complex solution? Default logger is not something special. Keep original logger, if you want to use built-in logger and your own logging solution:
var CustomError = Terror.create('CustomError'),
CustomError.setLogger(function(message, level) {
// your own stuff
log.push([message, level]);
// call built-in logger
Terror.prototype.logger.call(this, message, level);
});
If you want to use multiple loggers, you can implement desired API in application common error class:
var ApplicationError = Terror.create('ApplicationError');
ApplicationError.addLogger = ...
ApplicationError.removeLogger = ...
ApplicationError.removeDefaultLogger = ...
var ConnectionError = ApplicationError.create('ConnectionError')
.addLogger(fucntion(...) { ... });
or you can use solutions like winston for multitarget logging.
In any case, support for multiple loggers doesn't looks to be core terror functionality.
Ok, thx.
Can use custom logger with default