Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds brave.Tracing an object graph that holds things you need (#381)
Before, we added some helpers like `Tracer.clock()` because when instrumenting, you sometimes need more than just the Tracer. Recently, we needed to decide how to expose the propagation format.. should we add another convenience method? Taking experience from Zipkin (which took its experience from Dagger and Spring), another way is to expose an object graph.. a component that provides types often used together. This adds `brave.Tracing` which can be passed around or implemented differently as needed. Instrumentation would consume this to get common types they need. For example, `JaxRs2Tracing` would accept an instance of tracing, so that it has what it needs, a tracer and a propagation handler. Instances of this can be wired up in Spring (Dagger, Guice or CDI), making instrumentation wiring far simpler than chaining builders. Thanks to @bogdandrutu and @llinder for discussions leading to this.
- Loading branch information
1 parent
849c4d1
commit 7fd9bae
Showing
29 changed files
with
412 additions
and
229 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 3 additions & 3 deletions
6
brave-core/src/test/java/com/github/kristofa/brave/Brave4ClientTracerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,13 @@ | ||
package com.github.kristofa.brave; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
|
||
public class Brave4ClientTracerTest extends ClientTracerTest { | ||
@Override Brave newBrave() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder() | ||
return TracerAdapter.newBrave(Tracing.newBuilder() | ||
.clock(new AnnotationSubmitter.DefaultClock()::currentTimeMicroseconds) | ||
.localEndpoint(ZIPKIN_ENDPOINT) | ||
.clock(clock::currentTimeMicroseconds) | ||
.reporter(spans::add).build()); | ||
.reporter(spans::add).build().tracer()); | ||
} | ||
} |
10 changes: 5 additions & 5 deletions
10
brave-core/src/test/java/com/github/kristofa/brave/Brave4LocalTracerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,19 @@ | ||
package com.github.kristofa.brave; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
|
||
public class Brave4LocalTracerTest extends LocalTracerTest { | ||
@Override Brave newBrave() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder() | ||
return TracerAdapter.newBrave(Tracing.newBuilder() | ||
.clock(clock::currentTimeMicroseconds) | ||
.localEndpoint(ZIPKIN_ENDPOINT) | ||
.reporter(spans::add).build()); | ||
.reporter(spans::add).build().tracer()); | ||
} | ||
|
||
@Override Brave newBrave(ServerClientAndLocalSpanState state) { | ||
return TracerAdapter.newBrave(Tracer.newBuilder() | ||
return TracerAdapter.newBrave(Tracing.newBuilder() | ||
.clock(clock::currentTimeMicroseconds) | ||
.localEndpoint(ZIPKIN_ENDPOINT) | ||
.reporter(spans::add).build(), state); | ||
.reporter(spans::add).build().tracer(), state); | ||
} | ||
} |
6 changes: 3 additions & 3 deletions
6
brave-core/src/test/java/com/github/kristofa/brave/Brave4ServerRequestInterceptorTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,11 @@ | ||
package com.github.kristofa.brave; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
|
||
public class Brave4ServerRequestInterceptorTest extends ServerRequestInterceptorTest { | ||
@Override Brave newBrave() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder() | ||
return TracerAdapter.newBrave(Tracing.newBuilder() | ||
.localEndpoint(ZIPKIN_ENDPOINT) | ||
.reporter(spans::add).build()); | ||
.reporter(spans::add).build().tracer()); | ||
} | ||
} |
6 changes: 3 additions & 3 deletions
6
brave-core/src/test/java/com/github/kristofa/brave/Brave4ServerTracerTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
package com.github.kristofa.brave; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
|
||
public class Brave4ServerTracerTest extends ServerTracerTest { | ||
@Override Brave newBrave() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder() | ||
return TracerAdapter.newBrave(Tracing.newBuilder() | ||
.clock(clock::currentTimeMicroseconds) | ||
.localEndpoint(ZIPKIN_ENDPOINT) | ||
.reporter(spans::add).build()); | ||
.reporter(spans::add).build().tracer()); | ||
} | ||
} |
10 changes: 5 additions & 5 deletions
10
brave-core/src/test/java/com/github/kristofa/brave/Brave4Test.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,22 +1,22 @@ | ||
package com.github.kristofa.brave; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
|
||
public class Brave4Test extends BraveTest { | ||
|
||
@Override protected Brave newBrave() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder().build()); | ||
return TracerAdapter.newBrave(Tracing.newBuilder().build().tracer()); | ||
} | ||
|
||
@Override protected Brave newBrave(Sampler sampler) { | ||
return TracerAdapter.newBrave(Tracer.newBuilder().sampler(new brave.sampler.Sampler() { | ||
return TracerAdapter.newBrave(Tracing.newBuilder().sampler(new brave.sampler.Sampler() { | ||
@Override public boolean isSampled(long traceId) { | ||
return sampler.isSampled(traceId); | ||
} | ||
}).build()); | ||
}).build().tracer()); | ||
} | ||
|
||
@Override protected Brave newBraveWith128BitTraceIds() { | ||
return TracerAdapter.newBrave(Tracer.newBuilder().traceId128Bit(true).build()); | ||
return TracerAdapter.newBrave(Tracing.newBuilder().traceId128Bit(true).build().tracer()); | ||
} | ||
} |
4 changes: 2 additions & 2 deletions
4
...ore/src/test/java/com/github/kristofa/brave/internal/Brave4MaybeAddClientAddressTest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
package com.github.kristofa.brave.internal; | ||
|
||
import brave.Tracer; | ||
import brave.Tracing; | ||
import com.github.kristofa.brave.TracerAdapter; | ||
|
||
public class Brave4MaybeAddClientAddressTest extends MaybeAddClientAddressTest { | ||
public Brave4MaybeAddClientAddressTest() { | ||
brave = TracerAdapter.newBrave(Tracer.newBuilder().reporter(spans::add).build()); | ||
brave = TracerAdapter.newBrave(Tracing.newBuilder().reporter(spans::add).build().tracer()); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.