debug: Auto-shorten IDs passed as parameters

This commit is contained in:
Alexander Neumann 2018-01-25 20:49:26 +01:00
parent d6212ee2d9
commit ed99f53786
2 changed files with 14 additions and 3 deletions

View file

@ -180,6 +180,16 @@ func Log(f string, args ...interface{}) {
f += "\n" f += "\n"
} }
type Shortener interface {
Str() string
}
for i, item := range args {
if shortener, ok := item.(Shortener); ok {
args[i] = shortener.Str()
}
}
pos := fmt.Sprintf("%s/%s:%d", dir, file, line) pos := fmt.Sprintf("%s/%s:%d", dir, file, line)
formatString := fmt.Sprintf("%s\t%s\t%d\t%s", pos, fn, goroutine, f) formatString := fmt.Sprintf("%s\t%s\t%d\t%s", pos, fn, goroutine, f)
@ -192,7 +202,8 @@ func Log(f string, args ...interface{}) {
opts.logger.Printf(formatString, args...) opts.logger.Printf(formatString, args...)
} }
if checkFilter(opts.files, fmt.Sprintf("%s/%s:%d", dir, file, line)) { filename := fmt.Sprintf("%s/%s:%d", dir, file, line)
if checkFilter(opts.files, filename) {
dbgprint() dbgprint()
return return
} }

View file

@ -19,7 +19,7 @@ func BenchmarkLogIDStr(b *testing.B) {
b.ResetTimer() b.ResetTimer()
for i := 0; i < b.N; i++ { for i := 0; i < b.N; i++ {
debug.Log("id: %v", id.Str()) debug.Log("id: %v", id)
} }
} }
@ -29,6 +29,6 @@ func BenchmarkLogIDString(b *testing.B) {
b.ResetTimer() b.ResetTimer()
for i := 0; i < b.N; i++ { for i := 0; i < b.N; i++ {
debug.Log("id: %v", id.String()) debug.Log("id: %s", id)
} }
} }