@@ -5,13 +5,14 @@ package gosnowflake
5
5
import (
6
6
"context"
7
7
"fmt"
8
- rlog "github.com/sirupsen/logrus"
9
8
"io"
10
9
"os"
11
10
"path"
12
11
"runtime"
13
12
"strings"
14
13
"time"
14
+
15
+ rlog "github.com/sirupsen/logrus"
15
16
)
16
17
17
18
// SFSessionIDKey is context key of session id
@@ -61,6 +62,16 @@ type defaultLogger struct {
61
62
file * os.File
62
63
}
63
64
65
+ type sfTextFormatter struct {
66
+ rlog.TextFormatter
67
+ }
68
+
69
+ func (f * sfTextFormatter ) Format (entry * rlog.Entry ) ([]byte , error ) {
70
+ // mask all secrets before calling the default Format method
71
+ entry .Message = maskSecrets (entry .Message )
72
+ return f .TextFormatter .Format (entry )
73
+ }
74
+
64
75
// SetLogLevel set logging level for calling defaultLogger
65
76
func (log * defaultLogger ) SetLogLevel (level string ) error {
66
77
newEnabled := strings .ToUpper (level ) != "OFF"
@@ -116,9 +127,10 @@ func (log *defaultLogger) WithContext(ctx context.Context) *rlog.Entry {
116
127
// CreateDefaultLogger return a new instance of SFLogger with default config
117
128
func CreateDefaultLogger () SFLogger {
118
129
var rLogger = rlog .New ()
119
- var formatter = rlog.TextFormatter {CallerPrettyfier : SFCallerPrettyfier }
130
+ var formatter = new (sfTextFormatter )
131
+ formatter .CallerPrettyfier = SFCallerPrettyfier
132
+ rLogger .SetFormatter (formatter )
120
133
rLogger .SetReportCaller (true )
121
- rLogger .SetFormatter (& formatter )
122
134
var ret = defaultLogger {inner : rLogger , enabled : true }
123
135
return & ret //(&ret).(*SFLogger)
124
136
}
0 commit comments