From 67be6bbd571b511e3153c12994df627473a511f4 Mon Sep 17 00:00:00 2001 From: Jeromy Date: Wed, 17 Jun 2015 11:05:31 -0700 Subject: [PATCH] skip logs when no writers connected License: MIT Signed-off-by: Jeromy --- thirdparty/eventlog/log.go | 5 +++++ thirdparty/eventlog/writer.go | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/thirdparty/eventlog/log.go b/thirdparty/eventlog/log.go index 6fab7383c..298350aae 100644 --- a/thirdparty/eventlog/log.go +++ b/thirdparty/eventlog/log.go @@ -83,6 +83,11 @@ func (el *eventLogger) EventBegin(ctx context.Context, event string, metadata .. func (el *eventLogger) Event(ctx context.Context, event string, metadata ...Loggable) { + // short circuit if theres nothing to write to + if !WriterGroup.Active() { + return + } + // Collect loggables for later logging var loggables []Loggable diff --git a/thirdparty/eventlog/writer.go b/thirdparty/eventlog/writer.go index 5397fc685..ceab99e6c 100644 --- a/thirdparty/eventlog/writer.go +++ b/thirdparty/eventlog/writer.go @@ -29,3 +29,10 @@ func (mw *MirrorWriter) AddWriter(w io.Writer) { mw.writers = append(mw.writers, w) mw.lk.Unlock() } + +func (mw *MirrorWriter) Active() (active bool) { + mw.lk.Lock() + active = len(mw.writers) > 0 + mw.lk.Unlock() + return +}