Package de.hybris.platform.util
Class TimeTracer
- java.lang.Object
-
- de.hybris.platform.util.TimeTracer
-
- All Implemented Interfaces:
java.io.Serializable
public class TimeTracer extends java.lang.Object implements java.io.Serializableusage: create a hierarchy of time tracers
execute that task you want to have traces, starting and stopping the tracers (a child tracer must only be running if its parent is running)
if you want a intermediate report, callprintReport()
callfinishAll()in the root tracer after the task has finished, to get a final reportinstead of creating a hierarchy of tracers, you can call
start(String)with a path expression, which will create children automaticallyto get reports automatically after n calls to
stop(), callsetAutoReport(int)- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTimeTracer.TimeTracerExceptionstatic interfaceTimeTracer.TraceBody
-
Constructor Summary
Constructors Constructor Description TimeTracer(java.lang.String description)TimeTracer(java.lang.String description, TimeTracer parent)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckParentStateWhenAdding()protected voidcheckParentStateWhenRemoving()static java.lang.Objectexecute(java.lang.String key, int autoreport, TimeTracer.TraceBody body)voidfinish()voidfinishAll()protected TimeTracergetChild(java.lang.String childName)static TimeTracergetInstance(java.lang.String name, int autoreport)protected TimeTracergetOrCreateChild(java.lang.String childName)protected java.lang.StringgetPathName()longgetTime()voidprintInstanceReport(int indent)voidprintReport()protected voidprintReport(int indent)voidsetAutoReport(int autoReportPeriod)voidstart()voidstart(java.lang.String childPathName)voidstop()voidstop(java.lang.String childPathName)
-
-
-
Constructor Detail
-
TimeTracer
public TimeTracer(java.lang.String description)
-
TimeTracer
public TimeTracer(java.lang.String description, TimeTracer parent)
-
-
Method Detail
-
getInstance
public static TimeTracer getInstance(java.lang.String name, int autoreport)
-
getTime
public long getTime()
-
getOrCreateChild
protected TimeTracer getOrCreateChild(java.lang.String childName)
-
getChild
protected TimeTracer getChild(java.lang.String childName)
-
start
public void start(java.lang.String childPathName)
-
start
public void start()
-
checkParentStateWhenAdding
protected void checkParentStateWhenAdding()
-
stop
public void stop(java.lang.String childPathName)
-
stop
public void stop()
-
checkParentStateWhenRemoving
protected void checkParentStateWhenRemoving()
-
finish
public void finish()
-
finishAll
public void finishAll()
-
getPathName
protected java.lang.String getPathName()
-
printInstanceReport
public void printInstanceReport(int indent)
-
printReport
public void printReport()
-
printReport
protected void printReport(int indent)
-
setAutoReport
public void setAutoReport(int autoReportPeriod)
- Parameters:
autoReportPeriod- set to a value smaller than 1 to turn autoreport off
-
execute
public static java.lang.Object execute(java.lang.String key, int autoreport, TimeTracer.TraceBody body) throws java.lang.Exception- Throws:
java.lang.Exception
-
-