Hi Romain

At least for CXF hTrace I know Andriy did some context switching to keep the track of the spans/etc. The span is detached, etc, I wonder how does it work under the hood

Sergey
On 08/12/16 14:34, Romain Manni-Bucau wrote:
2016-12-08 15:14 GMT+01:00 Sergey Beryozkin <[email protected]>:

Hi Romain

Light-weight tracing (capturing few headers. etc) can be done with basic
custom features/interceptors, do you reckon there's a scope for shipping
something in CXF ?

Yes


I suppose adding few basic interceptors to rt/management can work


Yes,

only trick is to support @Suspended case, see
https://gist.github.com/rmannibucau/8c48d4182388b228046586fd6785a2f2



Cheers, Sergey

On 08/12/16 13:29, Romain Manni-Bucau wrote:

2016-12-08 14:24 GMT+01:00 Andrey Redko <[email protected]>:

Right, it looks like really light version of tracing, which essentially
allows to figure out which service/host is the problem. I am not sure how
useful it could be in practice, and there is a large overlap with logging
in this case.


- light: sure
- overlap with logging: no. Of course it ends up in a log (or aggregator
or
even other kind of storage) but the point is not "where to put it" but
"where to take the data from". Whatever logging system you use you will
never get the full tracing if you dont handle it and the point of the code
is just to maintain the value and make it available for logging or other
 (a request header works well there)
- how useful: if you have zipkin it is useless, if you have anything else
(including an aggregator) it saves time and allows some auto-analysis to
be
in place saving time for not that rare but easy errors

Personally I see it as a kind of level 0 of analysis but surprisingly if
you compare the light vs powerful solutions, the light solves a lot of
cases in a simpler manner (Pareto?).


On Thu, Dec 8, 2016 at 2:13 AM, Romain Manni-Bucau <[email protected]

wrote:

2016-12-08 9:10 GMT+01:00 Christian Schneider <[email protected]>:

The new logging support in rt/features/logging already creates exchange

id

and message id. It also allows to send the message id over the wire.
I have already fed the data into elastic search. There I was able to
correlate request to reply and request sent out from the client to

request

received on the server.

Would that already work?

See http://cxf.apache.org/docs/message-logging.html


It is closer to zipkin I think. The point of the previous solution is
to
"pre-stack" (pre-compute) the data to have an immediate reading of it vs
requiring to rely on an aggregator to exploit it. It is generally added

to

the access log and allows to associate immediately a request to its

origin

(if you start getting a bunch of 500 or 401 and have a pipeline of > 3

hops

it makes the diagnostic very efficient compared to going to your

aggregator

in general). Makes sense?



Christian

On 08.12.2016 08:58, Romain Manni-Bucau wrote:

Hello guys,

would it make sense to have a lighter tracker in cxf? idea is just to

have

a header accumulator but not all the data zipkin requires. I often saw

it

used in companies to track the data path but often it is self

contained

and
only contains the host list. In term of delivery it would be a jaxrs
client/server provider (or interceptor) to handle the header and soap
equivalent probably. Wdyt?

(to make it clear client1 would send Cxf-Tracking: host1, if received

on

host2 the program does another request it will send Cxf-Tracking:
host1,host2 etc...)




--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com







--
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/



Reply via email to