Skip to content

Commit

Permalink
[hotROD] Replace gRPC instrumentation with OTEL (#4558)
Browse files Browse the repository at this point in the history
  • Loading branch information
afzal442 committed Jul 2, 2023
1 parent 050ba81 commit 321357a
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 10 deletions.
4 changes: 2 additions & 2 deletions examples/hotrod/pkg/tracing/init.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,11 @@ import (
var once sync.Once

// InitOTEL initializes OpenTelemetry SDK.
func InitOTEL(serviceName string, exporterType string, metricsFactory metrics.Factory, logger log.Factory) trace.Tracer {
func InitOTEL(serviceName string, exporterType string, metricsFactory metrics.Factory, logger log.Factory) trace.TracerProvider {
_, oteltp := initBOTH(serviceName, exporterType, metricsFactory, logger)

logger.Bg().Debug("Created OTEL tracer", zap.String("service-name", serviceName))
return oteltp.Tracer(serviceName)
return oteltp
}

// Init returns OTel-OpenTracing Bridge.
Expand Down
3 changes: 2 additions & 1 deletion examples/hotrod/services/driver/redis.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,9 @@ type Redis struct {
}

func newRedis(otelExporter string, metricsFactory metrics.Factory, logger log.Factory) *Redis {
tp := tracing.InitOTEL("redis-manual", otelExporter, metricsFactory, logger)
return &Redis{
tracer: tracing.InitOTEL("redis-manual", otelExporter, metricsFactory, logger),
tracer: tp.Tracer("redis-manual"),
logger: logger,
}
}
Expand Down
11 changes: 4 additions & 7 deletions examples/hotrod/services/driver/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@ import (
"context"
"net"

otgrpc "github.com/opentracing-contrib/go-grpc"
"github.com/opentracing/opentracing-go"
"go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc"
"go.uber.org/zap"
"google.golang.org/grpc"

Expand All @@ -32,7 +31,6 @@ import (
// Server implements jaeger-demo-frontend service
type Server struct {
hostPort string
tracer opentracing.Tracer
logger log.Factory
redis *Redis
server *grpc.Server
Expand All @@ -42,14 +40,13 @@ var _ DriverServiceServer = (*Server)(nil)

// NewServer creates a new driver.Server
func NewServer(hostPort string, otelExporter string, metricsFactory metrics.Factory, logger log.Factory) *Server {
tracer := tracing.Init("driver", otelExporter, metricsFactory, logger)
tracerProvider := tracing.InitOTEL("driver", otelExporter, metricsFactory, logger)
server := grpc.NewServer(
grpc.UnaryInterceptor(otgrpc.OpenTracingServerInterceptor(tracer)),
grpc.StreamInterceptor(otgrpc.OpenTracingStreamServerInterceptor(tracer)),
grpc.UnaryInterceptor(otelgrpc.UnaryServerInterceptor(otelgrpc.WithTracerProvider(tracerProvider))),
grpc.StreamInterceptor(otelgrpc.StreamServerInterceptor(otelgrpc.WithTracerProvider(tracerProvider))),
)
return &Server{
hostPort: hostPort,
tracer: tracer,
logger: logger,
server: server,
redis: newRedis(otelExporter, metricsFactory, logger),
Expand Down

0 comments on commit 321357a

Please sign in to comment.