logging/logging.go
func Wrap(h http.Handler, w io.Writer) *LoggingHandler {
	return &LoggingHandler{
		clock:   time.Now,
		w:       w,
		handler: h,
		buffer:  make(chan string, 1000),
		quit:    make(chan struct{}),
	}
}
func Wrap(h http.Handler, w io.Writer) *LoggingHandler {
	return &LoggingHandler{
		clock:   time.Now,
		w:       w,
		handler: h,
		buffer:  make(chan string, 1000),
		quit:    make(chan struct{}),
	}
}
// Wrap returns the underlying handler, wrapped in a LoggingHandler which will
// write to the given Writer. N.B.: You must call Start() on the result before
// using it.