From 693a5300bff2e2fa1f5c109ec5e07c3680650a5d Mon Sep 17 00:00:00 2001 From: Sam Calder-Mason Date: Mon, 17 Jul 2023 15:18:04 +1000 Subject: [PATCH] fix: Flush sinks in grpc services when shutting down (#143) * fix: Flush sinks in grpc services when shutting down * chore: Add log message when stopping module --- pkg/output/stdout/stdout.go | 2 +- pkg/server/service/event-ingester/ingester.go | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/pkg/output/stdout/stdout.go b/pkg/output/stdout/stdout.go index 91430e8a..5f3226bb 100644 --- a/pkg/output/stdout/stdout.go +++ b/pkg/output/stdout/stdout.go @@ -61,7 +61,7 @@ func (h *StdOut) Start(ctx context.Context) error { } func (h *StdOut) Stop(ctx context.Context) error { - return nil + return h.proc.Shutdown(ctx) } func (h *StdOut) HandleNewDecoratedEvent(ctx context.Context, event *xatu.DecoratedEvent) error { diff --git a/pkg/server/service/event-ingester/ingester.go b/pkg/server/service/event-ingester/ingester.go index a7a71e5c..9dcf0591 100644 --- a/pkg/server/service/event-ingester/ingester.go +++ b/pkg/server/service/event-ingester/ingester.go @@ -54,6 +54,12 @@ func (e *Ingester) Start(ctx context.Context, grpcServer *grpc.Server) error { func (e *Ingester) Stop(ctx context.Context) error { e.log.Info("stopping module") + for _, sink := range e.sinks { + if err := sink.Stop(ctx); err != nil { + return err + } + } + return nil }