code: func handlerWithContext(ctx context.Context, handler func(context.Context, http.ResponseWriter, *http.Request)) http.Handler {
  	return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
  		ctx := dcontext.WithRequest(ctx, r)
  		logger := dcontext.GetRequestLogger(ctx)
  		ctx = dcontext.WithLogger(ctx, logger)
  
  		handler(ctx, w, r)
  	})
  }
docs: // handlerWithContext wraps the given context-aware handler by setting up the
  // request context from a base context.