Most metrics are contributed by plug-ins. Several plug-ins ship with the core product. Developers can create their own plug-ins. Only core plug-ins are documented here.
Tracing of calls to the Akka framework.
Table 1. Operations of Akka plug-in
Collection Point | Summary |
---|---|
akka.actor.ActorRef+.tell(..) | Akka Actor message passing |
akka.actor.UntypedActor+.onReceive(..) | Actor message recieve |
Table 2. Endpoint Analysis of Akka plug-in
Item | Description |
---|---|
Analyzer | AkkaUntypedActorEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for message recieve handled by Akka actor. |
Use of the @Insight*
annotations are optional. They make it easy for end users to define custom operation frames and end points without needing to create a plug-in. Because end user code modification is required to use the annotations, they are an option for users who cannot or do not wish to write aspects.
For more information on using the @Insight*
annotations, see Using Annotations To Customize Insight Data For Your Application.
Table 3. Operations of annotation plug-in
Collection Point | Summary |
---|---|
@InsightOperation | Any methods annotated with @InsightOperation will create an operation, including: basic source code location, method parameters and the return value. |
@InsightEndPoint | Similar to @InsightOperation; also indicates the operation should be treated as an end point. |
@InsightObscure | Used to annotate a value which should be obscured from Trace transmission or storage. |
@InsightSensitive | Used to mark a method which processes sensitive data. |
Table 4. Endpoint Analysis of annotation plug-in
Item | Description |
---|---|
Analyzer | AnnotatedMethodEndPointAnalyzer |
Core Operation | AnnotatedMethod Operation |
Score | High by default, customizable in annotation. |
Summary | Finds operations created from @InsightEndPoint, thus creating the end point. |
Traces calls to external HTTP resources using the Apache HTTP client version 3.
Table 5. Operations of Apache HTTP Client 3 plug-in
Collection Point | Summary |
---|---|
HttpClient.executeMethod(...) | Execution of HTTP calls |
Traces calls to external HTTP resources using the Apache HTTP client version 4.
Table 6. Operations of Apache HTTP Client 4 plug-in
Collection Point | Summary |
---|---|
HttpClient.execute(...) | Execution of HTTP calls |
Tracing of calls to the Axon framework. This plugin supports Axon 1.x versions as well as the 2.0 version that’s under development at the time of writing.
Table 7. Operations of Axon plug-in
Collection Point | Summary |
---|---|
org.axonframework.commandhandling.CommandBus.dispatch(..) | Command bus dispatch operation |
org.axonframework.commandhandling.annotation.CommandHandler | Command handlers methods |
org.axonframework.eventhandling.EventBus.publish(..) | Publish operation |
org.axonframework.eventhandling.annotation.EventHandler | Event handler methods |
org.axonframework.saga.annotation.SagaEventHandler | Saga Event handler methods |
Table 8. Endpoint Analysis of Axon plug-in
Item | Description |
---|---|
Analyzer | CommandHandlerEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for Axon command handler operations. |
Analyzer | EventHandlerEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for Axon event handler operations. |
Analyzer | SagaOperationEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for Axon Saga operations. |
Tracing of calls to BlazeDS. Supports the message broker APIs as well as command and message based communication.
Table 9. Operations of BlazeDS plug-in
Collection Point | Summary |
---|---|
MessageBroker.route*(..) | Message broker operations |
Service.serviceMessage(..) | Remote object and message based operations |
Service.serviceCommand(..) | Command based operations |
Table 10. Endpoint Analysis of BalzeDS plug-in
Item | Description |
---|---|
Analyzer | BlazeDSEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for HTTP requests handled by BlazeDS. |
Intercepts low level call from client to Cassandra DB over Thrift. Covers all high-level API such as Hector, Astyanax, etc.
Table 11. Operations of Cassandra plug-in
Collection Point | Summary |
---|---|
Cassandra.Client org.apache.cassandra.thrift.Cassandra.Client.Factory.getClient(..) | CassandraDB connect |
org.apache.cassandra.thrift.Cassandra.Client.new(..) | CassandraDB connect |
org.apache.cassandra.thrift.Cassandra.Client.execute_cql_query(ByteBuffer, Compression) | CassandraDB CQL queries |
CqlResult org.apache.cassandra.thrift.Cassandra.Client.execute_prepared_cql_query(int, List) | CassandraDB CQL queries |
CqlPreparedResult org.apache.cassandra.thrift.Cassandra.Client.prepare_cql_query(ByteBuffer, Compression) | CassandraDB CQL queries |
org.apache.cassandra.thrift.Cassandra.Client.get*(..) | CassandraDB CQL get operation |
org.apache.cassandra.thrift.Cassandra.Client.multiget_*(..) | CassandraDB CQL get operation |
org.apache.cassandra.thrift.Cassandra.Client.remove_counter(ByteBuffer, ColumnPath, ConsistencyLevel) | CassandraDB CQL remove operation |
org.apache.cassandra.thrift.Cassandra.Client.remove(ByteBuffer, ColumnPath, long, ConsistencyLevel) | CassandraDB CQL remove operation |
void org.apache.cassandra.thrift.Cassandra.Client.truncate(String) | CassandraDB CQL remove operation |
org.apache.cassandra.thrift.Cassandra.Client.add(ByteBuffer,ColumnParent,CounterColumn,ConsistencyLevel) | CassandraDB CQL update operation |
org.apache.cassandra.thrift.Cassandra.Client.insert(ByteBuffer,ColumnParent,Column,ConsistencyLevel) | CassandraDB CQL update operation |
org.apache.cassandra.thrift.Cassandra.Client.batch_mutate(Map,ConsistencyLevel) | CassandraDB CQL update operation |
org.apache.cassandra.thrift.Cassandra.Client.system_*(..) | CassandraDB system commands |
org.apache.cassandra.thrift.Cassandra.Client.set_keyspace(String) | CassandraDB system commands |
org.apache.cassandra.thrift.Cassandra.Client.login(AuthenticationRequest) | CassandraDB system commands |
Tracing of EclipseLink calls
Table 12. Operationf of Eclipse-Persistence framework plug-in
Collection Point | Collection Point |
---|---|
org.eclipse.persistence.sessions.Session | CRUD operations on persistent entities |
org.eclipse.persistence.sessions.DatabaseSession | Transaction operations and Database authentication operations |
Tracing of calls to Ehcache
Table 13. Operations of ehcache plug-in
Collection Point | Collection Point |
---|---|
Get | Get value from Ehcache |
Put | Put value in Ehcache |
Remove | Remove a value from Ehcache |
Replace | Replace a value in Ehcache |
Tracing of calls to EJB3 beans
Table 14. Operations of EJB3 plug-in
Collection Point | Summary |
---|---|
@Stateful | Execution of stateful beans |
@Stateless | Execution of stateful beans |
Tracing of file open and close operations
Table 15. Operations of files tracker plug-in
Collection Point | Summary |
---|---|
Open | A file was opened |
Close | A file was closed |
Tracing of calls to GemFire
Table 16. Operations of gemfire plug-in
Collection Point | Summary |
---|---|
Region | Writing and reading values using the GemFire Region APIs |
Query | Querying GemFire using the Query APIs |
Table 17. Operations of grails plug-in Grails-specific support for controller methods.
Collection Point | Summary |
---|---|
Grails Controller Method | Method on a Grails Controller to which the request is mapped. |
Table 18. Endpoint Analysis of grails plug-in
Item | Description |
---|---|
Analyzer | GrailsControllerMethodEndPointAnalyzer |
Core Operation | GrailsControllerMethodOperation |
Score | Varies. |
Summary | Creates an end point for HTTP requests handled by Grails. |
Provides data for following aspects of the Hadoop framework: Mapper, Reducer, Job
Table 19. Operations of Hadoop plug-in
Collection Point | Summary | |
---|---|---|
RunningJob org.apache.hadoop.mapred.JobClient.runJob(JobConf) | Collects Hadoop job start operation | |
public RunningJob org.apache.hadoop.mapred.JobClient.submitJob(..) | Collects Hadoop job start operation | |
org.apache.hadoop.mapreduce.Job.waitForCompletion(boolean) | ||
org.apache.hadoop.mapred.Mapper+.map(..) | Collects | Hadoop Mapper operation |
org.apache.hadoop.mapreduce.Mapper+.map(..) | Collects Hadoop Mapper operation | |
org.apache.hadoop.mapred.Reducer+.reduce(..) | Collects Hadoop Reducer operation | |
org.apache.hadoop.mapreduce.Reducer+.reduce(..) | Collects Hadoop Reducer operation |
Support for tracing Hibernate persistence operations, such as get, save, update, and delete. A Hibernate session represents one transaction, which may include several database transactions. The hibernate plug-in collects the method name (flush, save, update, delete, etc.), entity count (the number of entity instances associated with the Hibernate session), and collection count (the number of collection instances associated with the session).
Table 20. Operations of hibernate plug-in
Collection Point | Summary |
---|---|
org.hibernate.Session | CRUD operation on persistent entities. |
JAX-RS trace support.
Table 21. Operations of jax-rs plug-in
Collection Point | Summary |
---|---|
@DELETE | Collects DELETE operations. |
@GET | Collects GET operations. |
@HEAD | Collects HEAD operations. |
@POST | Collects POST operations. |
@PUT | Collects PUT operations. |
Table 22. Endpoint Analysis of grails plug-in
Item | Description |
---|---|
Analyzer | JaxrsEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for HTTP requests handled by JAX-RS. |
Tracing of calls to JCR (JSR-170).
Table 23. Operations of JCR plug-in
Collection Point | Summary |
---|---|
javax.jcr.Node+.getNode(String) | Collects JCR GetNode(s) requests |
javax.jcr.Node+.getNodes(..) | Collects JCR GetNode(s) requests |
javax.jcr.Session+.getItem(String) | Collects JCR GetNode(s) requests |
javax.jcr.Item+.remove() | Collects JCR Item remove operations |
javax.jcr.Node+.update(String) | Collects JCR Item update operations |
javax.jcr.Node+.addNode(..) | Collects JCR Item addNode operations |
javax.jcr.Repository+.login(Credentials, String) | Collects JCR Login operations |
javax.jcr.query.Query+.execute() | Collects JCR Query requests |
javax.jcr.Item+.save() | Collects JCR Item save operations |
javax.jcr.Item+.refresh(boolean) | Collects JCR Item refresh operations |
javax.jcr.Workspace+.copy(..) | Collects JCR Workspace copy requests |
javax.jcr.Workspace+.clone(String, String, String, boolean) | Collects JCR Workspace clone requests |
javax.jcr.Workspace+.move(String, String) | Collects JCR Workspace move requests |
javax.jcr.Session+.move(String, String) | Collects JCR Session move requests |
Table 24. Endpoint Analysis of JCR plug-in
Item | Description |
---|---|
Analyzer | JCREndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for JCR requests. |
Low level support for tracing raw SQL queries.
Table 25. Operations of jdbc plug-in
Collection Point | Summary |
---|---|
java.sql.Statement | Operation with the raw SQL statement. |
java.sql.PreparedStatement | Operation with the raw SQL statement and parameters. |
jms trace support.
Table 26. Operations of jms plug-in
Collection Point | Summary |
---|---|
MessageConsumer | Collects javax.jms.MessageConsumer APIs |
MessageListener | Collects javax.jms.MessageListener APIs |
MessageProducer | Collects javax.jms.MessageProducer APIs |
Table 27. Endpoint Analysis of jms plug-in
Item | Description |
---|---|
Analyzer | JMSConsumerEndPointAnalyzer and JMSMessageListenerEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for messages that are received on a queue or topic. |
Java Naming and Directory Interface (JNDI) trace support
Table 28. Operations of JNDI plug-in
Collection Point | Summary |
---|---|
javax.persistence.EntityManager | Collects entity and lifecycle operations |
Context+.bind | Collects JNDI bind operations |
Context+.rebind | Collects JNDI rebind operations |
Context+.unbind | Collects JNDI unbind operations |
Context+.lookup | Collects JNDI lookup operations |
Context+.lookupLink | Collects JNDI lookupLink operations |
Table 29. Endpoint Analysis of JNDI plug-in
Item | Description |
---|---|
Analyzer | JndiEndpointAnalyzer |
Score | Top. |
Summary | Creates an end point for lookup and bind operations. |
Java Persistence API (JPA) trace support
Table 30. Operations of JPA plug-in
Collection Point | Summary |
---|---|
javax.persistence.EntityManager | Collects entity and lifecycle operations |
javax.persistence.EntityTransaction | Collects transaction control on resource-level entity managers |
Java Transaction API (JTA) trace support
Table 31. Operations of JTA plug-in
Collection Point | Summary |
---|---|
javax.transaction.Transaction | Collects basic transaction operations |
javax.transaction.TransactionManager | Collects application server level transaction operations |
javax.transaction.UserTransaction | Collects application level transaction operations |
jws trace support.
Table 32. Operations of jws plug-in
Collection Point | Summary |
---|---|
@WebService | Collects the javax.jws.WebService APIs |
Table 33. Endpoint Analysis of jms plug-in
Item | Description |
---|---|
Analyzer | JwsEndPointAnalyzer |
Score | Varies. |
Summary | Creates an end point for HTTP requests handled by JAX-RS. |
LDAP trace support.
Table 34. Operations of LDAP plug-in
Collection Point | Summary |
---|---|
javax.naming.directory.DirContext | Collects LDAP lookup calls |
Logging frameworks support. Currently supports Log4J, SLF4J and Commons logging. This plugin will create error traces when an error or fatal message is logged.
Table 35. Operations of logging plug-in
Collection Point | Summary |
---|---|
Log.error and Log.fatal | Logging using commons logging |
Category.error and Category.fatal | Logging using Log4J |
Logger.error | Logging using SLF4J |
The plugin provides trace support for the Java Mail API.
Table 36. Operations of Mail plug-in
Collection Point | Summary |
---|---|
javax.mail.Transport | Collects send operation. |
Support for tracing MongoDB queries.
Table 37. Operations of mongodb plug-in
Collection Point | Summary |
---|---|
com.mongodb.DBCollection | Operations with the DBCollection APIs. Supported operations: insert, update, remove, save, find, count, group, distinct, map, reduce, and index. |
com.mongodb.DBCursor | Operations with the DBCursor APIs. Supported operations: next, skip, limit, toArray and sort operations. |
Support for tracing Quartz scheduler queries.
Table 38. Operations of quartz-scheduler plug-in
Collection Point | Summary |
---|---|
Job.execute | Quartz job execution |
Table 39. Endpoint Analysis of quartz-scheduler plug-in
Item | Description |
---|---|
Analyzer | QuartzSchedulerEndPointAnalyzer |
Score | Low. |
Summary | Creates an end point for Quartz triggered jobs. |
Support for tracing RabbitMQ queries.
Table 40. Operations of rabbitmq-client plug-in
Collection Point | Summary |
---|---|
com.rabbitmq.client.Consumer and com.rabbitmq.client.Channel | Consumer and Channel based message receivers |
com.rabbitmq.client.Channel | Channel based message publishing |
Table 41. Endpoint Analysis of rabbitmq-client plug-in
Item | Description |
---|---|
Analyzer | AbstractRabbitMQResourceAnalyzer |
Score | Low. |
Summary | Creates an end point for messages that are received on an exchange or routing key. |
Support for tracing Redis queries.
Table 42. Operations of redis plug-in
Collection Point | Summary |
---|---|
Jedis | Collects operations executed using the Jedis APIs |
AbstractRedisCollection | Collects operations executed using the Spring Data abstraction for Redis |
RMI (Java API for Remote Method Invocation) trace support
Table 43. Operations of RMI plug-in
Collection Point | Summary |
---|---|
java.rmi.registry.Registry | Collects RMI registry operations. |
Support for tracking task execution and scheduling.
Table 44. Operations of run-exec plug-in
Collection Point | Summary |
---|---|
java.util.concurrent.Executor | Collects concurrent task execute operations |
java.util.concurrent.ExecutorService | Collects concurrent task submission operations |
java.util.concurrent.ScheduledExecutorService | Collects concurrent task scheduling operations |
org.springframework.core.task.AsyncTaskExecutor | Collects concurrent task execution and submission operations |
java.lang.Thread | Collects thread start operations |
java.util.Timer | Collects task scheduling operations |
Creates end points for servlets and application lifecycle events such as start and stop. Support for servlet Listeners and Filters operation collection. For tc Runtime, the collection is done by the com.springsource.insight.collection.tcserver
packages.
Table 45. Operations of servlet plug-in
Collection Point | Summary |
---|---|
javax.servlet.Filter | Operation with the filter name and init parameters. |
javax.servlet.ServletContextListener | Operations for context initialization and destruction events with context parameters. |
Table 46. Endpoint Analysis of servlet plug-in
Item | Description |
---|---|
Analyzer | ServletEndPointAnalyzer |
Core Operation | HttpOperation |
Score | Low. |
Summary | Creates an end point for HTTP requests, grouped by the matching servlet, that are otherwise not accounted for by an end point. |
Support for tracking opening and closing of sockets
Table 47. Operations of socket plug-in
Collection Point | Summary |
---|---|
HttpURLConnection | Creating a new connection |
ServerSocketChannel, ServerSocket | Accepting a connection |
SocketChannel | Creating a new connection or opening a connection |
Socket | Creating a connection |
Support for tracing calls into the spring-batch framework.
Table 48. Operations of spring-batch plug-in
Collection Point | Summary |
---|---|
org.springframework.batch.core.Job | Collects job execution operations |
org.springframework.batch.core.Step | Collects step execution operations |
org.springframework.batch.core.job.flow.Flow | Collects flow start and resume operations |
org.springframework.batch.core.job.flow.FlowExecutor | Collects of flow execution operations |
org.springframework.batch.core.launch.JobLauncher | Collects job launcher run operations |
org.springframework.batch.core.step.tasklet.Tasklet | Collects tasklet execution |
Basic support for calls into Spring managed beans containing user business logic. Currently only calls into objects annotated with @Service or @Repository stereotype annotations are supported. Even if component scanning is not enabled, using these annotations allows the agent to pick up the operations.
Table 49. Operations of spring-core plug-in
Collection Point | Summary |
---|---|
@Repository | Creates an operation for calls into classes annotated with @Repository |
@Service | Creates an operation for calls into classes annotated with @Service |
Support for tracing calls into the spring-batch framework.
Table 50. Operations of spring-data plug-in
Collection Point | Summary |
---|---|
@RepositoryDefinition | Creates an operation for calls into classes annotated with @RepositoryDefinition |
org.springframework.data.repository.Repository | Collects calls into classes implementing the Repository marker interface |
Support for Spring Integration.
Table 51. Operations of spring-integration plug-in
Collection Point | Summary |
---|---|
MessageChannel | Sending messages using the MessageChannel APIs |
MessageHandler | Handling of messages using the MessageChannel APIs |
Transformer | Transforming of messages using the Transformer APIs |
Table 52. Endpoint Analysis of spring-integration plug-in
Item | Description |
---|---|
Analyzer | IntegrationEndPointAnalyzer |
Score | Low. |
Summary | Creates an end point for operations that were triggered in Spring Integration. |
Tracing support for Spring Security.
Table 53. Operations of spring-security plug-in
Collection Point | Summary |
---|---|
AuthenticationManager | Calls to the authenticate operation |
AuthenticationProvider | Calls to the authenticate operation |
UserDetailsService | Calls to the loadUserByUsername, createUser, updateUser, deleteUser, changePassword and userExists operations |
Detects the creation, commit, and rollback of a transaction using Spring's PlatformTransactionManager. Transaction boundaries defined with @Transactional or with standard Spring config are detected.
Table 54. Operations of spring-tx plug-in
Collection Point | Summary |
---|---|
PlatformTransactionManager | Defines the boundaries of a transaction. Attributes such as the propagation, isolation, timeout and read-only states are collected. |
Full support for events in the Spring MVC request life cycle. Both annotated @Controller and the legacy Controller interface class hierarchy flavors of MVC are supported.
Table 55. Operations of spring-web plug-in
Collection Point | Summary |
---|---|
@InitBinder | Data binder configuration including target name and type, allowed, required, and disallowed fields. |
@ModelAttribute | Methods returning objects that are added directly to the model, including the attribute name and value. |
@RequestMapping | Spring MVC request handlers. |
Validator | Validation logic. |
View | View rendering including view name and content type. |
ViewResolver | View resolution with the view name requested and the matching View object returned. |
Controller | Legacy Spring MVC Controller interface. |
DispatcherServlet | Handling of requests by Spring's DispatcherServlet. |
Table 56. Endpoint Analysis of spring-web plug-in
Item | Description |
---|---|
Analyzer | ControllerEndPointAnalyzer |
Core Operation | ControllerMethodOperation |
Score | Varies. |
Summary | Creates an end point for HTTP requests handled by Spring MVC. |
Provides support for tracing calls into Spring WebFlow classes.
Table 57. Operations of spring-webflow plug-in
Collection Point | Summary |
---|---|
org.springframework.webflow.execution.ActionExecutor | Collects the ActionExecutor helper class execution operations |
org.springframework.webflow.engine.impl.FlowExecutionImpl | Collects webflow execution start and state operations |
org.springframework.webflow.engine.Transition | Collects webflow state transition operations |
Provides support for tracing calls to the Sturts2 framework.
Table 58. Operations of Struts2 plug-in
Collection Point | Summary |
---|---|
@Action | Creates an operation for calls into classes annotated with @Action |
ActionSupport | Collects Struts2 operations |
Interceptor | Collects Struts2 custom interceptors operation |
ServletDispatcherResult | Collects Struts2 overall action results |
ActionProxy | Collects Struts2 flow execution start |
Provides server instrumentation for Tomcat and Pivotal tc Server internals that are not exposed by the public Servlet API
Table 59. Operations of tomcat plug-in
Collection Point | Summary |
---|---|
JSP Compiler | Operation showing time spent in JSP compilation (typically the first request to a JSP) and the compiler implementation. |
The following instrumentation is provided by default to the tc Runtime; it is not provided as a plug-in.
Table 60. Operations of Server-Based Instrumentation
Collection Point | Summary |
---|---|
AbstractHttpRequestOperationSupport | Creates an HTTP operation for every HTTP request to a web application. Full request and response headers are collected as provided by Tomcat and the Servlet API. Request parameters are provided if available (user parsing of the request body prevents parameters from being available). Request headers are collected before the application is involved, and response headers are collected after the application has returned. |
ApplicationLifecycleCollectionSupport | Creates traces for application life cycle events such as start and stop. Not all web applications have a start event when the server is first starting, if the agent has not fully initialized. |