ref: pass tracer to plugin factory func (#93701)

* ref: pass tracer to plugin factory func

* fix: add tracer to coreplugin

* test: fix test, generate wire

* test: ignore trace field in loader_test

* ref: pass tracer as dependency, don't store in plugin

* ref: wrap tracer with tracer provider to satisfy WithTracerProvider

* ref: use otel trace.Tracer type for tracer
This commit is contained in:
Syerikjan Kh
2024-10-10 20:30:56 -04:00
committed by GitHub
parent 27c44f4709
commit f8748f0724
13 changed files with 75 additions and 30 deletions
@@ -4,6 +4,7 @@ import (
"context"
"errors"
trace "go.opentelemetry.io/otel/trace"
"google.golang.org/grpc"
"github.com/grafana/grafana-plugin-sdk-go/genproto/pluginv2"
@@ -44,6 +45,7 @@ type ProtoClientOpts struct {
ExecutableArgs []string
Env []string
Logger log.Logger
Tracer trace.Tracer
}
func NewProtoClient(opts ProtoClientOpts) (ProtoClient, error) {
@@ -56,6 +58,7 @@ func NewProtoClient(opts ProtoClientOpts) (ProtoClient, error) {
versionedPlugins: pluginSet,
},
opts.Logger,
opts.Tracer,
func() []string { return opts.Env },
)