Class Sampler

java.lang.Object
io.opencensus.trace.Sampler
Direct Known Subclasses:
AlwaysSampleSampler, NeverSampleSampler, ProbabilitySampler

public abstract class Sampler extends Object
Sampler is used to make decisions on Span sampling.
Since:
0.5
  • Constructor Details

    • Sampler

      public Sampler()
  • Method Details

    • shouldSample

      public abstract boolean shouldSample(@Nullable SpanContext parentContext, @Nullable Boolean hasRemoteParent, TraceId traceId, SpanId spanId, String name, List<Span> parentLinks)
      Called during Span creation to make a sampling decision.
      Parameters:
      parentContext - the parent span's SpanContext. null if this is a root span.
      hasRemoteParent - true if the parent Span is remote. null if this is a root span.
      traceId - the TraceId for the new Span. This will be identical to that in the parentContext, unless this is a root span.
      spanId - the SpanId for the new Span.
      name - the name of the new Span.
      parentLinks - the parentLinks associated with the new Span.
      Returns:
      true if the Span is sampled.
      Since:
      0.5
    • getDescription

      public abstract String getDescription()
      Returns the description of this Sampler. This may be displayed on debug pages or in the logs.

      Example: "ProbabilitySampler{0.000100}"

      Returns:
      the description of this Sampler.
      Since:
      0.6