func (c *Controller) GetByFoo(foo string, span *Span) string {
	defer span.Finish()
	r := mux.NewRouter()
	r.HandleFunc("/formatter/{name}", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
		w.WriteHeader(200)
		w.Write([]byte("hi"))
	}))
	server := httptest.NewServer(r)
	defer server.Close()
	req := new(http.Request)
	req, err := http.NewRequest("GET", server.URL+"/formatter/bar", nil)
	if err != nil {
	}
	newSpan := span.Inject(context.Background(), "GET",
		server.URL+"/formatter/bar", req)
	var l Logger
	l.Error("foobar")
	l.Infof("foobar")
	newSpan.LogFields(
		log.String("event", "string-format"),
		log.String("value", "helloStr"),
	)
	return "bar"
}
Get GET /foo/{foo}
package jaeger
import (
	"context"
	"fmt"
	"github.com/gorilla/mux"
	"github.com/opentracing/opentracing-go/log"
	"github.com/stretchr/testify/assert"
	"github.com/uber/jaeger-client-go/config"
	"hidevops.io/hiboot/pkg/app"
	"hidevops.io/hiboot/pkg/app/web"
	"hidevops.io/hiboot/pkg/at"
	"net/http"
	"net/http/httptest"
	"reflect"
	"testing"
	"time"
)
func TestConfiguration(t *testing.T) {
	c := newConfiguration(&properties{
		Config:                  config.Configuration{
			ServiceName:         "test",
			Disabled:            false,
			RPCMetrics:          false,
			Tags:                nil,
			Sampler:             nil,
			Reporter:            nil,
			Headers:             nil,
			BaggageRestrictions: nil,
			Throttler:           nil,
		},
	})
	assert.NotEqual(t, nil, c)
	tracer := c.Tracer()
	assert.NotEqual(t, reflect.Struct, tracer)
}
type Controller struct {
	at.RestController
}
func newController() *Controller {
	return &Controller{
	}
}