You've already forked opentelemetry-go
mirror of
https://github.com/open-telemetry/opentelemetry-go.git
synced 2025-09-16 09:26:25 +02:00
WIP: Named tracer prototype (#227)
* named tracer prototype * rename Manager to Provider. * fix compile error after merge. * rename Tracer method to GetTracer * provider with options. * update test. * cleanup make circl-ci * remove global config. * some cleanup. * use provider for bridge * update propagation test. * update examples and plugins. * remove GlobalTracer methods. * fix review comments. * some more cleanup. * remove unnecessary getTracer call in benchmark test.
This commit is contained in:
@@ -28,8 +28,6 @@ import (
|
||||
)
|
||||
|
||||
func initTracer() {
|
||||
sdktrace.Register()
|
||||
|
||||
projectID := os.Getenv("PROJECT_ID")
|
||||
|
||||
// Create Stackdriver exporter to be able to retrieve
|
||||
@@ -40,18 +38,22 @@ func initTracer() {
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
if err := exporter.RegisterBatchSpanProcessor(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// For the demonstration, use sdktrace.AlwaysSample sampler to sample all traces.
|
||||
// In a production application, use sdktrace.ProbabilitySampler with a desired probability.
|
||||
sdktrace.ApplyConfig(sdktrace.Config{DefaultSampler: sdktrace.AlwaysSample()})
|
||||
tp, err := sdktrace.NewProvider(sdktrace.WithConfig(sdktrace.Config{DefaultSampler: sdktrace.AlwaysSample()}),
|
||||
sdktrace.WithSyncer(exporter))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
trace.SetGlobalProvider(tp)
|
||||
}
|
||||
|
||||
func main() {
|
||||
initTracer()
|
||||
|
||||
tr := trace.GlobalProvider().GetTracer("stackdriver/example/server")
|
||||
|
||||
helloHandler := func(w http.ResponseWriter, req *http.Request) {
|
||||
attrs, entries, spanCtx := httptrace.Extract(req.Context(), req)
|
||||
|
||||
@@ -59,7 +61,7 @@ func main() {
|
||||
MultiKV: entries,
|
||||
})))
|
||||
|
||||
ctx, span := trace.GlobalTracer().Start(
|
||||
ctx, span := tr.Start(
|
||||
req.Context(),
|
||||
"hello",
|
||||
trace.WithAttributes(attrs...),
|
||||
|
Reference in New Issue
Block a user