Merge pull request #1094 from toalexjin/check_log_level
For enhancing performance, check log level before fmt.Sprintf()
Showing
1 changed file
with
24 additions
and
3 deletions
| ... | @@ -148,9 +148,6 @@ func (bl *BeeLogger) DelLogger(adaptername string) error { | ... | @@ -148,9 +148,6 @@ func (bl *BeeLogger) DelLogger(adaptername string) error { |
| 148 | } | 148 | } |
| 149 | 149 | ||
| 150 | func (bl *BeeLogger) writerMsg(loglevel int, msg string) error { | 150 | func (bl *BeeLogger) writerMsg(loglevel int, msg string) error { |
| 151 | if loglevel > bl.level { | ||
| 152 | return nil | ||
| 153 | } | ||
| 154 | lm := new(logMsg) | 151 | lm := new(logMsg) |
| 155 | lm.level = loglevel | 152 | lm.level = loglevel |
| 156 | if bl.enableFuncCallDepth { | 153 | if bl.enableFuncCallDepth { |
| ... | @@ -207,48 +204,72 @@ func (bl *BeeLogger) startLogger() { | ... | @@ -207,48 +204,72 @@ func (bl *BeeLogger) startLogger() { |
| 207 | 204 | ||
| 208 | // Log EMERGENCY level message. | 205 | // Log EMERGENCY level message. |
| 209 | func (bl *BeeLogger) Emergency(format string, v ...interface{}) { | 206 | func (bl *BeeLogger) Emergency(format string, v ...interface{}) { |
| 207 | if LevelEmergency > bl.level { | ||
| 208 | return | ||
| 209 | } | ||
| 210 | msg := fmt.Sprintf("[M] "+format, v...) | 210 | msg := fmt.Sprintf("[M] "+format, v...) |
| 211 | bl.writerMsg(LevelEmergency, msg) | 211 | bl.writerMsg(LevelEmergency, msg) |
| 212 | } | 212 | } |
| 213 | 213 | ||
| 214 | // Log ALERT level message. | 214 | // Log ALERT level message. |
| 215 | func (bl *BeeLogger) Alert(format string, v ...interface{}) { | 215 | func (bl *BeeLogger) Alert(format string, v ...interface{}) { |
| 216 | if LevelAlert > bl.level { | ||
| 217 | return | ||
| 218 | } | ||
| 216 | msg := fmt.Sprintf("[A] "+format, v...) | 219 | msg := fmt.Sprintf("[A] "+format, v...) |
| 217 | bl.writerMsg(LevelAlert, msg) | 220 | bl.writerMsg(LevelAlert, msg) |
| 218 | } | 221 | } |
| 219 | 222 | ||
| 220 | // Log CRITICAL level message. | 223 | // Log CRITICAL level message. |
| 221 | func (bl *BeeLogger) Critical(format string, v ...interface{}) { | 224 | func (bl *BeeLogger) Critical(format string, v ...interface{}) { |
| 225 | if LevelCritical > bl.level { | ||
| 226 | return | ||
| 227 | } | ||
| 222 | msg := fmt.Sprintf("[C] "+format, v...) | 228 | msg := fmt.Sprintf("[C] "+format, v...) |
| 223 | bl.writerMsg(LevelCritical, msg) | 229 | bl.writerMsg(LevelCritical, msg) |
| 224 | } | 230 | } |
| 225 | 231 | ||
| 226 | // Log ERROR level message. | 232 | // Log ERROR level message. |
| 227 | func (bl *BeeLogger) Error(format string, v ...interface{}) { | 233 | func (bl *BeeLogger) Error(format string, v ...interface{}) { |
| 234 | if LevelError > bl.level { | ||
| 235 | return | ||
| 236 | } | ||
| 228 | msg := fmt.Sprintf("[E] "+format, v...) | 237 | msg := fmt.Sprintf("[E] "+format, v...) |
| 229 | bl.writerMsg(LevelError, msg) | 238 | bl.writerMsg(LevelError, msg) |
| 230 | } | 239 | } |
| 231 | 240 | ||
| 232 | // Log WARNING level message. | 241 | // Log WARNING level message. |
| 233 | func (bl *BeeLogger) Warning(format string, v ...interface{}) { | 242 | func (bl *BeeLogger) Warning(format string, v ...interface{}) { |
| 243 | if LevelWarning > bl.level { | ||
| 244 | return | ||
| 245 | } | ||
| 234 | msg := fmt.Sprintf("[W] "+format, v...) | 246 | msg := fmt.Sprintf("[W] "+format, v...) |
| 235 | bl.writerMsg(LevelWarning, msg) | 247 | bl.writerMsg(LevelWarning, msg) |
| 236 | } | 248 | } |
| 237 | 249 | ||
| 238 | // Log NOTICE level message. | 250 | // Log NOTICE level message. |
| 239 | func (bl *BeeLogger) Notice(format string, v ...interface{}) { | 251 | func (bl *BeeLogger) Notice(format string, v ...interface{}) { |
| 252 | if LevelNotice > bl.level { | ||
| 253 | return | ||
| 254 | } | ||
| 240 | msg := fmt.Sprintf("[N] "+format, v...) | 255 | msg := fmt.Sprintf("[N] "+format, v...) |
| 241 | bl.writerMsg(LevelNotice, msg) | 256 | bl.writerMsg(LevelNotice, msg) |
| 242 | } | 257 | } |
| 243 | 258 | ||
| 244 | // Log INFORMATIONAL level message. | 259 | // Log INFORMATIONAL level message. |
| 245 | func (bl *BeeLogger) Informational(format string, v ...interface{}) { | 260 | func (bl *BeeLogger) Informational(format string, v ...interface{}) { |
| 261 | if LevelInformational > bl.level { | ||
| 262 | return | ||
| 263 | } | ||
| 246 | msg := fmt.Sprintf("[I] "+format, v...) | 264 | msg := fmt.Sprintf("[I] "+format, v...) |
| 247 | bl.writerMsg(LevelInformational, msg) | 265 | bl.writerMsg(LevelInformational, msg) |
| 248 | } | 266 | } |
| 249 | 267 | ||
| 250 | // Log DEBUG level message. | 268 | // Log DEBUG level message. |
| 251 | func (bl *BeeLogger) Debug(format string, v ...interface{}) { | 269 | func (bl *BeeLogger) Debug(format string, v ...interface{}) { |
| 270 | if LevelDebug > bl.level { | ||
| 271 | return | ||
| 272 | } | ||
| 252 | msg := fmt.Sprintf("[D] "+format, v...) | 273 | msg := fmt.Sprintf("[D] "+format, v...) |
| 253 | bl.writerMsg(LevelDebug, msg) | 274 | bl.writerMsg(LevelDebug, msg) |
| 254 | } | 275 | } | ... | ... |
-
Please register or sign in to post a comment