Class TraceCollection

  extended by org.apache.avro.ipc.trace.TraceCollection

public class TraceCollection
extends Object

Provides statistics and representation of a collection of Trace's which share the same execution path. For instance: given the following execution pattern: b--d / a \ c--e We might want a report detailing statistics on across several Traces's. Such as a display of average timing data: [message] --- = average link time +++ = average compute time a <----++++++++++++++++++++++++++++++++++++++++---> b <----+++++++++++++++++++---> d <-----++++-----> c <---+++++-> e <+> This requires calculating averages of different timing data at each node in the call tree.

Nested Class Summary
 class TraceCollection.TraceComparotor
 class TraceCollection.TraceNodeStats
          Class to store statistics for a particular node in the RPC call tree.
 class TraceCollection.TraceTiming
          Class to store the timing data associated with a particluar trace.
Constructor Summary
TraceCollection(Trace t)
          Create a TraceCollection using the given Trace as a model.
Method Summary
 void addTrace(Trace t)
          Add a trace to this collection.
 int getExecutionPathHash()
 TraceCollection.TraceNodeStats getNodeWithID(int hashCode)
 TraceCollection.TraceNodeStats getNodeWithIDRecurse(int hashCode, TraceCollection.TraceNodeStats start)
 TraceCollection.TraceNodeStats getRootNode()
 TreeSet<Trace> getTraces()
 List<Trace> longestTraces(int count)
          Returns the [count] longest traces in this collection.
 String printBrief()
          Print a brief description of this Trace Collection with some summary data.
 String printRecurse(TraceCollection.TraceNodeStats n, int depth)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public TraceCollection(Trace t)
Create a TraceCollection using the given Trace as a model. Note that we do not add this trace to the statistics tracking in this constructor.

Method Detail


public TraceCollection.TraceNodeStats getNodeWithID(int hashCode)


public TraceCollection.TraceNodeStats getNodeWithIDRecurse(int hashCode,
                                                           TraceCollection.TraceNodeStats start)


public TraceCollection.TraceNodeStats getRootNode()


public int getExecutionPathHash()


public TreeSet<Trace> getTraces()


public List<Trace> longestTraces(int count)
Returns the [count] longest traces in this collection.


public void addTrace(Trace t)
Add a trace to this collection. Timing data from this trace will then be included in aggregate statistics.


public String printBrief()
Print a brief description of this Trace Collection with some summary data. Useful for debugging or quick profiling.


public String printRecurse(TraceCollection.TraceNodeStats n,
                           int depth)

Copyright © 2011 The Apache Software Foundation. All Rights Reserved.