diff options
Diffstat (limited to 'pkg/tracing')
-rw-r--r-- | pkg/tracing/tracing.go | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/pkg/tracing/tracing.go b/pkg/tracing/tracing.go new file mode 100644 index 000000000..cae76dee8 --- /dev/null +++ b/pkg/tracing/tracing.go @@ -0,0 +1,28 @@ +package tracing + +import ( + "fmt" + "io" + + opentracing "github.com/opentracing/opentracing-go" + jaeger "github.com/uber/jaeger-client-go" + config "github.com/uber/jaeger-client-go/config" +) + +// Init returns an instance of Jaeger Tracer that samples 100% of traces and logs all spans to stdout. +func Init(service string) (opentracing.Tracer, io.Closer) { + cfg := &config.Configuration{ + Sampler: &config.SamplerConfig{ + Type: "const", + Param: 1, + }, + Reporter: &config.ReporterConfig{ + LogSpans: true, + }, + } + tracer, closer, err := cfg.New(service, config.Logger(jaeger.StdLogger)) + if err != nil { + panic(fmt.Sprintf("ERROR: cannot init Jaeger: %v\n", err)) + } + return tracer, closer +} |