public class PerformanceProfiler extends SessionProfilerAdapter implements java.io.Serializable, java.lang.Cloneable
Purpose: A tool used to provide high level performance profiling information.
Modifier and Type | Field and Description |
---|---|
protected int |
nestLevel |
protected long |
nestTime |
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> |
operationStartTimesByThread |
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> |
operationTimingsByThread |
protected java.util.List<Profile> |
profiles |
protected long |
profileTime |
protected org.eclipse.persistence.internal.sessions.AbstractSession |
session |
protected boolean |
shouldLogProfile |
ALL, AssignSequence, CacheCoordination, CacheCoordinationSerialize, CacheHits, CacheMisses, CacheSize, Caching, ChangeSetsNotProcessed, ChangeSetsProcessed, ClientSessionCreated, ClientSessionReleased, ConnectionManagement, ConnectionPing, Connects, DescriptorEvent, Disconnects, DistributedMerge, HEAVY, JtsAfterCompletion, JtsBeforeCompletion, Logging, LoginTime, Merge, NONE, NORMAL, ObjectBuilding, OptimisticLockException, QueryPreparation, RcmReceived, RcmSent, RcmStatus, Register, Remote, RemoteChangeSet, RemoteLazy, RemoteMetadata, RowFetch, SessionEvent, SessionName, SqlGeneration, SqlPrepare, StatementExecute, Transaction, UowCommit, UowCommits, UowCreated, UowReleased, UowRollbacks
Constructor and Description |
---|
PerformanceProfiler()
PUBLIC:
Create a new profiler.
|
PerformanceProfiler(boolean shouldLogProfile)
PUBLIC:
Create a new profiler.
|
PerformanceProfiler(Session session)
Deprecated.
replaced by PerformanceProfiler()
|
PerformanceProfiler(Session session,
boolean shouldLogProfile)
Deprecated.
replaced by PerformanceProfiler()
|
Modifier and Type | Method and Description |
---|---|
protected void |
addProfile(Profile profile) |
Profile |
buildProfileSummary()
INTERNAL:
Return a summary profile reporting on the profiles contained.
|
java.util.Hashtable |
buildProfileSummaryByClass()
INTERNAL:
Return a map of summary profiles reporting on the profile contained.
|
java.util.Hashtable |
buildProfileSummaryByQuery()
INTERNAL:
Return a map of summary profiles reporting on the profile contained.
|
PerformanceProfiler |
clone() |
void |
dontLogProfile()
PUBLIC:
Set whether after each query execution the profile result should be logged.
|
void |
endOperationProfile(java.lang.String operationName)
INTERNAL:
End the operation timing.
|
void |
endOperationProfile(java.lang.String operationName,
DatabaseQuery query,
int weight)
INTERNAL:
End the operation timing.
|
protected int |
getNestLevel() |
protected long |
getNestTime() |
protected java.util.Map<java.lang.String,java.lang.Long> |
getOperationStartTimes() |
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> |
getOperationStartTimesByThread() |
protected java.util.Map<java.lang.String,java.lang.Long> |
getOperationTimings() |
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> |
getOperationTimingsByThread() |
java.util.List<Profile> |
getProfiles()
Return the profiles logged in this profiler.
|
protected long |
getProfileTime() |
int |
getProfileWeight()
INTERNAL:
Return DMS sensor weight(DMS)
|
org.eclipse.persistence.internal.sessions.AbstractSession |
getSession() |
void |
initialize()
INTERNAL:
Initialize EclipseLink noun tree(DMS)
|
void |
logProfile()
PUBLIC:
Set whether after each query execution the profile result should be logged.
|
void |
logProfileSummary()
PUBLIC:
Log a profile summary.
|
void |
logProfileSummaryByClass()
PUBLIC:
Log a profile summary by class.
|
void |
logProfileSummaryByQuery()
PUBLIC:
Log a profile summary by query.
|
java.lang.Object |
profileExecutionOfQuery(DatabaseQuery query,
Record row,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Finish a profile operation if profiling.
|
protected void |
setNestLevel(int nestLevel) |
protected void |
setNestTime(long nestTime) |
protected void |
setOperationStartTimes(java.util.Map<java.lang.String,java.lang.Long> operationStartTimes) |
protected void |
setOperationStartTimesByThread(java.util.Hashtable operationStartTimesByThread) |
protected void |
setOperationTimings(java.util.Map<java.lang.String,java.lang.Long> operationTimings) |
protected void |
setOperationTimingsByThread(java.util.Hashtable operationTimingsByThread) |
protected void |
setProfiles(java.util.Vector profiles) |
protected void |
setProfileTime(long profileTime) |
void |
setSession(Session session)
INTERNAL:
Set the session.
|
void |
setShouldLogProfile(boolean shouldLogProfile)
PUBLIC:
Set whether after each query execution the profile result should be logged.
|
boolean |
shouldLogProfile() |
void |
startOperationProfile(java.lang.String operationName)
INTERNAL:
Start the operation timing.
|
void |
startOperationProfile(java.lang.String operationName,
DatabaseQuery query,
int weight)
INTERNAL:
Start the operation timing.
|
protected void |
writeNestingTabs(java.io.Writer writer) |
occurred, occurred, setProfileWeight, update
protected java.util.List<Profile> profiles
protected transient org.eclipse.persistence.internal.sessions.AbstractSession session
protected boolean shouldLogProfile
protected int nestLevel
protected long nestTime
protected long profileTime
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> operationTimingsByThread
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> operationStartTimesByThread
public PerformanceProfiler()
public PerformanceProfiler(Session session)
public PerformanceProfiler(Session session, boolean shouldLogProfile)
public PerformanceProfiler(boolean shouldLogProfile)
protected void addProfile(Profile profile)
public Profile buildProfileSummary()
public java.util.Hashtable buildProfileSummaryByClass()
public java.util.Hashtable buildProfileSummaryByQuery()
public PerformanceProfiler clone()
clone
in class java.lang.Object
public void dontLogProfile()
public void endOperationProfile(java.lang.String operationName)
endOperationProfile
in interface SessionProfiler
endOperationProfile
in class SessionProfilerAdapter
public void endOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
endOperationProfile
in interface SessionProfiler
endOperationProfile
in class SessionProfilerAdapter
protected int getNestLevel()
protected long getNestTime()
protected java.util.Map<java.lang.String,java.lang.Long> getOperationStartTimes()
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> getOperationStartTimesByThread()
protected java.util.Map<java.lang.String,java.lang.Long> getOperationTimings()
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> getOperationTimingsByThread()
public java.util.List<Profile> getProfiles()
protected long getProfileTime()
public org.eclipse.persistence.internal.sessions.AbstractSession getSession()
public void logProfile()
public void logProfileSummary()
public void logProfileSummaryByClass()
public void logProfileSummaryByQuery()
public java.lang.Object profileExecutionOfQuery(DatabaseQuery query, Record row, org.eclipse.persistence.internal.sessions.AbstractSession session)
profileExecutionOfQuery
in interface SessionProfiler
profileExecutionOfQuery
in class SessionProfilerAdapter
protected void setNestLevel(int nestLevel)
protected void setNestTime(long nestTime)
protected void setOperationStartTimes(java.util.Map<java.lang.String,java.lang.Long> operationStartTimes)
protected void setOperationStartTimesByThread(java.util.Hashtable operationStartTimesByThread)
protected void setOperationTimings(java.util.Map<java.lang.String,java.lang.Long> operationTimings)
protected void setOperationTimingsByThread(java.util.Hashtable operationTimingsByThread)
protected void setProfiles(java.util.Vector profiles)
protected void setProfileTime(long profileTime)
public void setSession(Session session)
SessionProfilerAdapter
setSession
in interface SessionProfiler
setSession
in class SessionProfilerAdapter
public void setShouldLogProfile(boolean shouldLogProfile)
public boolean shouldLogProfile()
public void startOperationProfile(java.lang.String operationName)
startOperationProfile
in interface SessionProfiler
startOperationProfile
in class SessionProfilerAdapter
public void startOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
startOperationProfile
in interface SessionProfiler
startOperationProfile
in class SessionProfilerAdapter
protected void writeNestingTabs(java.io.Writer writer)
public int getProfileWeight()
SessionProfilerAdapter
getProfileWeight
in interface SessionProfiler
getProfileWeight
in class SessionProfilerAdapter
public void initialize()
SessionProfilerAdapter
initialize
in interface SessionProfiler
initialize
in class SessionProfilerAdapter