Skip to content

Commit ad1306c

Browse files
committed
add build tags: log_linenumber
1 parent 37e3ef4 commit ad1306c

File tree

3 files changed

+56
-16
lines changed

3 files changed

+56
-16
lines changed

log/log.go

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -91,22 +91,6 @@ func (logger *Logger) Close() {
9191
logger.baseFile = nil
9292
}
9393

94-
func (logger *Logger) doPrintf(level int, printLevel string, format string, a ...interface{}) {
95-
if level < logger.level {
96-
return
97-
}
98-
if logger.baseLogger == nil {
99-
panic("logger closed")
100-
}
101-
102-
format = printLevel + format
103-
logger.baseLogger.Printf(format, a...)
104-
105-
if level == fatalLevel {
106-
os.Exit(1)
107-
}
108-
}
109-
11094
func (logger *Logger) Debug(format string, a ...interface{}) {
11195
logger.doPrintf(debugLevel, printDebugLevel, format, a...)
11296
}

log/printf.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// +build !log_linenumber
2+
3+
package log
4+
5+
import "os"
6+
7+
func (logger *Logger) doPrintf(level int, printLevel string, format string, a ...interface{}) {
8+
if level < logger.level {
9+
return
10+
}
11+
if logger.baseLogger == nil {
12+
panic("logger closed")
13+
}
14+
15+
format = printLevel + format
16+
logger.baseLogger.Printf(format, a...)
17+
18+
if level == fatalLevel {
19+
os.Exit(1)
20+
}
21+
}

log/printf_linenumber.go

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// +build log_linenumber
2+
3+
package log
4+
5+
import (
6+
"os"
7+
"runtime"
8+
"strconv"
9+
)
10+
11+
func logSite() string {
12+
_, file, line, ok := runtime.Caller(4)
13+
if !ok {
14+
file = "???"
15+
line = 0
16+
}
17+
c := string(file + ":" + strconv.FormatInt(int64(line), 10))
18+
return c
19+
}
20+
21+
func (logger *Logger) doPrintf(level int, printLevel string, format string, a ...interface{}) {
22+
if level < logger.level {
23+
return
24+
}
25+
if logger.baseLogger == nil {
26+
panic("logger closed")
27+
}
28+
29+
format = printLevel + "["+logSite()+"] " + format
30+
logger.baseLogger.Printf(format, a...)
31+
32+
if level == fatalLevel {
33+
os.Exit(1)
34+
}
35+
}

0 commit comments

Comments
 (0)