code: func NewHandlerWrapper(ot opentracing.Tracer) server.HandlerWrapper {
  	return func(h server.HandlerFunc) server.HandlerFunc {
  		return func(ctx context.Context, req server.Request, rsp interface{}) error {
  			if ot == nil {
  				ot = opentracing.GlobalTracer()
  			}
  			name := fmt.Sprintf("%s.%s", req.Service(), req.Endpoint())
  			ctx, span, err := StartSpanFromContext(ctx, ot, name)
  			if err != nil {
  				return err
  			}
  			defer span.Finish()
  			return h(ctx, req, rsp)
  		}
  	}
  }
docs: // NewHandlerWrapper accepts an opentracing Tracer and returns a Handler Wrapper