...
1
2
3 package testingadapter
4
5 import (
6 "context"
7 "fmt"
8
9 "github.com/jackc/pgx/v5/tracelog"
10 )
11
12
13
14 type TestingLogger interface {
15 Log(args ...any)
16 }
17
18 type Logger struct {
19 l TestingLogger
20 }
21
22 func NewLogger(l TestingLogger) *Logger {
23 return &Logger{l: l}
24 }
25
26 func (l *Logger) Log(ctx context.Context, level tracelog.LogLevel, msg string, data map[string]any) {
27 logArgs := make([]any, 0, 2+len(data))
28 logArgs = append(logArgs, level, msg)
29 for k, v := range data {
30 logArgs = append(logArgs, fmt.Sprintf("%s=%v", k, v))
31 }
32 l.l.Log(logArgs...)
33 }
34
View as plain text