service/service.go
func New(h http.Handler, onPanic recovery.PanicHandler) Service {
	l := logging.Wrap(
		recovery.Wrap(
			debug.Wrap(
				metrics.Wrap(
					h,
				),
			),
			onPanic,
		),
		os.Stdout,
	)
	l.Start()
	return Service{h: l}
}
func New(h http.Handler, onPanic recovery.PanicHandler) Service {
	l := logging.Wrap(
		recovery.Wrap(
			debug.Wrap(
				metrics.Wrap(
					h,
				),
			),
			onPanic,
		),
		os.Stdout,
	)
	l.Start()
	return Service{h: l}
}
func New ( h http . Handler , onPanic recovery . PanicHandler ) Service { l := logging . Wrap ( recovery . Wrap ( debug . Wrap ( metrics . Wrap ( h , ) , ) , onPanic , ) , os . Stdout , ) l . Start ( ) return Service { h : l } }
// New returns a new service-ready handler given an application handler.
//
// This stack application-level metrics, debug endpoints, panic recovery, and
// request logging, in that order.
New returns a new service - ready handler given an application handler . This stack application - level metrics debug endpoints panic recovery and request logging in that order .