mirror of
				https://github.com/containers/podman.git
				synced 2025-11-04 08:56:05 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
		
			692 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			692 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package tracing
 | 
						|
 | 
						|
import (
 | 
						|
	"fmt"
 | 
						|
	"io"
 | 
						|
 | 
						|
	"github.com/opentracing/opentracing-go"
 | 
						|
	"github.com/uber/jaeger-client-go"
 | 
						|
	"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{
 | 
						|
		ServiceName: service,
 | 
						|
		Sampler: &config.SamplerConfig{
 | 
						|
			Type:  "const",
 | 
						|
			Param: 1,
 | 
						|
		},
 | 
						|
		Reporter: &config.ReporterConfig{
 | 
						|
			LogSpans: true,
 | 
						|
		},
 | 
						|
	}
 | 
						|
	tracer, closer, err := cfg.NewTracer(config.Logger(jaeger.StdLogger))
 | 
						|
	if err != nil {
 | 
						|
		panic(fmt.Sprintf("ERROR: cannot init Jaeger: %v\n", err))
 | 
						|
	}
 | 
						|
	return tracer, closer
 | 
						|
}
 |