From ddb0189b900f3c896cc5d64e7992de526351334e Mon Sep 17 00:00:00 2001 From: Brian Tiger Chow Date: Sun, 16 Nov 2014 09:49:38 -0800 Subject: [PATCH] refactor(eventlog) use polite formatter as a direct dependency License: MIT Signed-off-by: Brian Tiger Chow --- util/eventlog/option.go | 2 +- util/eventlog/polite_json_formatter.go | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 util/eventlog/polite_json_formatter.go diff --git a/util/eventlog/option.go b/util/eventlog/option.go index 4fe3daa59..7ca68558f 100644 --- a/util/eventlog/option.go +++ b/util/eventlog/option.go @@ -17,7 +17,7 @@ func Configure(options ...Option) { // LdJSONFormatter formats the event log as line-delimited JSON var LdJSONFormatter = func() { - logrus.SetFormatter(&logrus.PoliteJSONFormatter{}) + logrus.SetFormatter(&PoliteJSONFormatter{}) } var TextFormatter = func() { diff --git a/util/eventlog/polite_json_formatter.go b/util/eventlog/polite_json_formatter.go new file mode 100644 index 000000000..509f0871b --- /dev/null +++ b/util/eventlog/polite_json_formatter.go @@ -0,0 +1,18 @@ +package eventlog + +import ( + "encoding/json" + "fmt" + + "github.com/jbenet/go-ipfs/Godeps/_workspace/src/github.com/maybebtc/logrus" +) + +type PoliteJSONFormatter struct{} + +func (f *PoliteJSONFormatter) Format(entry *logrus.Entry) ([]byte, error) { + serialized, err := json.Marshal(entry.Data) + if err != nil { + return nil, fmt.Errorf("Failed to marshal fields to JSON, %v", err) + } + return append(serialized, '\n'), nil +}