bump sirupsen/logrus v1.4.1
Full diff: https://github.com/sirupsen/logrus/compare/v1.3.0...v1.4.1 Fixes: - Remove dependency on golang.org/x/crypto - Fix wrong method calls Logger.Print and Logger.Warningln - Update Entry.Logf to not do string formatting unless the log level is enabled - Fix infinite recursion on unknown Level.String() - Fix race condition in getCaller - Fix Entry.WithContext method to return a copy of the initial entry New: - Add DeferExitHandler, similar to RegisterExitHandler but prepending the handler to the list of handlers (semantically like defer) - Add CallerPrettyfier to JSONFormatter and `TextFormatter` - Add Entry.WithContext() and Entry.Context, to set a context on entries to be used e.g. in hooks - Enhance TextFormatter to not print caller information when they are empty Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
		
							
								
								
									
										22
									
								
								vendor/github.com/sirupsen/logrus/json_formatter.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								vendor/github.com/sirupsen/logrus/json_formatter.go
									
									
									
										generated
									
									
										vendored
									
									
								
							| @@ -4,6 +4,7 @@ import ( | ||||
| 	"bytes" | ||||
| 	"encoding/json" | ||||
| 	"fmt" | ||||
| 	"runtime" | ||||
| ) | ||||
|  | ||||
| type fieldKey string | ||||
| @@ -42,6 +43,12 @@ type JSONFormatter struct { | ||||
| 	// } | ||||
| 	FieldMap FieldMap | ||||
|  | ||||
| 	// CallerPrettyfier can be set by the user to modify the content | ||||
| 	// of the function and file keys in the json data when ReportCaller is | ||||
| 	// activated. If any of the returned value is the empty string the | ||||
| 	// corresponding key will be removed from json fields. | ||||
| 	CallerPrettyfier func(*runtime.Frame) (function string, file string) | ||||
|  | ||||
| 	// PrettyPrint will indent all json logs | ||||
| 	PrettyPrint bool | ||||
| } | ||||
| @@ -82,8 +89,17 @@ func (f *JSONFormatter) Format(entry *Entry) ([]byte, error) { | ||||
| 	data[f.FieldMap.resolve(FieldKeyMsg)] = entry.Message | ||||
| 	data[f.FieldMap.resolve(FieldKeyLevel)] = entry.Level.String() | ||||
| 	if entry.HasCaller() { | ||||
| 		data[f.FieldMap.resolve(FieldKeyFunc)] = entry.Caller.Function | ||||
| 		data[f.FieldMap.resolve(FieldKeyFile)] = fmt.Sprintf("%s:%d", entry.Caller.File, entry.Caller.Line) | ||||
| 		funcVal := entry.Caller.Function | ||||
| 		fileVal := fmt.Sprintf("%s:%d", entry.Caller.File, entry.Caller.Line) | ||||
| 		if f.CallerPrettyfier != nil { | ||||
| 			funcVal, fileVal = f.CallerPrettyfier(entry.Caller) | ||||
| 		} | ||||
| 		if funcVal != "" { | ||||
| 			data[f.FieldMap.resolve(FieldKeyFunc)] = funcVal | ||||
| 		} | ||||
| 		if fileVal != "" { | ||||
| 			data[f.FieldMap.resolve(FieldKeyFile)] = fileVal | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	var b *bytes.Buffer | ||||
| @@ -98,7 +114,7 @@ func (f *JSONFormatter) Format(entry *Entry) ([]byte, error) { | ||||
| 		encoder.SetIndent("", "  ") | ||||
| 	} | ||||
| 	if err := encoder.Encode(data); err != nil { | ||||
| 		return nil, fmt.Errorf("Failed to marshal fields to JSON, %v", err) | ||||
| 		return nil, fmt.Errorf("failed to marshal fields to JSON, %v", err) | ||||
| 	} | ||||
|  | ||||
| 	return b.Bytes(), nil | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sebastiaan van Stijn
					Sebastiaan van Stijn