Skip to content

Instantly share code, notes, and snippets.

@rafaeljesus
Created August 18, 2018 15:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rafaeljesus/36e557f92e765b1c53e4e9d72d4403b8 to your computer and use it in GitHub Desktop.
Save rafaeljesus/36e557f92e765b1c53e4e9d72d4403b8 to your computer and use it in GitHub Desktop.
Prometheus metrics jaeger
package tracer
import (
"io"
opentracing "github.com/opentracing/opentracing-go"
"github.com/prometheus/client_golang/prometheus"
jaegercfg "github.com/uber/jaeger-client-go/config"
"github.com/uber/jaeger-client-go/rpcmetrics"
jprom "github.com/uber/jaeger-lib/metrics/prometheus"
)
func New(registry prometheus.Registerer) (opentracing.Tracer, io.Closer, error) {
cfg, err := jaegercfg.FromEnv()
if err != nil {
return nil, nil, err
}
metrics := jprom.New(jprom.WithRegisterer(registry)).Namespace("my_service_tracing", nil)
return cfg.New("my-service",
jaegercfg.Metrics(metrics),
jaegercfg.Observer(rpcmetrics.NewObserver(metrics, rpcmetrics.DefaultNameNormalizer)),
)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment