54ae4bc2 by astaxie

Merge pull request #1094 from toalexjin/check_log_level

For enhancing performance, check log level before fmt.Sprintf()
2 parents 162bee1b d3cdebbe
...@@ -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 }
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!