Class InProcessSampledSpanStoreImpl
- java.lang.Object
-
- io.opencensus.trace.export.SampledSpanStore
-
- io.opencensus.implcore.trace.export.SampledSpanStoreImpl
-
- io.opencensus.implcore.trace.export.InProcessSampledSpanStoreImpl
-
@ThreadSafe public final class InProcessSampledSpanStoreImpl extends SampledSpanStoreImpl
In-process implementation of theSampledSpanStore.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classInProcessSampledSpanStoreImpl.Bucketprivate static classInProcessSampledSpanStoreImpl.PerSpanNameSamplesKeeps samples for a given span name.private static classInProcessSampledSpanStoreImpl.RegisterSpanNameEventprivate static classInProcessSampledSpanStoreImpl.UnregisterSpanNameEvent-
Nested classes/interfaces inherited from class io.opencensus.trace.export.SampledSpanStore
SampledSpanStore.ErrorFilter, SampledSpanStore.LatencyBucketBoundaries, SampledSpanStore.LatencyFilter, SampledSpanStore.PerSpanNameSummary, SampledSpanStore.Summary
-
-
Field Summary
Fields Modifier and Type Field Description private EventQueueeventQueueprivate static intMAX_PER_SPAN_NAME_SAMPLESprivate static intNUM_ERROR_BUCKETSprivate static intNUM_LATENCY_BUCKETSprivate static intNUM_SAMPLES_PER_ERROR_BUCKETprivate static intNUM_SAMPLES_PER_LATENCY_BUCKETprivate java.util.Map<java.lang.String,InProcessSampledSpanStoreImpl.PerSpanNameSamples>samplesprivate static longTIME_BETWEEN_SAMPLES
-
Constructor Summary
Constructors Constructor Description InProcessSampledSpanStoreImpl(EventQueue eventQueue)Constructs a newInProcessSampledSpanStoreImpl.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconsiderForSampling(RecordEventsSpanImpl span)Considers to save the given spans to the stored samples.booleangetEnabled()Returnstrueif the SampledSpanStore is enabled.java.util.Collection<SpanData>getErrorSampledSpans(SampledSpanStore.ErrorFilter filter)java.util.Collection<SpanData>getLatencySampledSpans(SampledSpanStore.LatencyFilter filter)java.util.Set<java.lang.String>getRegisteredSpanNamesForCollection()Returns the set of unique span names registered to the library, for use in tests.SampledSpanStore.SummarygetSummary()Returns the summary of all available data, such as number of sampled spans in the latency based samples or error based samples.private voidinternaltRegisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)private voidinternalUnregisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)voidregisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)Appends a list of span names for which the library will collect latency based sampled spans and error based sampled spans.protected voidshutdown()voidunregisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)Removes a list of span names for which the library will collect latency based sampled spans and error based sampled spans.-
Methods inherited from class io.opencensus.implcore.trace.export.SampledSpanStoreImpl
getNoopSampledSpanStoreImpl
-
-
-
-
Field Detail
-
NUM_SAMPLES_PER_LATENCY_BUCKET
private static final int NUM_SAMPLES_PER_LATENCY_BUCKET
- See Also:
- Constant Field Values
-
NUM_SAMPLES_PER_ERROR_BUCKET
private static final int NUM_SAMPLES_PER_ERROR_BUCKET
- See Also:
- Constant Field Values
-
TIME_BETWEEN_SAMPLES
private static final long TIME_BETWEEN_SAMPLES
-
NUM_LATENCY_BUCKETS
private static final int NUM_LATENCY_BUCKETS
-
NUM_ERROR_BUCKETS
private static final int NUM_ERROR_BUCKETS
-
MAX_PER_SPAN_NAME_SAMPLES
private static final int MAX_PER_SPAN_NAME_SAMPLES
-
eventQueue
private final EventQueue eventQueue
-
samples
private final java.util.Map<java.lang.String,InProcessSampledSpanStoreImpl.PerSpanNameSamples> samples
-
-
Constructor Detail
-
InProcessSampledSpanStoreImpl
InProcessSampledSpanStoreImpl(EventQueue eventQueue)
Constructs a newInProcessSampledSpanStoreImpl.
-
-
Method Detail
-
getSummary
public SampledSpanStore.Summary getSummary()
Description copied from class:SampledSpanStoreReturns the summary of all available data, such as number of sampled spans in the latency based samples or error based samples.Data available only for span names registered using
SampledSpanStore.registerSpanNamesForCollection(Collection).- Specified by:
getSummaryin classSampledSpanStore- Returns:
- the summary of all available data.
-
considerForSampling
public void considerForSampling(RecordEventsSpanImpl span)
Description copied from class:SampledSpanStoreImplConsiders to save the given spans to the stored samples. This must be called at the end of each Span with the option RECORD_EVENTS.- Specified by:
considerForSamplingin classSampledSpanStoreImpl- Parameters:
span- the span to be consider for storing into the store buckets.
-
getEnabled
public boolean getEnabled()
Description copied from class:SampledSpanStoreImplReturnstrueif the SampledSpanStore is enabled.- Specified by:
getEnabledin classSampledSpanStoreImpl- Returns:
trueif the SampledSpanStore is enabled.
-
registerSpanNamesForCollection
public void registerSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)
Description copied from class:SampledSpanStoreAppends a list of span names for which the library will collect latency based sampled spans and error based sampled spans.If called multiple times the library keeps the list of unique span names from all the calls.
- Specified by:
registerSpanNamesForCollectionin classSampledSpanStore- Parameters:
spanNames- list of span names for which the library will collect samples.
-
shutdown
protected void shutdown()
- Overrides:
shutdownin classSampledSpanStoreImpl
-
internaltRegisterSpanNamesForCollection
private void internaltRegisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)
-
unregisterSpanNamesForCollection
public void unregisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)
Description copied from class:SampledSpanStoreRemoves a list of span names for which the library will collect latency based sampled spans and error based sampled spans.The library keeps the list of unique registered span names for which samples will be called. This method allows users to remove span names from that list.
- Specified by:
unregisterSpanNamesForCollectionin classSampledSpanStore- Parameters:
spanNames- list of span names for which the library will no longer collect samples.
-
internalUnregisterSpanNamesForCollection
private void internalUnregisterSpanNamesForCollection(java.util.Collection<java.lang.String> spanNames)
-
getRegisteredSpanNamesForCollection
public java.util.Set<java.lang.String> getRegisteredSpanNamesForCollection()
Description copied from class:SampledSpanStoreReturns the set of unique span names registered to the library, for use in tests. For this set of span names the library will collect latency based sampled spans and error based sampled spans.This method is only meant for testing code that uses OpenCensus, and it is not performant.
- Specified by:
getRegisteredSpanNamesForCollectionin classSampledSpanStore- Returns:
- the set of unique span names registered to the library.
-
getErrorSampledSpans
public java.util.Collection<SpanData> getErrorSampledSpans(SampledSpanStore.ErrorFilter filter)
Description copied from class:SampledSpanStoreReturns a list of failed spans (spans withStatusother thanStatus.OK) that match thefilter.Error based sampled spans are available only for span names registered using
SampledSpanStore.registerSpanNamesForCollection(Collection).- Specified by:
getErrorSampledSpansin classSampledSpanStore- Parameters:
filter- used to filter the returned sampled spans.- Returns:
- a list of failed spans that match the
filter.
-
getLatencySampledSpans
public java.util.Collection<SpanData> getLatencySampledSpans(SampledSpanStore.LatencyFilter filter)
Description copied from class:SampledSpanStoreReturns a list of succeeded spans (spans withStatusequal toStatus.OK) that match thefilter.Latency based sampled spans are available only for span names registered using
SampledSpanStore.registerSpanNamesForCollection(Collection).- Specified by:
getLatencySampledSpansin classSampledSpanStore- Parameters:
filter- used to filter the returned sampled spans.- Returns:
- a list of succeeded spans that match the
filter.
-
-