From 220626ec5efaf0a1b5e56063a5354e12ce390422 Mon Sep 17 00:00:00 2001 From: Laura Brehm Date: Thu, 19 Jan 2023 14:20:11 +0100 Subject: [PATCH] Only account running containers for logs Signed-off-by: Laura Brehm --- pkg/compose/containers.go | 6 ++++++ pkg/compose/logs.go | 1 + 2 files changed, 7 insertions(+) diff --git a/pkg/compose/containers.go b/pkg/compose/containers.go index 3cbd1c13d..af05915db 100644 --- a/pkg/compose/containers.go +++ b/pkg/compose/containers.go @@ -99,6 +99,12 @@ func isService(services ...string) containerPredicate { } } +func isRunning() containerPredicate { + return func(c moby.Container) bool { + return c.State == "running" + } +} + func isNotService(services ...string) containerPredicate { return func(c moby.Container) bool { service := c.Labels[api.ServiceLabel] diff --git a/pkg/compose/logs.go b/pkg/compose/logs.go index 7fdf15e32..18d0e2114 100644 --- a/pkg/compose/logs.go +++ b/pkg/compose/logs.go @@ -72,6 +72,7 @@ func (s *composeService) Logs( } if options.Follow { + containers = containers.filter(isRunning()) printer := newLogPrinter(consumer) eg.Go(func() error { _, err := printer.Run(false, "", nil)