fix(eventbus): attach logger to bus context so handlers get a working logger
The event bus created its context from context.Background() without attaching the zerowrap logger. Any handler using zerowrap.FromCtx(ctx) got a no-op logger, silently swallowing all log output. Now the bus injects its logger via zerowrap.WithCtx so handler logs are visible.
- commit
- 83b82b46fd56b92f1eb482ecda76127550809040
- author
- brice · · 2026-03-19 08:51 UTC
- parent
- 2b4c159
- signature
- unsigned
2 files · +10 -2
M internal/adapters/out/eventbus/inmemory.go +1 -1
| @@ -44,7 +44,7 @@ func NewInMemory(bufferSize int, log zerowrap.Logger) *InMemory { | |||
| 44 | 44 | bufferSize = 100 | |
| 45 | 45 | } | |
| 46 | 46 | ||
| 47 | - | ctx, cancel := context.WithCancel(context.Background()) | |
| 47 | + | ctx, cancel := context.WithCancel(zerowrap.WithCtx(context.Background(), log)) | |
| 48 | 48 | ||
| 49 | 49 | return &InMemory{ | |
| 50 | 50 | handlers: make([]out.EventHandler, 0), | |
| @@ -44,7 +44,7 @@ func NewInMemory(bufferSize int, log zerowrap.Logger) *InMemory { | |||||
| 44 | bufferSize = 100 | 44 | bufferSize = 100 | ||
| 45 | } | 45 | } | ||
| 46 | 46 | ||||
| 47 | - | ctx, cancel := context.WithCancel(context.Background()) | 47 | + | ctx, cancel := context.WithCancel(zerowrap.WithCtx(context.Background(), log)) |
| 48 | 48 | ||||
| 49 | return &InMemory{ | 49 | return &InMemory{ | ||
| 50 | handlers: make([]out.EventHandler, 0), | 50 | handlers: make([]out.EventHandler, 0), | ||
M internal/usecase/auto/dispatcher.go +9 -1
| @@ -48,7 +48,15 @@ func (d *ImagePushDispatcher) Handle(ctx context.Context, event domain.Event) er | |||
| 48 | 48 | return d.routeHandler.Handle(ctx, event) | |
| 49 | 49 | } | |
| 50 | 50 | ||
| 51 | - | if d.config.IsPreviewEnabled() && d.matchesTagPatterns(payload.Reference) { | |
| 51 | + | previewEnabled := d.config.IsPreviewEnabled() | |
| 52 | + | tagMatch := d.matchesTagPatterns(payload.Reference) | |
| 53 | + | log.Debug(). | |
| 54 | + | Bool("preview_enabled", previewEnabled). | |
| 55 | + | Bool("tag_match", tagMatch). | |
| 56 | + | Str("reference", payload.Reference). | |
| 57 | + | Msg("dispatcher classifying push event") | |
| 58 | + | ||
| 59 | + | if previewEnabled && tagMatch { | |
| 52 | 60 | return d.previewHandler.Handle(ctx, event) | |
| 53 | 61 | } | |
| 54 | 62 | return d.routeHandler.Handle(ctx, event) | |
| @@ -48,7 +48,15 @@ func (d *ImagePushDispatcher) Handle(ctx context.Context, event domain.Event) er | |||||
| 48 | return d.routeHandler.Handle(ctx, event) | 48 | return d.routeHandler.Handle(ctx, event) | ||
| 49 | } | 49 | } | ||
| 50 | 50 | ||||
| 51 | - | if d.config.IsPreviewEnabled() && d.matchesTagPatterns(payload.Reference) { | 51 | + | previewEnabled := d.config.IsPreviewEnabled() |
| 52 | + | tagMatch := d.matchesTagPatterns(payload.Reference) | |||
| 53 | + | log.Debug(). | |||
| 54 | + | Bool("preview_enabled", previewEnabled). | |||
| 55 | + | Bool("tag_match", tagMatch). | |||
| 56 | + | Str("reference", payload.Reference). | |||
| 57 | + | Msg("dispatcher classifying push event") | |||
| 58 | + | ||||
| 59 | + | if previewEnabled && tagMatch { | |||
| 52 | return d.previewHandler.Handle(ctx, event) | 60 | return d.previewHandler.Handle(ctx, event) | ||
| 53 | } | 61 | } | ||
| 54 | return d.routeHandler.Handle(ctx, event) | 62 | return d.routeHandler.Handle(ctx, event) | ||