[ 
https://issues.apache.org/jira/browse/HTRACE-69?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14692911#comment-14692911
 ] 

Colin Patrick McCabe commented on HTRACE-69:
--------------------------------------------

bq. First thanks for doing all the great HTrace stuffs, I'm currently looking 
at opportunities to add HTrace support into YARN/MR.

Awesome!  I'd really like to see YARN get HTrace support.  We've been talking 
about it for a while

bq. I'm interested in how can HTrace plan to specify modules/projects tracing, 
do you have existing JIRAs open for them?

As [~iwasakims] commented, HTRACE-214 will make it much easier to trace just 
one module in HTrace 4.0.  The basic idea is that when you want YARN tracing, 
you'll set {{yarn.htrace.sampler.classes}} to {{ProbabilitySampler}}, and set 
{{yarn.htrace.sampler.fraction}} to something like {{0.005}}.  If you don't 
want YARN tracing, you can leave this configuration key unset and get the 
default of no sampling (aka NeverSampler).

Most of the time you'll end up specifying span receivers via 
{{hadoop.htrace.sampler.classes}} (this sets up samplers for all parts of 
Hadoop) but just enabling samplers on only certain parts.

bq. Basically, I think YARN is a little different from HDFS, for a single 
MR/YARN job, there can be millions+ operations to HDFS, but a single HDFS 
operation couldn't be that complex.

The granularity of tracing sampling we should use is a very good question.  I 
definitely think sampling at the level of a whole MR or other YARN job is too 
much.  What do you think the smallest granularity we could sample is?  A single 
YARN RPC?  I agree with [~eclark] that we might want to start off with a 
traditional model where we sample and then keep all the traces from the sampled 
trace.  Maybe we'll have to rethink that later, though.

> Filtering child spans by sampler
> --------------------------------
>
>                 Key: HTRACE-69
>                 URL: https://issues.apache.org/jira/browse/HTRACE-69
>             Project: HTrace
>          Issue Type: New Feature
>            Reporter: Masatake Iwasaki
>            Assignee: Masatake Iwasaki
>
> Trace#startSpan respect the sampler given as argument only when there is no 
> ongoing span (i.e. when creating new root span).
> {code}
>   public static TraceScope startSpan(String description, Sampler<TraceInfo> 
> s, TraceInfo tinfo) {
>     Span span = null;
>     if (isTracing() || s.next(tinfo)) {
> {code}
> Adding API starting span if {{(isTracing() && s.next(tinfo))}} enables 
> filtering of child spans.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to