From b6cf00917cbbfecb182579391f4806c9869d76d8 Mon Sep 17 00:00:00 2001 From: Gregory Haynes Date: Mon, 20 Aug 2018 22:12:39 +0000 Subject: [PATCH] Log dispatch errors in stub bus If we encounter an error when dispatching an event in the stub bus we silently ignore it. --- pkg/buses/stub/bus.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkg/buses/stub/bus.go b/pkg/buses/stub/bus.go index 6beb5361af1..f45b9fafb00 100644 --- a/pkg/buses/stub/bus.go +++ b/pkg/buses/stub/bus.go @@ -82,6 +82,7 @@ func (b *StubBus) addChannel(channelRef buses.ChannelReference, parameters buses b.channels[channelRef] = &stubChannel{ parameters: parameters, subscriptions: make(map[buses.SubscriptionReference]*stubSubscription), + logger: b.logger, } } } @@ -98,11 +99,18 @@ type stubChannel struct { channelRef buses.ChannelReference parameters buses.ResolvedParameters subscriptions map[buses.SubscriptionReference]*stubSubscription + + logger *zap.SugaredLogger } func (c *stubChannel) receiveMessage(message *buses.Message) { for _, stubSubscription := range c.subscriptions { - go stubSubscription.dispatchMessage(message) + go func() { + err := stubSubscription.dispatchMessage(message) + if err != nil { + c.logger.Warnf("Failed to dispatch message: %v", err) + } + }() } }