Commit Graph

731 Commits

Author SHA1 Message Date
Marcin Grzejszczak
beee1d2a3e Updating mvnw for all projects 2016-09-19 12:47:20 +02:00
Marcin Grzejszczak
633631b91d Updating mvnw for all projects 2016-09-15 16:13:35 +02:00
Adrian Cole
e6d29898dd Reroutes HttpZipkinSpanReporter to use zipkin.reporter.AsyncReporter (#409)
AsyncReporter is a more robust version of what we were doing before.
Notably, it can give a memory threshold instead of span count for the
backlog. This change ports to use AsyncReporter internally.

See https://github.com/openzipkin/zipkin-reporter-java#asyncreporter
2016-09-15 22:10:32 +08:00
Adrian Cole
02473f7c18 Tolerate reads of 128 bit X-B3-TraceId (#408)
The first step of transitioning to 128bit `X-B3-TraceId` is tolerantly reading 32 character long ids by throwing away the high bits (any characters left of 16 characters). This allows the tracing system to more flexibly introduce 128bit trace id support in the future.

Ex. when `X-B3-TraceId: 463ac35c9f6413ad48485a3953bb6124` is received, parse the lower 64 bits (right most 16 characters ex48485a3953bb6124) as the trace id.
2016-09-15 21:13:38 +08:00
Marcin Grzejszczak
00fe8e0f5a Added more explicit Tracer explanation
without this change it could be nonclear where Tracer comes from and how you can use it.

With this change hopefully it get properly explained

fixes #402
2016-09-13 14:34:48 +02:00
Marcin Grzejszczak
4490b1b81e Simplified TraceZuulHandlerMapping
without this change we were wrapping the ZuulHandlerMapping in its tracing representation.

with this change we are simplifing that by adding interceptors

fixes #399
2016-09-13 10:16:30 +02:00
Marcin Grzejszczak
8a32f02f9f Going back to SNAPSHOTs 2016-09-08 23:29:24 +02:00
Marcin Grzejszczak
2e4c59b3c6 Bumping versions before release 2016-09-08 22:45:02 +02:00
Marcin Grzejszczak
9e01d77431 Feign fixes
it turned out that some of the tests were leaky and didn't catch that ExceptionUtils were throwing an exception (race condition with Hystrix). That was due to the fact that When Hystrix with Feign were doing retries the RequestInterceptor wasn't called. That means that a new span wasn't created but a parent span was closed.

With this change the only place where the span creation and closing takes place is TraceFeignClient. I removed the Feign RequestInterceptor. Now whenever there is a retry - a new span is created and closed after getting a response. There are no exceptions, special cases etc.

In addition to that since Feign is fully immutable and SpanInjector is by design made to mutate objects I had to wrap the immutable Request in an AtomicReference in order to change the contents of the Request. I'm ashamed but didn't have a better idea. Since that is packaged scope nobody should every see that (outside the package of course)
2016-09-08 22:25:12 +02:00
Marcin Grzejszczak
ef2445090d Going back to SNAPSHOTs 2016-09-08 18:20:57 +02:00
Marcin Grzejszczak
877b80b70e Bumping versions before release 2016-09-08 17:37:08 +02:00
Marius Bogoevici
d331f5a212 Use StreamListener for coercing messages from JSON Span (#386)
* Use StreamListener for coercing messages from JSON `Span`

Rely on the `contentType` header of the transported message to
tell Spring Cloud Stream how to coerce the message to `Span`.
2016-09-08 15:57:24 +02:00
Marcin Grzejszczak
10a169ed26 TraceLoadBalancerFeignClient not closing span
when TLBFC is throwing an exception the span wasn't closed. Throwing exception can occurr when IOExcepiton is thrown. Then the span wouldn't be closed and the whole series of problems occur.

fixes #393
2016-09-08 15:29:27 +02:00
Marcin Grzejszczak
3ebcd1e693 Wrapping LoadBalancerFeignClient in tracing representation
without this change when using SC-Netflix 1.2.0 Feign can't call an external URL

fixes #393
2016-09-08 10:53:33 +02:00
Marcin Grzejszczak
bc532c4f02 Removed adoc footer 2016-09-07 18:03:51 +02:00
Marcin Grzejszczak
31585fea2f Updating mvnw for all projects 2016-09-07 17:30:00 +02:00
Marcin Grzejszczak
fd543298a0 Fixed duplicate stream env post processor entries (#388)
when the stream env post processor is executed headers are added endlessly - there is no check for the presence of the tracing headers.

with this change a check is added so the tracing headers are added only once.

fixes #387
2016-08-30 13:07:34 +02:00
Marcin Grzejszczak
f92950b474 Added info about root span 2016-08-29 15:09:10 +02:00
Marcin Grzejszczak
641af5e272 Bumping sc-build to 1.1.3 2016-08-24 17:36:41 +02:00
Marcin Grzejszczak
634020eea6 Synchronizing on spans in ArrayListSpanAccumulator
without this change tests happen to have ConcurrentModificationException
2016-08-23 15:35:00 +02:00
Marcin Grzejszczak
b47ad1613d Updating ghpages for all projects 2016-08-22 13:32:40 +02:00
Marcin Grzejszczak
cd17b35ea3 Going back to Snapshots 2016-08-22 13:20:14 +02:00
Marcin Grzejszczak
995371fc0d Bumping versions before release 2016-08-22 12:39:30 +02:00
Marcin Grzejszczak
b7f0c4e7c5 Fixing TraceFilter order (#382)
after making TraceFilter process different dispatch types we've introduced a bug related to filter ordering. TraceFilter was registered with a default ordering which is of lowest precedence.

With this change we ensure that the ordering of TraceFilter is fixed.

Fixes #380
2016-08-22 12:22:26 +02:00
Marcin Grzejszczak
ef655267a8 Fixed a typo in docs 2016-08-19 15:07:06 +02:00
Marcin Grzejszczak
2bad78ee4b Going back to snapshots after release 2016-08-19 15:06:37 +02:00
Marcin Grzejszczak
f56779e255 Bumping versions before release 2016-08-19 14:26:49 +02:00
Marcin Grzejszczak
1b348abbde Added docs on how to provide custom serviceName
without this entry in the docs people got confused on how to do this.

fixes #346
2016-08-19 13:25:34 +02:00
Marcin Grzejszczak
08e8e87ba2 Updating ghpages for all projects 2016-08-19 11:46:57 +02:00
Marcin Grzejszczak
8e01425eed Synchronized ArrayListSpanAccumulator spans
without this change we could have ConcurrentModificationExceptions
2016-08-18 16:11:46 +02:00
Marcin Grzejszczak
af7593eaf5 Added docs about logback-spring and props
we had a couple of questions related to missing attributes in the logback file or the logs as such. It's related to the fact that once you provide a custom logback file you have to place the propery of spring.application.name in the bootstrap file

fixes #376
2016-08-18 15:44:19 +02:00
Marcin Grzejszczak
ab2b4576e5 Updating ghpages for all projects 2016-08-18 13:15:51 +02:00
Dave Syer
0c9955c761 Change repo URLs to https 2016-08-18 12:27:22 +02:00
Marcin Grzejszczak
ef1cd65f0c Bounding the queue for StreamSpanReporter
without this change the limit is MAX_INTEGER. With this change we set it to 1000

fixes #378
2016-08-18 12:20:01 +02:00
Marcin Grzejszczak
fdea5d6bac Wraped debug logs with conditional 2016-08-17 13:59:01 +02:00
Marcin Grzejszczak
9e900569a9 Updating ghpages for all projects 2016-08-17 12:45:56 +02:00
Marcin Grzejszczak
109bc02d1d Updated docs 2016-08-16 14:27:22 +02:00
Marcin Grzejszczak
3f96b210d9 Deploying documentation to proper folder (#373)
What we're missing ATM is different documentation versions for different application versions. What this change does is that it's:

- finding out what is the current branch (e.g. 1.0.x)
- finding out out what is the name of the main adoc file (e.g. spring-cloud-sleuth)
- pulling the changes from gh-pages after checkout
- finding out what is the list of comma separated whitelisted branches (via the `docs.whitelisted.branches` prop) 
- in gh-pages creating a folder with name of the branch  (e.g. /1.0.x)
copying all the docs/target/generated-docs/ to that folder
- if the branch from which we're calling the script is NOT master then we're changing the ${main.adoc}.html to index.html so that it's easier to access the docs (e.g. http://cloud.spring.io/spring-cloud-sleuth/1.0.x/)
2016-08-16 14:17:48 +02:00
Marcin Grzejszczak
9e10796b0a Updated Zipkin UI docs
fixes #375
2016-08-16 14:09:39 +02:00
Marcin Grzejszczak
f677be026e Ensured reusability of Feign components
Tests have been refactored to ensure that the custom components registered as beans are working properly

fixes #374
2016-08-16 11:48:49 +02:00
Marcin Grzejszczak
e0fbcfe7c6 Polish 2016-08-10 17:33:44 +02:00
Marcin Grzejszczak
35652a43d9 Removed sending the tracing information back in the response (#329)
fixes #327
2016-08-10 17:31:40 +02:00
Marcin Grzejszczak
ee23ea6465 Simplified Feign (#372)
with this change we no longer treat retries as a continuation of a previous span. That way the Feign code simplifies a lot. RequestInterceptor starts a span and the TraceFeignClient will always close it no matter what's happening.

fixes #202
2016-08-09 19:01:48 +02:00
Marcin Grzejszczak
e408fd4190 Added NPE gueard for TraceFeignContext 2016-08-06 15:35:48 -07:00
Marcin Grzejszczak
0781157f10 Fixed wrong ConditionalOnClass
with this fix there no longer should be bugs related to a missing class.

fixes #363
2016-08-02 23:31:24 -07:00
Marcin Grzejszczak
511d83afde Fixed circular dependency
fixes #354
2016-08-01 17:52:17 -07:00
Marcin Grzejszczak
9c0fe65649 Updating the duration setting (#360)
* Updating the duration setting

fixes #349
2016-07-29 23:36:29 +02:00
Steve Oakey
cf9e379ca1 Added PollerMetadata for StreamSpanReporter (#343)
Added configurable PollerMetadata bean to be used with the Inbound
Channel Adapter in the StreamSpanReporter. Fixed delay and max messages
per poll are configurable via configuration properties. Implementors can
provide a bean of type PollerMetadata and name
StreamSpanReporter.POLLER to take full control of the poller.

Fixes: gh-338
2016-07-29 16:01:09 +02:00
Marcin Grzejszczak
c8992a65b3 Adding tags for Hystrix spans
with this change if a span hasnt set any Hystrix related spans then we're setting the tags even if the span gets continued (which is the case when you're using Javanica

fixes #352
2016-07-29 15:07:40 +02:00
Marcin Grzejszczak
8a5aabea84 Unified tag names
with this change the tags related to method and class name will not be hyphen delimited.

fixes #359
2016-07-29 12:46:47 +02:00