diff --git a/output.go b/output.go index 06345d1..4830c50 100644 --- a/output.go +++ b/output.go @@ -41,10 +41,14 @@ func (output *Output) Send(entry *Entry) { return } - output.format(entry) + // execute formatter + data := output.format(entry) + + // execute printer + output.Printer.Write(data) } -func (output *Output) format(entry *Entry) { +func (output *Output) format(entry *Entry) []byte { output.formatterLock.Lock() defer output.formatterLock.Unlock() @@ -55,5 +59,8 @@ func (output *Output) format(entry *Entry) { output.Formatter.Process(entry) // finalize formatter - output.Formatter.End(entry) + data := output.Formatter.End(entry) + + // return generated data + return data }