public class DMSPerformanceProfiler extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable, SessionProfiler
Description: A mechanism used to provide a link for EclipseLink performance profiling by using the DMS tool. The predefined EclipseLink metrics will be monitored by using DMS sensors. EclipseLink library instrumentation will be done by inserting DMS calls for the purpose of measuring its performance
Responsibilities:
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CACHE |
static java.lang.String |
CacheNounType |
static java.lang.String |
CONNECT |
static java.lang.String |
ConnectionInUse |
static java.lang.String |
ConnectionNounType |
static java.lang.String |
DistributedMergeDmsDisplayName |
static java.lang.String |
EclipseLinkRootNoun |
static java.lang.String |
MergeTime |
static java.lang.String |
MiscellaneousNounType |
static java.lang.String |
RcmNounType |
static java.lang.String |
Sequencing |
static java.lang.String |
SessionNounType |
static java.lang.String |
TransactionNounType |
static java.lang.String |
UnitOfWorkRegister |
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 |
---|
DMSPerformanceProfiler()
PUBLIC: Create a new dms profiler.
|
DMSPerformanceProfiler(Session session)
PUBLIC: Create a new dms profiler.
|
Modifier and Type | Method and Description |
---|---|
void |
endOperationProfile(java.lang.String operationName)
INTERNAL: Link to the dms PhaseEvent api stop().
|
void |
endOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
INTERNAL: Link to the dms PhaseEvent api stop().
|
int |
getProfileWeight()
INTERNAL: Return current TopLink dms weight.
|
org.eclipse.persistence.internal.sessions.AbstractSession |
getSession() |
java.lang.String |
getSessionName() |
void |
initialize()
INTERNAL: Initialize TopLink noun tree by default (DMSConsole.getSensorWeight())
|
void |
occurred(java.lang.String operationName, org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Link to the dms Event api occurred().
|
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: Finish a profile operation if profiling.
|
void |
setProfileWeight(int newWeight)
INTERNAL: Api for changing dms weight dynamically.
|
void |
setSession(Session session)
INTERNAL: Set the session.
|
void |
startOperationProfile(java.lang.String operationName)
INTERNAL: Link to the dms PhaseEvent api start().
|
void |
startOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
INTERNAL: Link to the dms PhaseEvent api start().
|
void |
update(java.lang.String operationName, java.lang.Object value)
INTERNAL: Link to the dms State api update().
|
public static final java.lang.String EclipseLinkRootNoun
public static final java.lang.String SessionNounType
public static final java.lang.String TransactionNounType
public static final java.lang.String RcmNounType
public static final java.lang.String ConnectionNounType
public static final java.lang.String CacheNounType
public static final java.lang.String MiscellaneousNounType
public static final java.lang.String ConnectionInUse
public static final java.lang.String MergeTime
public static final java.lang.String UnitOfWorkRegister
public static final java.lang.String DistributedMergeDmsDisplayName
public static final java.lang.String Sequencing
public static final java.lang.String CONNECT
public static final java.lang.String CACHE
public DMSPerformanceProfiler()
public DMSPerformanceProfiler(Session session)
public void setProfileWeight(int newWeight)
setProfileWeight
in interface SessionProfiler
public void initialize()
initialize
in interface SessionProfiler
public int getProfileWeight()
getProfileWeight
in interface SessionProfiler
public void startOperationProfile(java.lang.String operationName)
startOperationProfile
in interface SessionProfiler
public void startOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
startOperationProfile
in interface SessionProfiler
public void endOperationProfile(java.lang.String operationName)
endOperationProfile
in interface SessionProfiler
public void endOperationProfile(java.lang.String operationName, DatabaseQuery query, int weight)
endOperationProfile
in interface SessionProfiler
public void update(java.lang.String operationName, java.lang.Object value)
update
in interface SessionProfiler
public void occurred(java.lang.String operationName, org.eclipse.persistence.internal.sessions.AbstractSession session)
occurred
in interface SessionProfiler
public void occurred(java.lang.String operationName, DatabaseQuery query, org.eclipse.persistence.internal.sessions.AbstractSession session)
occurred
in interface SessionProfiler
public org.eclipse.persistence.internal.sessions.AbstractSession getSession()
public java.lang.String getSessionName()
public void setSession(Session session)
SessionProfiler
setSession
in interface SessionProfiler
public java.lang.Object profileExecutionOfQuery(DatabaseQuery query, Record row, org.eclipse.persistence.internal.sessions.AbstractSession session)
SessionProfiler
profileExecutionOfQuery
in interface SessionProfiler