don't block events loop collecting logs

Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
This commit is contained in:
Nicolas De Loof 2023-04-24 11:48:21 +02:00 committed by Nicolas De loof
parent eb0632b1d8
commit dec608f3cd

View File

@ -96,18 +96,21 @@ func (s *composeService) Logs(
ID: c.ID,
Service: c.Labels[api.ServiceLabel],
})
err := s.logContainers(ctx, consumer, c, api.LogOptions{
Follow: options.Follow,
Since: t.Format(time.RFC3339Nano),
Until: options.Until,
Tail: options.Tail,
Timestamps: options.Timestamps,
eg.Go(func() error {
err := s.logContainers(ctx, consumer, c, api.LogOptions{
Follow: options.Follow,
Since: t.Format(time.RFC3339Nano),
Until: options.Until,
Tail: options.Tail,
Timestamps: options.Timestamps,
})
if _, ok := err.(errdefs.ErrNotImplemented); ok {
// ignore
return nil
}
return err
})
if _, ok := err.(errdefs.ErrNotImplemented); ok {
// ignore
return nil
}
return err
return nil
}, func(c types.Container, t time.Time) error {
printer.HandleEvent(api.ContainerEvent{
Type: api.ContainerEventAttach,