Skip to content
This repository was archived by the owner on Aug 17, 2020. It is now read-only.

Commit 1fc5a07

Browse files
committed
add jaeger tracing
1 parent 584b45a commit 1fc5a07

File tree

3 files changed

+42
-1
lines changed

3 files changed

+42
-1
lines changed

go.mod

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,14 @@ require (
2020
github.com/mattn/go-colorable v0.1.2 // indirect
2121
github.com/multiformats/go-multiaddr v0.0.4
2222
github.com/multiformats/go-multiaddr-net v0.0.1
23-
github.com/opentracing/opentracing-go v1.1.0 // indirect
23+
github.com/opentracing/opentracing-go v1.1.0
2424
github.com/prometheus/client_golang v1.0.0
25+
github.com/uber/jaeger-client-go v2.16.0+incompatible
26+
github.com/uber/jaeger-lib v2.0.0+incompatible // indirect
2527
go.opencensus.io v0.22.0
2628
golang.org/x/net v0.0.0-20190522155817-f3200d17e092 // indirect
2729
golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2 // indirect
2830
gopkg.in/yaml.v2 v2.2.2 // indirect
2931
)
32+
33+
replace github.com/libp2p/go-libp2p-kad-dht => ../../libp2p/go-libp2p-kad-dht

go.sum

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,13 @@ github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku
2222
github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY=
2323
github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs=
2424
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
25+
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd h1:qMd81Ts1T2OTKmB4acZcyKaMtRnY5Y44NuXGX2GFJ1w=
26+
github.com/codahale/hdrhistogram v0.0.0-20161010025455-3a0bb77429bd/go.mod h1:sE/e/2PUdi/liOCUjSTXgM1o87ZssimdTWN964YiIeI=
2527
github.com/coreos/go-semver v0.3.0 h1:wkHLiw0WNATZnSG7epLsujiMCgPAc9xhjJ4tgnAxmfM=
2628
github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk=
2729
github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2830
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
31+
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
2932
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3033
github.com/dgraph-io/badger v1.5.5-0.20190226225317-8115aed38f8f/go.mod h1:VZxzAIRPHRVNRKRo6AXrX9BJegn6il06VMTZVJYCIjQ=
3134
github.com/dgryski/go-farm v0.0.0-20190104051053-3adb47b1fb0f/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=
@@ -255,6 +258,7 @@ github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFSt
255258
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
256259
github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
257260
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
261+
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
258262
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
259263
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
260264
github.com/prometheus/client_golang v0.9.2/go.mod h1:OsXs2jCmiKlQ1lTBmv21f2mNfw4xf/QclQDMrYNZzcM=
@@ -278,9 +282,14 @@ github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2
278282
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
279283
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
280284
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
285+
github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q=
281286
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
282287
github.com/syndtr/goleveldb v1.0.0 h1:fBdIW9lB4Iz0n9khmH8w27SJ3QEJ7+IgjPEwGSZiFdE=
283288
github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ=
289+
github.com/uber/jaeger-client-go v2.16.0+incompatible h1:Q2Pp6v3QYiocMxomCaJuwQGFt7E53bPYqEgug/AoBtY=
290+
github.com/uber/jaeger-client-go v2.16.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk=
291+
github.com/uber/jaeger-lib v2.0.0+incompatible h1:iMSCV0rmXEogjNWPh2D0xk9YVKvrtGoHJNe9ebLu/pw=
292+
github.com/uber/jaeger-lib v2.0.0+incompatible/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6+uUTzImX/AauajbLI56U=
284293
github.com/whyrusleeping/base32 v0.0.0-20170828182744-c30ac30633cc h1:BCPnHtcboadS0DvysUuJXZ4lWVv5Bh5i7+tbIyi+ck4=
285294
github.com/whyrusleeping/base32 v0.0.0-20170828182744-c30ac30633cc/go.mod h1:r45hJU7yEoA81k6MWNhpMj/kms0n14dkzkxYHoB96UM=
286295
github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1 h1:EKhdznlJHPMoKr0XTrX+IlJs1LH3lyx2nfr1dOlZ79k=

main.go

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ import (
3131
record "github.com/libp2p/go-libp2p-record"
3232
id "github.com/libp2p/go-libp2p/p2p/protocol/identify"
3333
ma "github.com/multiformats/go-multiaddr"
34+
"github.com/opentracing/opentracing-go"
3435
prom "github.com/prometheus/client_golang/prometheus"
36+
config "github.com/uber/jaeger-client-go/config"
3537
"go.opencensus.io/stats/view"
3638
"go.opencensus.io/zpages"
3739
)
@@ -132,6 +134,7 @@ func main() {
132134
relay := flag.Bool("relay", false, "Enable libp2p circuit relaying for this node")
133135
portBegin := flag.Int("portBegin", 0, "If set, begin port allocation here")
134136
bucketSize := flag.Int("bucketSize", defaultKValue, "Specify the bucket size")
137+
sampling := flag.Float64("sampling", -1, "Tracing sampling config")
135138
flag.Parse()
136139
id.ClientVersion = "dhtbooster/2"
137140

@@ -188,6 +191,10 @@ func main() {
188191
go setupMetrics(*pprofport)
189192
}
190193

194+
if *sampling != -1 {
195+
go setupTracing(*sampling)
196+
}
197+
191198
totalprovs := 0
192199
reportInterval := time.NewTicker(time.Second * 5)
193200
for {
@@ -322,3 +329,24 @@ func setupMetrics(port int) error {
322329
}()
323330
return nil
324331
}
332+
333+
func setupTracing(sampling float64) error {
334+
tracerCfg := &config.Configuration{
335+
Sampler: &config.SamplerConfig{
336+
Type: "const",
337+
Param: sampling,
338+
},
339+
Reporter: &config.ReporterConfig{
340+
LogSpans: true,
341+
},
342+
}
343+
//we are ignoring the closer for now
344+
tracer, _, err := tracerCfg.New("dht_node_tracer")
345+
if err != nil {
346+
return err
347+
}
348+
opentracing.SetGlobalTracer(
349+
tracer,
350+
)
351+
return nil
352+
}

0 commit comments

Comments
 (0)