diff options
Diffstat (limited to 'kube2msb/src/kube2msb/vendor/github.com/Sirupsen/logrus/json_formatter.go')
-rw-r--r-- | kube2msb/src/kube2msb/vendor/github.com/Sirupsen/logrus/json_formatter.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/kube2msb/src/kube2msb/vendor/github.com/Sirupsen/logrus/json_formatter.go b/kube2msb/src/kube2msb/vendor/github.com/Sirupsen/logrus/json_formatter.go new file mode 100644 index 0000000..b09227c --- /dev/null +++ b/kube2msb/src/kube2msb/vendor/github.com/Sirupsen/logrus/json_formatter.go @@ -0,0 +1,26 @@ +package logrus + +import ( + "encoding/json" + "fmt" + "time" +) + +type JSONFormatter struct{} + +func (f *JSONFormatter) Format(entry *Entry) ([]byte, error) { + data := make(Fields, len(entry.Data)+3) + for k, v := range entry.Data { + data[k] = v + } + prefixFieldClashes(data) + data["time"] = entry.Time.Format(time.RFC3339) + data["msg"] = entry.Message + data["level"] = entry.Level.String() + + serialized, err := json.Marshal(data) + if err != nil { + return nil, fmt.Errorf("Failed to marshal fields to JSON, %v", err) + } + return append(serialized, '\n'), nil +} |