update code to use newer otel api

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
This commit is contained in:
Davanum Srinivas 2022-09-17 14:27:06 -04:00
parent 5be80c05c4
commit 3eaca7cf51
No known key found for this signature in database
GPG Key ID: 80D83A796103BF59
4 changed files with 14 additions and 16 deletions

View File

@ -39,9 +39,9 @@ import (
"k8s.io/mount-utils" "k8s.io/mount-utils"
cadvisorapi "github.com/google/cadvisor/info/v1" cadvisorapi "github.com/google/cadvisor/info/v1"
"go.opentelemetry.io/otel/exporters/otlp/otlpgrpc" "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
otelsdkresource "go.opentelemetry.io/otel/sdk/resource" otelsdkresource "go.opentelemetry.io/otel/sdk/resource"
"go.opentelemetry.io/otel/semconv" "go.opentelemetry.io/otel/semconv/v1.10.0"
oteltrace "go.opentelemetry.io/otel/trace" oteltrace "go.opentelemetry.io/otel/trace"
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource" "k8s.io/apimachinery/pkg/api/resource"
@ -1281,7 +1281,7 @@ func newTracerProvider(s *options.KubeletServer) (oteltrace.TracerProvider, erro
semconv.HostNameKey.String(hostname), semconv.HostNameKey.String(hostname),
), ),
} }
tp, err := tracing.NewProvider(context.Background(), s.KubeletConfiguration.Tracing, []otlpgrpc.Option{}, resourceOpts) tp, err := tracing.NewProvider(context.Background(), s.KubeletConfiguration.Tracing, []otlptracegrpc.Option{}, resourceOpts)
if err != nil { if err != nil {
return nil, fmt.Errorf("could not configure tracer provider: %v", err) return nil, fmt.Errorf("could not configure tracer provider: %v", err)
} }

View File

@ -23,9 +23,9 @@ import (
"net" "net"
"github.com/spf13/pflag" "github.com/spf13/pflag"
"go.opentelemetry.io/otel/exporters/otlp/otlpgrpc" "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
"go.opentelemetry.io/otel/sdk/resource" "go.opentelemetry.io/otel/sdk/resource"
"go.opentelemetry.io/otel/semconv" "go.opentelemetry.io/otel/semconv/v1.10.0"
"google.golang.org/grpc" "google.golang.org/grpc"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
@ -93,7 +93,7 @@ func (o *TracingOptions) ApplyTo(es *egressselector.EgressSelector, c *server.Co
return fmt.Errorf("failed to validate tracing configuration: %v", errs.ToAggregate()) return fmt.Errorf("failed to validate tracing configuration: %v", errs.ToAggregate())
} }
opts := []otlpgrpc.Option{} opts := []otlptracegrpc.Option{}
if es != nil { if es != nil {
// Only use the egressselector dialer if egressselector is enabled. // Only use the egressselector dialer if egressselector is enabled.
// Endpoint is on the "ControlPlane" network // Endpoint is on the "ControlPlane" network
@ -105,7 +105,7 @@ func (o *TracingOptions) ApplyTo(es *egressselector.EgressSelector, c *server.Co
otelDialer := func(ctx context.Context, addr string) (net.Conn, error) { otelDialer := func(ctx context.Context, addr string) (net.Conn, error) {
return egressDialer(ctx, "tcp", addr) return egressDialer(ctx, "tcp", addr)
} }
opts = append(opts, otlpgrpc.WithDialOption(grpc.WithContextDialer(otelDialer))) opts = append(opts, otlptracegrpc.WithDialOption(grpc.WithContextDialer(otelDialer)))
} }
resourceOpts := []resource.Option{ resourceOpts := []resource.Option{

View File

@ -21,8 +21,7 @@ import (
"net/http" "net/http"
"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp" "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
"go.opentelemetry.io/otel/exporters/otlp" "go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
"go.opentelemetry.io/otel/exporters/otlp/otlpgrpc"
"go.opentelemetry.io/otel/propagation" "go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/sdk/resource" "go.opentelemetry.io/otel/sdk/resource"
sdktrace "go.opentelemetry.io/otel/sdk/trace" sdktrace "go.opentelemetry.io/otel/sdk/trace"
@ -35,19 +34,18 @@ import (
// NewProvider creates a TracerProvider in a component, and enforces recommended tracing behavior // NewProvider creates a TracerProvider in a component, and enforces recommended tracing behavior
func NewProvider(ctx context.Context, func NewProvider(ctx context.Context,
tracingConfig *v1.TracingConfiguration, tracingConfig *v1.TracingConfiguration,
addedOpts []otlpgrpc.Option, addedOpts []otlptracegrpc.Option,
resourceOpts []resource.Option, resourceOpts []resource.Option,
) (oteltrace.TracerProvider, error) { ) (oteltrace.TracerProvider, error) {
if tracingConfig == nil { if tracingConfig == nil {
return oteltrace.NewNoopTracerProvider(), nil return oteltrace.NewNoopTracerProvider(), nil
} }
opts := append([]otlpgrpc.Option{}, addedOpts...) opts := append([]otlptracegrpc.Option{}, addedOpts...)
if tracingConfig.Endpoint != nil { if tracingConfig.Endpoint != nil {
opts = append(opts, otlpgrpc.WithEndpoint(*tracingConfig.Endpoint)) opts = append(opts, otlptracegrpc.WithEndpoint(*tracingConfig.Endpoint))
} }
opts = append(opts, otlpgrpc.WithInsecure()) opts = append(opts, otlptracegrpc.WithInsecure())
driver := otlpgrpc.NewDriver(opts...) exporter, err := otlptracegrpc.New(ctx, opts...)
exporter, err := otlp.NewExporter(ctx, driver)
if err != nil { if err != nil {
return nil, err return nil, err
} }

View File

@ -107,7 +107,7 @@ endpoint: %s`, listener.Addr().String())), os.FileMode(0755)); err != nil {
func containsNodeListSpan(req *traceservice.ExportTraceServiceRequest) bool { func containsNodeListSpan(req *traceservice.ExportTraceServiceRequest) bool {
for _, resourceSpans := range req.GetResourceSpans() { for _, resourceSpans := range req.GetResourceSpans() {
for _, instrumentationSpans := range resourceSpans.GetInstrumentationLibrarySpans() { for _, instrumentationSpans := range resourceSpans.GetScopeSpans() {
for _, span := range instrumentationSpans.GetSpans() { for _, span := range instrumentationSpans.GetSpans() {
if span.Name != "KubernetesAPI" { if span.Name != "KubernetesAPI" {
continue continue