File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -299,7 +299,9 @@ Workers support pluggable metrics via the `Metrics` interface. Pass metrics at t
299299### Built-in Prometheus metrics
300300
301301``` go
302- workers.Run (ctx, myWorkers, workers.WithMetrics (workers.NewPrometheusMetrics (" myapp" )))
302+ if err := workers.Run (ctx, myWorkers, workers.WithMetrics (workers.NewPrometheusMetrics (" myapp" ))); err != nil {
303+ log.Fatal (err)
304+ }
303305```
304306
305307This registers the following metrics (auto-registered via ` promauto ` ):
@@ -319,7 +321,7 @@ This registers the following metrics (auto-registered via `promauto`):
319321### No metrics (default)
320322
321323``` go
322- workers.Run (ctx, myWorkers) // uses BaseMetrics (no-op) — zero overhead
324+ _ = workers.Run (ctx, myWorkers) // uses BaseMetrics{} (no-op) — zero overhead
323325```
324326
325327### Custom metrics
@@ -346,10 +348,15 @@ func (m *myDatadogMetrics) WorkerFailed(name string, err error) {
346348
347349### Per-worker override
348350
349- Children inherit metrics from the root by default. Override for specific workers:
351+ Children inherit metrics from the root by default. Override for specific workers via the builder. Use ` WorkerContext.Add ` inside a manager worker :
350352
351353``` go
352- ctx.Add (workers.NewWorker (" special" , fn).WithMetrics (customMetrics))
354+ workers.NewWorker (" manager" , func (ctx workers.WorkerContext ) error {
355+ // This child uses custom metrics instead of the inherited root metrics.
356+ ctx.Add (workers.NewWorker (" special" , fn).WithMetrics (customMetrics))
357+ <- ctx.Done ()
358+ return ctx.Err ()
359+ })
353360```
354361
355362## ColdBrew Integration (Phase 2)
You can’t perform that action at this time.
0 commit comments