func initTracer()

in apps/simple-frontend-otel/main.go [49:83]


func initTracer() {

	// Create new OTLP Exporter struct
	driver := otlpgrpc.NewDriver(
		otlpgrpc.WithInsecure(),
		otlpgrpc.WithEndpoint("otlp-service.adot-col:55680"),
	)

	ctx := context.Background()
	exporter, err := otlp.NewExporter(ctx, driver)
	if err != nil {
		// Handle error here...
	}

	// A custom ID Generator to generate traceIDs that conform to
	// AWS X-Ray traceID format
	idg := xray.NewIDGenerator()

	// Detector
	// eksResourceDetector := eks.NewResourceDetector()
	// resource, _ := eksResourceDetector.Detect(ctx)
	rsc := resource.NewWithAttributes(semconv.ServiceNameKey.String("simple-frontend-otel"))

	// Create a new TraceProvider struct passing in the config, the exporter
	// and the ID Generator we want to use for our tracing
	tp := sdktrace.NewTracerProvider(
		sdktrace.WithSyncer(exporter),
		sdktrace.WithResource(rsc),
		sdktrace.WithIDGenerator(idg),
	)

	// Set the traceprovider and the propagator we want to use
	otel.SetTracerProvider(tp)
	otel.SetTextMapPropagator(xray.Propagator{})
}