zipkin-go-opentracing

OpenTracing Tracer implementation for Zipkin v1 in Go

Github stars Tracking Chart

zipkin-go-opentracing

Travis CI
GoDoc
Go Report Card
Sourcegraph

OpenTracing bridge for the native Zipkin tracing implementation Zipkin Go.

Notes

This package is a simple bridge to allow OpenTracing API consumers
to use Zipkin as their tracing backend. For details on how to work with spans
and traces we suggest looking at the documentation and README from the
OpenTracing API.

For developers interested in adding Zipkin tracing to their Go services we
suggest looking at Go kit which is an excellent toolkit to
instrument your distributed system with Zipkin and much more with clean
separation of domains like transport, middleware / instrumentation and
business logic.

Examples

Please check the zipkin-go package for information how to set-up the Zipkin Go native tracer. Once set-up you can simple call the Wrap function to create the OpenTracing compatible bridge.

import (
	"github.com/opentracing/opentracing-go"
	"github.com/openzipkin/zipkin-go"
	zipkinhttp "github.com/openzipkin/zipkin-go/reporter/http"
	zipkinot "github.com/openzipkin-contrib/zipkin-go-opentracing"
)

func main() {
	// bootstrap your app...
  
	// zipkin / opentracing specific stuff
	{
		// set up a span reporter
		reporter := zipkinhttp.NewReporter("http://zipkinhost:9411/api/v2/spans")
		defer reporter.Close()
  
		// create our local service endpoint
		endpoint, err := zipkin.NewEndpoint("myService", "myservice.mydomain.com:80")
		if err != nil {
			log.Fatalf("unable to create local endpoint: %+v\n", err)
		}

		// initialize our tracer
		nativeTracer, err := zipkin.NewTracer(reporter, zipkin.WithLocalEndpoint(endpoint))
		if err != nil {
			log.Fatalf("unable to create tracer: %+v\n", err)
		}

		// use zipkin-go-opentracing to wrap our tracer
		tracer := zipkinot.Wrap(nativeTracer)
  
		// optionally set as Global OpenTracing tracer instance
		opentracing.SetGlobalTracer(tracer)
	}
  
	// do other bootstrapping stuff...
}

For more information on zipkin-go-opentracing, please see the documentation at
go doc.

Main metrics

Overview
Name With Owneropenzipkin-contrib/zipkin-go-opentracing
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:Apache License 2.0
所有者活动
Created At2016-05-14 13:34:57
Pushed At2022-10-11 19:02:56
Last Commit At2022-10-11 21:01:14
Release Count19
Last Release Namev0.5.0 (Posted on )
First Release Namev0.1.0 (Posted on )
用户参与
Stargazers Count509
Watchers Count25
Fork Count98
Commits Count237
Has Issues Enabled
Issues Count63
Issue Open Count1
Pull Requests Count80
Pull Requests Open Count1
Pull Requests Close Count18
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private