|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Agent
This interface exposes the call flow agent API. This is intended to be called by various container trap points. An implementation of the call flow agent would collect the data supplied, and persist it, for later querying and analysis. Further, it is possible to set filters, based on client side attributes such as caller IP address and caller security principal (USER). The trap point call sequence has a specific order: { requestStart, addRequestInfo*, requestInfoComplete, (startTime, (webMethodStart|ejbMethodStart))*, ((ejbMethodEnd|webMethodEnd), endTime)*, requestEnd } Data schema: Tables RequestStart: { RequestId, Timestamp, CallerIPAddress, RemoteUser } RequestEnd : { RequestId, Timestamp } StartTime : { RequestId, TimeStamp, ContainerTypeOrApplicationType } EndTime : { RequestId, TimeStamp, ContainerTypeOrApplicationType } MethodStart : { MethodName, RequestId, Timestamp, ComponentType, ThreadId, AppId, ModuleId, ComponentId, TransactionId, SecurityId } MethodEnd : { RequestId, Timestamp, Exception }
| Method Summary | |
|---|---|
void |
addRequestInfo(RequestInfo requestInfo,
String value)
This method may be called by the container during request dispatch, to add request information such as caller IP address, and remote user name. |
void |
clearData()
Clear all accumulated data collected in the previous CallFlow runs from the database. |
boolean |
deleteRequestIds(String[] requestIds)
Delete request ids from the database |
void |
ejbMethodEnd(CallFlowInfo info)
This method is called by a request processor thread, after invoking a business method on a target EJB. |
void |
ejbMethodStart(CallFlowInfo info)
This method is called by a request processor thread, before invoking a business method on a target EJB. |
void |
endTime()
This method is called by a request processor thread, when the thread of execution transitions out of the container code. |
void |
entityManagerMethodEnd()
This method is called the persistence container on a request processor thread, after invoking a method on the |
void |
entityManagerMethodStart(EntityManagerMethod entityManagerMethod)
This method is called the persistence container on a request processor thread, before invoking a method on the |
void |
entityManagerQueryEnd()
This method is called the persistence container on a request processor thread, after invoking a method on the |
void |
entityManagerQueryStart(EntityManagerQueryMethod queryMethod)
This method is called the persistence container on a request processor thread, before invoking a method on the |
String |
getCallerIPFilter()
Gets the IP address of the client, only for which, call flow information would be collected. |
String |
getCallerPrincipalFilter()
Gets the caller principal, only for which, call flow information would be collected. |
List<Map<String,String>> |
getCallStackForRequest(String requestId)
|
Map<String,String> |
getPieInformation(String requestID)
|
List<Map<String,String>> |
getRequestInformation()
|
ThreadLocalData |
getThreadLocalData()
|
boolean |
isEnabled()
Get enabled information of call flow's persistent logging. |
void |
registerListener(Listener listener)
Register a listener. |
void |
requestEnd()
This method is called by a request processor thread, after completion of request processing. |
void |
requestStart(RequestType requestType)
This method is called by a request processor thread, dispatched by the container to process a new request on behalf of a client, before any request processing activity begins. |
void |
setCallerIPFilter(String ipAddress)
Specifies the IP address of the client, only for which, call flow information would be collected. |
void |
setCallerPrincipalFilter(String callerPrincipal)
Specifies the caller principal, only for which, call flow information would be collected. |
void |
setEnable(boolean enable)
Enable or disable call flow. |
void |
startTime(ContainerTypeOrApplicationType type)
This method is called by a request processor thread, when the thread of execution transitions into the container code. |
void |
unregisterListener(Listener listener)
Unregister a listener. |
void |
webMethodEnd(Throwable exception)
This method is called by a request processor thread, after invoking a target method on a filter or servlet. |
void |
webMethodStart(String methodName,
String applicationName,
String moduleName,
String componentName,
ComponentType componentType,
String callerPrincipal)
This method is called by a request processor thread, before invoking a target method on a filter or servlet. |
| Method Detail |
|---|
void requestStart(RequestType requestType)
requestType - Type of the request.
void addRequestInfo(RequestInfo requestInfo,
String value)
startTime is called.
void requestEnd()
void startTime(ContainerTypeOrApplicationType type)
type - Describes the type of the container or application.void endTime()
void ejbMethodStart(CallFlowInfo info)
info - This object encapsulates information such as method name,
component type, application name, module name, component name,
transaction id, and security id.void ejbMethodEnd(CallFlowInfo info)
info - This object encapsulates information about the outcome of
the invocation such as exception, if any.
void webMethodStart(String methodName,
String applicationName,
String moduleName,
String componentName,
ComponentType componentType,
String callerPrincipal)
void webMethodEnd(Throwable exception)
void entityManagerMethodStart(EntityManagerMethod entityManagerMethod)
EntityManager interfacevoid entityManagerMethodEnd()
EntityManager interfacevoid entityManagerQueryStart(EntityManagerQueryMethod queryMethod)
Query interfacevoid entityManagerQueryEnd()
Query interfaceThreadLocalData getThreadLocalData()
void registerListener(Listener listener)
void unregisterListener(Listener listener)
void setEnable(boolean enable)
enable - true, to turn on call flow.boolean isEnabled()
void setCallerIPFilter(String ipAddress)
String getCallerIPFilter()
void setCallerPrincipalFilter(String callerPrincipal)
String getCallerPrincipalFilter()
void clearData()
boolean deleteRequestIds(String[] requestIds)
List<Map<String,String>> getRequestInformation()
List<Map<String,String>> getCallStackForRequest(String requestId)
Map<String,String> getPieInformation(String requestID)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||