123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 |
- package core
- import "fmt"
- var _ IModuleLogger = (*ModuleLogger)(nil)
- var _ IModuleLogLevelLimiter = (*ModuleLogger)(nil)
- type ModuleLogger struct {
- module string
- levelLimit uint8
- baseLogger ILogger
- }
- func (ml *ModuleLogger) CloseThisLog() {
- ml.baseLogger.DiscardSubLoggerByPrefix(ml.module)
- }
- func (ml *ModuleLogger) CloseSubLog(suffix string) {
- prefix := ml.module
- name := fmt.Sprintf("%s/%s", prefix, suffix)
- ml.baseLogger.DiscardSubLoggerByPrefix(name)
- }
- func (ml *ModuleLogger) LimitLogLevel(level uint8) {
- if level > 4 {
- ml.levelLimit = 0
- return
- }
- ml.levelLimit = level
- }
- func (ml *ModuleLogger) GetModuleName() string {
- return ml.module
- }
- func (ml *ModuleLogger) GetSubLog(suffix string) IModuleLogger {
- prefix := ml.module
- name := fmt.Sprintf("%s/%s", prefix, suffix)
- return ml.baseLogger.GetModuleLogger(name)
- }
- func NewModuleLogger(module string, base ILogger) *ModuleLogger {
- return &ModuleLogger{
- module: module,
- baseLogger: base,
- }
- }
- func (ml *ModuleLogger) Fatal(d ...interface{}) {
- ml.baseLogger.BLFatal(ml.module, d...)
- }
- func (ml *ModuleLogger) FatalF(format string, d ...interface{}) {
- ml.baseLogger.BLFatalF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) FatalC(data map[string]string) {
- ml.baseLogger.BLFatalC(ml.module, data)
- }
- func (ml *ModuleLogger) Panic(d ...interface{}) {
- ml.baseLogger.BLPanic(ml.module, d...)
- }
- func (ml *ModuleLogger) PanicF(format string, d ...interface{}) {
- ml.baseLogger.BLPanicF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) PanicC(data map[string]string) {
- ml.baseLogger.BLPanicC(ml.module, data)
- }
- func (ml *ModuleLogger) Error(d ...interface{}) {
- ml.baseLogger.BLError(ml.module, d...)
- }
- func (ml *ModuleLogger) ErrorF(format string, d ...interface{}) {
- ml.baseLogger.BLErrorF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) ErrorC(data map[string]string) {
- ml.baseLogger.BLErrorC(ml.module, data)
- }
- func (ml *ModuleLogger) Warn(d ...interface{}) {
- if ml.levelLimit > 3 {
- return
- }
- ml.baseLogger.BLWarn(ml.module, d...)
- }
- func (ml *ModuleLogger) WarnF(format string, d ...interface{}) {
- if ml.levelLimit > 3 {
- return
- }
- ml.baseLogger.BLWarnF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) WarnC(data map[string]string) {
- if ml.levelLimit > 3 {
- return
- }
- ml.baseLogger.BLWarnC(ml.module, data)
- }
- func (ml *ModuleLogger) Info(d ...interface{}) {
- if ml.levelLimit > 2 {
- return
- }
- ml.baseLogger.BLInfo(ml.module, d...)
- }
- func (ml *ModuleLogger) InfoF(format string, d ...interface{}) {
- if ml.levelLimit > 2 {
- return
- }
- ml.baseLogger.BLInfoF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) InfoC(data map[string]string) {
- if ml.levelLimit > 2 {
- return
- }
- ml.baseLogger.BLInfoC(ml.module, data)
- }
- func (ml *ModuleLogger) Verbose(d ...interface{}) {
- if ml.levelLimit > 1 {
- return
- }
- ml.baseLogger.BLVerbose(ml.module, d...)
- }
- func (ml *ModuleLogger) VerboseF(format string, d ...interface{}) {
- if ml.levelLimit > 1 {
- return
- }
- ml.baseLogger.BLVerboseF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) VerboseC(data map[string]string) {
- if ml.levelLimit > 1 {
- return
- }
- ml.baseLogger.BLVerboseC(ml.module, data)
- }
- func (ml *ModuleLogger) Debug(d ...interface{}) {
- if ml.levelLimit > 0 {
- return
- }
- ml.baseLogger.BLDebug(ml.module, d...)
- }
- func (ml *ModuleLogger) DebugF(format string, d ...interface{}) {
- if ml.levelLimit > 0 {
- return
- }
- ml.baseLogger.BLDebugF(ml.module, format, d...)
- }
- func (ml *ModuleLogger) DebugC(data map[string]string) {
- if ml.levelLimit > 0 {
- return
- }
- ml.baseLogger.BLDebugC(ml.module, data)
- }
|