diff options
| author | Paul Buetow <paul@buetow.org> | 2026-05-06 14:55:52 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-05-06 14:55:52 +0300 |
| commit | 870d5dc8bead22323d351d009ee23d8c24dd794f (patch) | |
| tree | b4f6d731cf48ee56beae4f7dae39343220e149c6 /cmd | |
| parent | bfe6e791fd959d963d7ff99870ab9ddc8cdc7eb8 (diff) | |
internal/service: log and concurrently process podcast feeds (task 91)
- Add *slog.Logger to podcastService with NewPodcastServiceWithLogger.
- Wire logger from cmd/player main.go.
- Run CheckFeeds concurrently: one goroutine per feed with WaitGroup.
- Add structured logging for start/finish per feed and overall count.
- Log feed failures at Warn level so they are visible but not fatal.
- Ensure nil logger safety with slog.Default fallback.
- Add tests: empty list, concurrent OK, list error, single feed error,
all feeds error.
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/player/main.go | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/cmd/player/main.go b/cmd/player/main.go index 0e96e5f..c07ab93 100644 --- a/cmd/player/main.go +++ b/cmd/player/main.go @@ -96,7 +96,7 @@ func wireDeps(cfg *internal.Config, store repository.Store, logger *slog.Logger, authSvc := service.NewAuthService(store, clk, hasher, sm) helper := service.NewAccessHelper(store) - podcastSvc := service.NewPodcastService(store, clk, cfg.MediaRoot, helper, prober, thumbGen, cfg.PodcastCheckMinutes) + podcastSvc := service.NewPodcastServiceWithLogger(store, clk, cfg.MediaRoot, helper, prober, thumbGen, cfg.PodcastCheckMinutes, logger) gcWorker := service.NewGCWorker(store, clk, cfg.MediaRoot, time.Duration(cfg.GCIntervalMinutes)*time.Minute, logger) |
