public class PerformanceMonitor extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable, SessionProfiler
Purpose: A tool used to provide performance monitoring information in a server environment.
| Modifier and Type | Field and Description |
|---|---|
protected static java.lang.String |
COUNTER |
protected long |
dumpTime |
protected long |
lastDumpTime |
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> |
operationStartTimesByThread |
protected java.util.Map<java.lang.String,java.lang.Object> |
operationTimings |
protected int |
profileWeight |
protected org.eclipse.persistence.internal.sessions.AbstractSession |
session |
protected static java.lang.String |
TIMER |
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 |
|---|
PerformanceMonitor()
PUBLIC:
Create a new profiler.
|
| Modifier and Type | Method and Description |
|---|---|
void |
checkDumpTime()
Log the results after a set amount of time has passed.
|
PerformanceMonitor |
clone() |
void |
dumpResults()
Log the results to the session's log (System.out).
|
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.
|
long |
getDumpTime()
Return the number of milliseconds after which the monitor results should be logged.
|
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() |
java.lang.Object |
getOperationTime(java.lang.String operation) |
java.util.Map<java.lang.String,java.lang.Object> |
getOperationTimings() |
int |
getProfileWeight()
Return the level of profiling.
|
org.eclipse.persistence.internal.sessions.AbstractSession |
getSession() |
void |
initialize()
INTERNAL:
Initialize EclipseLink noun tree(DMS)
|
void |
occurred(java.lang.String operationName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Increase DMS Event sensor occurrence.
|
void |
occurred(java.lang.String operationName,
DatabaseQuery query,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Increase DMS Event sensor occurrence.
|
java.lang.Object |
profileExecutionOfQuery(DatabaseQuery query,
Record row,
org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL:
Monitoring is done on the endOperation only.
|
void |
setDumpTime(long dumpTime)
Set the number of milliseconds after which the monitor results should be logged.
|
void |
setProfileWeight(int profileWeight)
Set the level of profiling.
|
void |
setSession(Session session)
INTERNAL:
Set the session.
|
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.
|
void |
update(java.lang.String operationName,
java.lang.Object value)
INTERNAL:
Update the value of the State sensor.
|
protected static final java.lang.String COUNTER
protected static final java.lang.String TIMER
protected transient org.eclipse.persistence.internal.sessions.AbstractSession session
protected java.util.Map<java.lang.String,java.lang.Object> operationTimings
protected java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.lang.Long>> operationStartTimesByThread
protected long lastDumpTime
protected long dumpTime
protected int profileWeight
public PerformanceMonitor()
public long getDumpTime()
public void setDumpTime(long dumpTime)
public PerformanceMonitor clone()
clone in class java.lang.Objectpublic void checkDumpTime()
public void dumpResults()
public void endOperationProfile(java.lang.String operationName)
endOperationProfile in interface SessionProfilerpublic void endOperationProfile(java.lang.String operationName,
DatabaseQuery query,
int weight)
endOperationProfile in interface SessionProfilerprotected 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()
public java.lang.Object getOperationTime(java.lang.String operation)
public java.util.Map<java.lang.String,java.lang.Object> getOperationTimings()
public org.eclipse.persistence.internal.sessions.AbstractSession getSession()
public java.lang.Object profileExecutionOfQuery(DatabaseQuery query, Record row, org.eclipse.persistence.internal.sessions.AbstractSession session)
profileExecutionOfQuery in interface SessionProfilerpublic void setSession(Session session)
SessionProfilersetSession in interface SessionProfilerpublic void startOperationProfile(java.lang.String operationName)
startOperationProfile in interface SessionProfilerpublic void startOperationProfile(java.lang.String operationName,
DatabaseQuery query,
int weight)
startOperationProfile in interface SessionProfilerpublic void update(java.lang.String operationName,
java.lang.Object value)
SessionProfilerupdate in interface SessionProfilerpublic void occurred(java.lang.String operationName,
org.eclipse.persistence.internal.sessions.AbstractSession session)
SessionProfileroccurred in interface SessionProfilerpublic void occurred(java.lang.String operationName,
DatabaseQuery query,
org.eclipse.persistence.internal.sessions.AbstractSession session)
SessionProfileroccurred in interface SessionProfilerpublic void setProfileWeight(int profileWeight)
setProfileWeight in interface SessionProfilerSessiobProfilerpublic int getProfileWeight()
getProfileWeight in interface SessionProfilerSessiobProfilerpublic void initialize()
SessionProfilerinitialize in interface SessionProfiler