File tree Expand file tree Collapse file tree 2 files changed +36
-10
lines changed Expand file tree Collapse file tree 2 files changed +36
-10
lines changed Original file line number Diff line number Diff line change
1
+ package logging
2
+
3
+ import (
4
+ "bytes"
5
+ "fmt"
6
+
7
+ "github.com/sirupsen/logrus"
8
+ )
9
+
10
+ // TextFormatterWithBinName is a logrus formatter that prefixes the binary name to the log output.
11
+ type TextFormatterWithBinName struct {
12
+ Name string
13
+ TextFormatter logrus.TextFormatter
14
+ }
15
+
16
+ func (formatter * TextFormatterWithBinName ) Format (entry * logrus.Entry ) ([]byte , error ) {
17
+ logTxt , err := formatter .TextFormatter .Format (entry )
18
+ if err != nil {
19
+ return logTxt , err
20
+ }
21
+
22
+ outBuf := & bytes.Buffer {}
23
+ fmt .Fprintf (outBuf , "[%s] " , formatter .Name )
24
+ if _ , err := outBuf .Write (logTxt ); err != nil {
25
+ return logTxt , err
26
+ }
27
+ return outBuf .Bytes (), nil
28
+ }
Original file line number Diff line number Diff line change 1
1
package logging
2
2
3
3
import (
4
- "github.com/sirupsen/logrus"
5
4
"sync"
6
- )
7
5
8
- const loggerNameField = "name"
6
+ "github.com/sirupsen/logrus"
7
+ )
9
8
10
9
var globalLogLevel = logrus .InfoLevel
11
10
var globalLogLevelLock = sync.Mutex {}
@@ -16,15 +15,14 @@ func GetLogger(name string) *logrus.Logger {
16
15
17
16
logger .Level = globalLogLevel
18
17
19
- logger .Formatter = & logrus.TextFormatter {
20
- FullTimestamp : true ,
18
+ logger .Formatter = & TextFormatterWithBinName {
19
+ Name : name ,
20
+ TextFormatter : logrus.TextFormatter {
21
+ FullTimestamp : true ,
22
+ },
21
23
}
22
24
23
- if name != "" {
24
- return logger .WithField (loggerNameField , name ).Logger
25
- } else {
26
- return logger .WithFields (make (logrus.Fields )).Logger
27
- }
25
+ return logger
28
26
}
29
27
30
28
// Set the log level. Note: this ONLY affects loggers created using the GetLogger function AFTER this function has been
You can’t perform that action at this time.
0 commit comments