You may ask, "Why the fancy terminology? Aren't you just doing method-level profiling and showing the method names?" The answer is no, because that would result in too much overhead and data. RTI does monitor many classes and methods by default, but only a small fraction of all those in your application server and deployed applications. More importantly, RTI doesn't just record all methods that it monitors: it first identifies recognizable business operations as they arrive at the application server, and then only records method calls that directly result from those business operations.
There are many ways that requests arrive: HTTP, JMS, WS, EJB calls, ESB messages, ORB, JDBC, and RMI. RTI watches all of these in order to identify business transactions. RTI breaks the requests into various types and uniquely identifies each BTM. The following table shows some types of BTMs and the attribute of each that is used as its identifier:
RTI monitors the classes within the app server that implement these operations. Each external request made of an app server is automatically discovered, assigned an ID, and monitored unless it is explicitly excluded or filtered.
RTI's transaction measurements are organized around the BTM.  RTI collects several levels of information about BTMs:
  • transaction rate and response time metrics,
  • transaction profile summaries, and
  • transaction deep-dive traces.
The transaction metrics are simple numeric values which provide a high-level view of the system performance.  The metrics can be used to monitor application performance at the transaction level.  Transaction metrics are available in JON/RHQ and area also recorded in deep-dive traces.  This is an example of RTI transaction metrics as viewed in the JON web console:
Transaction profile summaries provide a deeper level of information about application transaction performance.  Transaction profiles record summary call trees rooted at the top-level BTMs and summarize the performance of all BTM instances in a JVM with a single tree.   This is an example of a transaction profile from a JBoss server:
Transaction profiles are continuously collected by RTI for all discovered BTMs, unless RTI is configured to ignore them.  Learn more about transaction profiles in Section 2.4, “Lightweight Transaction Profiles”.
Transaction deep-dive traces record detailed information about each instance of a BTM that is traced.  Deep-dive traces can also follow transactions across JVMs as they move through the system.
RTI also collects information about system, JVM, and application resources.  These metrics are collected in deep-dive traces, and record resource usage during the time of the deep-dive trace.


loading table of contents...