Tracer Types

Document created by jakbutler on Nov 6, 2012Last modified by jakbutler on Jun 30, 2014
Version 5Show Document
  • View in full screen mode

When a Directive requires the <Tracer> parameter, you have the ability to specify one of the below tracers. Different tracers produce different kinds of metrics regarding the execution of the traced method(s), such as a timer, the execution rate per second or interval, or a count of invocations.

Note: If default metrics names are not listed for a tracer, a custom metric name must be provided as part of the "<Investigator Tree Path>" argument in the directive. Metric names also support keyword-based substitution. Additionally, some tracers, like the BlamePointTracer, generate multiple metrics and do not require specifying metric names.

 

Common Tracer Types 

Tracer NameDefinition

BlamePointTracer

The BlamePointTracer is the easiest tracer to use and the most commonly used. It produces the "Big 5" metrics: Average Response Time (ms), Responses Per Interval, Concurrent Invocations per Interval, Errors Per Interval, and Stall Count. This tracer also captures the Blame metrics (component interactions) for use in Transaction Traces.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count

Note: BlamePointTracer will always report Errors as 0. The ExceptionErrorReporter must be used in conjunction with the BlamePointTracer to track errors.

ConcurrentInvocationCounter

The ConcurrentInvocationCounter tracer type reports on the number of currently executing threads in a particular method. If you want to see where your threads are currently executing, then this is the appropriate tracer type. One especially useful tactic is to create concurrency metrics on all major application components so as to be able to spot bottleneck or resource contention anomalies downstream from them.
Default Metric Name: Concurrent Invocations or Concurrent Method Invocations 

MethodTimer / BlamedMethodTimer

The MethodTimer tracer reports the average response time in milliseconds for an instrumented method. Note that this measurement is on elapsed time, not CPU time. If you need to know how long your methods are taking to execute, then this is the appropriate tracer type. The Blamed variant, BlamedMethodTimer tracer should be used if you also want to capture Blame metrics (component interactions).
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)

MethodRateTracer / BlamedMethodRateTracer

The MethodRateTracer tracer reports the number of method invocations per second. If you want to know how many times your methods are executing in one second, then this is the appropriate tracer type. The Blamed variant, BlamedMethodRateTracer tracer should be used if you also want to capture Blame metrics. There are also two other kinds of rate tracer types used in specialized circumstances: OverThresholdTracer and UnderThresholdTracer. These tracer types will report the number of invocations per second over (or under) a user defined threshold. If you want to gauge how an application performance compares to service levels, then these are the appropriate tracer types.
Default Metric Name: Responses Per Second or Invocations Per Second

MethodTraceIncrementor / BlamedMethodTraceIncrementor

MethodTraceDecrementor / BlamedMethodTraceDecrementor

The MethodTraceIncrementor and MethodTraceDecrementor tracer types increment/decrement on method invocations and as such, measure simple counts. They can be combined in a pair so as to be able to count arithmetic tallies. If you want to count how many times a particular method has been executed, then the MethodTraceIncrementor is the appropriate tracer type (the reported metric will never fluctuate – it will start at zero and increase by one every time the method is invoked). By combining the MethodTraceDecrementor tracer type with the MethodTraceIncrementor tracer type, one can capture custom metrics that fluctuate. The Blamed variants, BlamedMethodTraceIncrementor and BlamedMethodTraceDecrementor tracer types should be used if you also want to capture Blame metrics.

PerIntervalCounter / BlamedPerIntervalCounter

The PerIntervalCounter tracer type reports the number of method invocations per interval. If you want to know how many times your methods are executing in an interval (as opposed to one second), then this is the appropriate tracer type.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval

StalledMethodTracer

The StalledMethodTracer tracer type reports which methods take too long to execute based on a user defined threshold (in milliseconds). If you want to know if any methods in your application are taking longer than 60 seconds to execute, then this is the appropriate tracer type.
Default Metric Name: Stalled Method Count


To Blame or Not To Blame 

Many tracers have two versions: a normal version and blamed version. The blamed version of a tracer produces the same metrics as the non-blamed version; however, a blamed tracer will add the traced component to any transaction traces, which helps to show component interaction.


All Tracer Types 

Tracer NameDefinition
BackendMarkerGenerates 5 separate metrics (listed below) for associated methods or classes. The Errors Per Interval metric will be generated, but will always report a value of 0 (zero) when this Tracer Type is used alone. To generate non-zero Errors Per Interval metric values, also apply ExceptionErrorReporter to associated methods or classes. The Stall Count metric threshold is set by the property introscope.agent.stalls.thresholdseconds in the IntroscopeAgent.profile. Metric naming is automatic. Explicitly identifies methods as Backends metrics, i.e. those that were not automatically identified by Introscope out of the box, as representing calls to backend systems. Participate in the Application Overview grid and heuristics. Generated metrics will appear under the Backends folder and Called Backends folder and are automatically named. The Investigator Tree Path name declaration is "<Resource>", without the explicit ":<Metric>" naming portion. Blame is implicit, but does not apply to Concurrent Invocations. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
BlamedComponentTimerDeprecated.
BlamedConcurrentComponentTimerDeprecated.
BlamedMethodCPUTimerReports the average CPU time (in milliseconds) used during method execution with Blame enabled. This tracer will factor in every method invocation. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodCPUTimerDifferentInstancesReports the average CPU time (in milliseconds) used during method execution with Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodCPUTimerDifferentMethodsReports the average CPU time (in milliseconds) used during method execution with Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodInvocationCounterDeprecated.
BlamedMethodNanoCPUTimerReports the average CPU time (in nanoseconds) used during method execution. This tracer will factor in every method invocation. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodNanoCPUTimerDifferentInstancesReports the average CPU time (in milliseconds) used during method execution. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodNanoCPUTimerDifferentMethodsReports the average CPU time (in milliseconds) used during method execution. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
BlamedMethodNanoTimerCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer will factor in every method invocation. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
BlamedMethodNanoTimerDifferentInstancesCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer is applied the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
BlamedMethodNanoTimerDifferentMethodsCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Blame enabled. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
BlamedMethodRateTracerCalculates the number of completed invocations per second with Blame enabled. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
BlamedMethodRateTracerDifferentInstancesCalculates the number of invocations per second with Blame enabled. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
BlamedMethodRateTracerDifferentMethodsCalculates the number of invocations per second with Blame enabled. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
BlamedMethodStartTraceDecrementorPerpetual counter that decreases by 1 at the start of a method invocation from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedMethodStartTraceIncrementorPerpetual counter that increases by 1 at the start of a method invocation from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedMethodTimerCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval with Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)
BlamedMethodTimerDifferentInstancesCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval with Blame enabled. When aggregated for a class, This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)
BlamedMethodTimerDifferentMethodsCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval with Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)
BlamedMethodTraceDecrementorPerpetual counter that decreases by 1 for each completion of a method invocation from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedMethodTraceIncrementorPerpetual counter that increases by 1 for each completion of a method invocation from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedNormalCompletionMethodTraceDecrementorPerpetual counter that decreases by 1 for each method invocation from another object instance that completes without throwing an exception. Blame enabled. Supported on Java & .NET Agents.
BlamedNormalCompletionMethodTraceIncrementorPerpetual counter that increases by 1 for each method invocation from another object instance that completes without throwing an exception. Blame enabled. Supported on Java & .NET Agents.
BlamedNormalCompletionPerIntervalCounterCounts the number of method invocations that complete without throwing an exception, per time interval. Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
BlamedNormalCompletionPerIntervalCounterDifferentInstancesCounts the number of method invocations that complete without throwing an exception, per time interval. Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
BlamedNormalCompletionPerIntervalCounterDifferentMethodsCounts the number of method invocations that complete without throwing an exception, per time interval. Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
BlamedNormalCompletionSimpleDecrementorPerpetual counter that decreases by 1 for each method invocation that completes without throwing an exception, regardless of whether called from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedNormalCompletionSimpleIncrementorPerpetual counter that increases by 1 for each method invocation that completes without throwing an exception, regardless of whether called from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedOverThresholdPerIntervalCounterCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
BlamedOverThresholdPerIntervalCounterDifferentInstancesCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
BlamedOverThresholdPerIntervalCounterDifferentMethodsCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
BlamedPerIntervalCounterCalculates the number of invocations that completed during the time interval with Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
BlamedPerIntervalCounterDifferentInstancesCalculates the number of invocations that completed during the time interval with Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
BlamedPerIntervalCounterDifferentMethodsCalculates the number of invocations that completed during the time interval with Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
BlamedSimpleDecrementorPerpetual counter that decreases by 1 for each completion of a method invocation, regardless of whether from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedSimpleIncrementorPerpetual counter that increases by 1 for each completion of a method invocation, regardless of whether from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedSimpleStartDecrementorPerpetual counter that decreases by 1 at the start of a method invocation, regardless of whether from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedSimpleStartIncrementorPerpetual counter that increases by 1 at the start of a method invocation, regardless of whether from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedThrownExceptionMethodTraceDecrementorPerpetual counter that decreases by 1 for each exception thrown by a method, caught or not, when called from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedThrownExceptionMethodTraceIncrementorPerpetual counter that increases by 1 for each exception thrown by a method, caught or not, when called from another object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedThrownExceptionPerIntervalCounterCounts the number of exceptions thrown by methods, caught or not, per time interval. Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
BlamedThrownExceptionPerIntervalCounterDifferentInstancesCounts the number of exceptions thrown by methods, caught or not, per time interval. Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
BlamedThrownExceptionPerIntervalCounterDifferentMethodsCounts the number of exceptions thrown by methods, caught or not, per time interval. Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
BlamedThrownExceptionSimpleDecrementorPerpetual counter that decreases by 1 for each exception thrown by a method, caught or not, regardless of whether called from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedThrownExceptionSimpleIncrementorPerpetual counter that increases by 1 for each exception thrown by a method, caught or not, regardless of whether called from another object instance or the same object instance. Blame enabled. Supported on Java & .NET Agents.
BlamedUnderThresholdPerIntervalCounterCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). Blame enabled. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
BlamedUnderThresholdPerIntervalCounterDifferentInstancesCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
BlamedUnderThresholdPerIntervalCounterDifferentMethodsCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). Blame enabled. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
BlamePointTracerGenerates 5 separate metrics (listed below) for associated methods or classes. The Errors Per Interval metric will be generated, but will always report a value of 0 (zero) when this Tracer Type is used alone. To generate non-zero Errors Per Interval metric values, also apply ExceptionErrorReporter to associated methods or classes. The Stall Count metric threshold is set by the property introscope.agent.stalls.thresholdseconds in the IntroscopeAgent.profile. Metric naming is automatic. The Investigator Tree Path name declaration is "<Resource>", without the explicit ":<Metric>" naming portion. Blame is implicit, but does not apply to Concurrent Invocations. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
BlamePointTracerDifferentInstancesGenerates 5 separate metrics (listed below) for associated methods or classes. The Errors Per Interval metric will be generated, but will always report a value of 0 (zero) when this Tracer Type is used alone. To generate non-zero Errors Per Interval metric values, also apply ExceptionErrorReporter to associated methods or classes. The Stall Count metric threshold is set by the property introscope.agent.stalls.thresholdseconds in the IntroscopeAgent.profile. Metric naming is automatic. The Investigator Tree Path name declaration is "<Resource>", without the explicit ":<Metric>" naming portion. Blame is implicit, but does not apply to Concurrent Invocations. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
BlamePointTracerDifferentMethodsGenerates 5 separate metrics (listed below) for associated methods or classes. The Errors Per Interval metric will be generated, but will always report a value of 0 (zero) when this Tracer Type is used alone. To generate non-zero Errors Per Interval metric values, also apply ExceptionErrorReporter to associated methods or classes. The Stall Count metric threshold is set by the property introscope.agent.stalls.thresholdseconds in the IntroscopeAgent.profile. Metric naming is automatic. The Investigator Tree Path name declaration is "<Resource>", without the explicit ":<Metric>" naming portion. Blame is implicit, but does not apply to Concurrent Invocations. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
BlamePointTracerLiteUnsupported Community Download. Generates no metrics. When applied, classes and methods will participate in Transaction Traces. Blame is implicit. This tracer will factor in every method invocation. The Directive statement will still require the "<Resource>" declaration. Works with Java Agents.
CEMTracerBusiness Processes|<CEM Business Process>|Business Transaction|<CEM Business Transaction>". In some HTTP Posts, the Stall Count and Concurrent Invocations will not be produced per CEM Business Transaction. Blame is implicit, but does not apply to Concurrent Invocations. This tracer will factor in every method invocation. Supported on Java Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
ConcurrentInvocationCounterCalculates the number of method invocations that have not completed at the end of the interval period. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Concurrent Invocations or Concurrent Method Invocations
ConcurrentInvocationCounterDifferentInstancesCalculates the number of method invocations that have not completed at the end of the interval period. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Concurrent Invocations or Concurrent Method Invocations
ConcurrentInvocationCounterDifferentMethodsCalculates the number of method invocations that have not completed at the end of the interval period. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Concurrent Invocations or Concurrent Method Invocations
ConcurrentResponseTimerDeprecated.
DatabaseBackendTracerInternal use only. A version of the BackendMarker used with database drivers that will format the metric name (under the Backends Resource) based on the database URL connection string. Supports the following database driver: Microsoft for SQL Server. Supported on .NET Agents.
DbCommandTracer

Internal use only. Supported on Java & .NET Agents, but with different meanings:

On Java, a version of the BackendMarker used with database drivers that will format the metric name (under the Backends Resource) based on the database URL connection string. Supports the following database drivers: Oracle for Oracle, BEA for Oracle, BEA for Pointbase, IBM for DB2, IBM for Informix, SAP for MaxDB, and Microsoft for SQL Server. On .NET, generates 5 separate metrics (listed below) for each SQL query, insert or update statement, based on the SQL text, without per-query parameters. Metrics will appear under the Resource "Backends|<Database Instance>|SQL".

Supports the Microsoft for .NET database drivers. Otherwise, database instance name may appear as unknown, but SQL statements will appear correctly.

Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
DriverAwareBlamedMethodRateTracerDifferentInstancesCalculates the number of invocations per second with Blame enabled. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Queries Per Second
DriverAwareBlamedMethodTimerDifferentInstancesCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval with Blame enabled. When aggregated for a class, This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Average Query Time (ms)
DriverAwareBlamedPerIntervalCounterDifferentInstancesCalculates the number of invocations that completed during the time interval with Blame enabled. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Queries Per Interval
DriverAwareConcurrentInvocationCounterDifferentInstancesCalculates the number of method invocations that have not completed at the end of the interval period. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Concurrent Invocations
DriverAwareMethodRateTracerDifferentInstancesCalculates the number of invocations per second. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Queries Per Second
DriverAwareMethodTimerDifferentInstancesCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Average Query Time (ms)
DriverAwarePerIntervalCounterDifferentInstancesCalculates the number of invocations that completed during the time interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Queries Per Interval
DriverAwareStalledMethodTracerCalculates the number of method invocations currently running that have not completed within the specified threshold (in milliseconds). This tracer will factor in every method invocation. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Stalled Method Count
DriverAwareStalledMethodTracerDifferentInstancesCalculates the number of method invocations currently running that have not completed within the specified threshold (in milliseconds). This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Separates metrics based on JDBC Driver name. Supported on Java Agents.
Default Metric Name: Stalled Method Count
DumpStackTraceTracerDumps a stack trace to the instrumented application's stderr for methods to which it is applied. The exception stack trace thrown by DumpStackTraceTracer is not a true Exception - it is a mechanism for printing the method stack trace. This Tracer does not produce a metric, therefore the "<Investigator Tree Path>" declaration is ignored, but is still required - must be of the form "<non-empty-character>:<non-empty character>" in order to parse properly. Warning: This feature imposes heavy system overhead. Supported on Java & .NET Agents.
ExceptionErrorReporterA per interval counter based on the number of exceptions being thrown (i.e. uncaught) from the identified method(s). If an exception is thrown, the error message is based on the return value of the getMessage() method called on the exception object. In order to capture the error message, must be used with a *WithParameters* Directive, otherwise will only increment the Errors Per Interval metric. To see error messages, requires ErrorDetector, otherwise will only increment the Errors Per Interval metric. Requires Agent be at 6.0 or later. Blame is implicit. Supported on Java Agents.
Default Metric Name: Errors Per Interval
FrontendMarkerGenerates 5 separate metrics (listed below) for associated methods or classes. The Errors Per Interval metric will be generated, but will always report a value of 0 (zero) when this Tracer Type is used alone. To generate non-zero Errors Per Interval metric values, also apply ExceptionErrorReporter to associated methods or classes. The Stall Count metric threshold is set by the property introscope.agent.stalls.thresholdseconds in the IntroscopeAgent.profile. Metric naming is automatic. Explicitly identifies methods as Frontends metrics, i.e. to override those that were automatically identified by Introscope out of the box as representing the entry point to the application. Generated metrics will appear under the Frontends folder and are automatically named. The Investigator Tree Path name declaration is “<Resource>”, without the explicit “:<Metric>” naming portion. To participate in the Application Overview grid and heuristics, the resource name declaration must be of the format “Apps|<Resource>”. Blame is implicit, but does not apply to Concurrent Invocations. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
HTTPErrorCodeReporterReports the number of errors sent per interval from Servlets and JSPs. Gathers the error message from the JSP and Servlet method parameter values. In order to capture the error message, must be used with a *WithParameters* Directive, otherwise will only increment the Errors Per Interval metric. Not recommended to be used in custom PBDs. To see error messages, requires ErrorDetector, otherwise will only increment the Errors Per Interval metric. Requires Agent be at 6.0 or later. Blame is implicit. Supported on Java Agents.
Default Metric Name: Errors Per Interval
HttpServletTracerApps Resource. Supported on Java Agents.
MethodCalledErrorReporterA per interval counter based on methods where the very act of the method being called means that an error has occurred. The error message is based on the class and method called. In order to capture the error message, must be used with a *WithParameters* Directive and requires ErrorDetector, otherwise will only increment the Errors Per Interval metric. Requires Agent be at 6.0 or later. Blame is implicit. Supported on Java Agents.
Default Metric Name: Errors Per Interval
MethodCPUTimerReports the average CPU time (in milliseconds) used during method execution. This tracer will factor in every method invocation. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
MethodCPUTimerDifferentInstancesReports the average CPU time (in milliseconds) used during method execution. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
MethodCPUTimerDifferentMethodsReports the average CPU time (in milliseconds) used during method execution. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Supported on Java Agents.
Default Metric Name: Average CPU Time (ms)
MethodInvocationCounterDeprecated.
MethodNanoCPUTimerReports the average CPU time (in nanoseconds) used during method execution. This tracer will factor in every method invocation. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Supported on Java Agents.
Default Metric Name: Average CPU Time (ns)
MethodNanoCPUTimerDifferentInstancesReports the average CPU time (in milliseconds) used during method execution. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Supported on Java Agents.
Default Metric Name: Average CPU Time (ns)
MethodNanoCPUTimerDifferentMethodsReports the average CPU time (in milliseconds) used during method execution. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. This tracer requires a platform monitor on the supported platform (either AIX 5.2 or RedHat Enterprise Linux 3.0). Requires Java 5. Supported on Java Agents.
Default Metric Name: Average CPU Time (ns)
MethodNanoTimerCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer will factor in every method invocation. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
MethodNanoTimerDifferentInstancesCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer is applied the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
MethodNanoTimerDifferentInstancesCalculates the method execution time (in nanoseconds) of methods that have completed during the reported interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. This tracer provides nanosecond precision, but not necessarily nanosecond accuracy; it relies on the JVM to provide the current value of the most precise available system timer, in nanoseconds. Requires Java 5. Supported on Java Agents.
Default Metric Name: Average Response Time (ns)
MethodRateTracerCalculates the number of invocations per second. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
MethodRateTracerDifferentInstancesCalculates the number of invocations per second. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer is applied the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
MethodRateTracerDifferentMethodsCalculates the number of invocations per second. For a 15 second interval, the remainder (14 or less) will be truncated. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Second or Invocations Per Second
MethodStartTraceDecrementorPerpetual counter that decreases by 1 at the start of a method invocation from another object instance. Supported on Java & .NET Agents.
MethodStartTraceIncrementorPerpetual counter that increases by 1 at the start of a method invocation from another object instance. Supported on Java & .NET Agents.
MethodTimerCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)
MethodTimerDifferentInstancesCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.

Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)

MethodTimerDifferentMethodsCalculates the method execution time (in milliseconds) of methods that have completed during the reported interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Average Response Time (ms) or Average Method Invocation Time (ms) or Average Query Time (ms)
MethodTraceDecrementorPerpetual counter that decreases by 1 for each completion of a method invocation from another object instance. Supported on Java & .NET Agents.
MethodTraceIncrementorPerpetual counter that increases by 1 for each completion of a method invocation from another object instance. Supported on Java & .NET Agents.
NormalCompletionMethodTraceDecrementorPerpetual counter that decreases by 1 for each method invocation from another object instance that completes without throwing an exception. Supported on Java & .NET Agents.
NormalCompletionMethodTraceIncrementorPerpetual counter that increases by 1 for each method invocation from another object instance that completes without throwing an exception. Supported on Java & .NET Agents.
NormalCompletionPerIntervalCounterCounts the number of method invocations that complete without throwing an exception, per time interval. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
NormalCompletionPerIntervalCounterDifferentInstancesCounts the number of method invocations that complete without throwing an exception, per time interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
NormalCompletionPerIntervalCounterDifferentMethodsCounts the number of method invocations that complete without throwing an exception, per time interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
NormalCompletionSimpleDecrementorPerpetual counter that decreases by 1 for each method invocation that completes without throwing an exception, regardless of whether called from another object instance or the same object instance. Supported on Java & .NET Agents.
NormalCompletionSimpleIncrementorPerpetual counter that increases by 1 for each method invocation that completes without throwing an exception, regardless of whether called from another object instance or the same object instance. Supported on Java & .NET Agents.
OverThresholdPerIntervalCounterCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). This tracer will factor in every method invocation. Supported on Java & .NET Agents.
OverThresholdPerIntervalCounterDifferentInstancesCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
OverThresholdPerIntervalCounterDifferentMethodsCalculates per interval the number of invocations that completed over the specified time threshold (in milliseconds). This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
PageInfoTracerApps|<Application Virtual Directory Name>|URLs|<URL Name>. Supported on .NET Agents.
PerIntervalCounterCalculates the number of invocations that completed during the time interval. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
PerIntervalCounterDifferentInstancesCalculates the number of invocations that completed during the time interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
PerIntervalCounterDifferentMethodsCalculates the number of invocations that completed during the time interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
Default Metric Name: Responses Per Interval or Method Invocations Per Interval
ResponseTimerDeprecated.
ResponseTimerWithPackageNameDeprecated.
ServletHeaderDecoratorDecorates HTTP responses from Servlets with a unique identifier, allowing the correllation of CEM defects and Introscope Transaction Traces. In CEM, necessary to generate application server details for defective transactions and to present hyperlinks from defect and incident detail pages to Transaction Traces and Metrics in the Introscope Workstation. Applicable only to Servlet method service() & JSP method _jspservice(). Requires that Servlet container implement 2.1 specification or later. Must be used with a *WithParameters* Directive. Does not generate Metrics. Supported on Java Agents.
SimpleDecrementorPerpetual counter that decreases by 1 for each completion of a method invocation, regardless of whether from another object instance or the same object instance. Supported on Java & .NET Agents.
SimpleIncrementorPerpetual counter that increases by 1 for each completion of a method invocation, regardless of whether from another object instance or the same object instance. Supported on Java & .NET Agents.
SimpleInstanceCounterCounts the approximate number of Object Instances for a particular class. By default, used by the InstanceCounts Tracer Group. Supported on Java & .NET Agents.
Default Metric Name: Approximate Instance Count
SimpleStartDecrementorPerpetual counter that decreases by 1 at the start of a method invocation, regardless of whether from another object instance or the same object instance. Supported on Java & .NET Agents.
SimpleStartIncrementorPerpetual counter that increases by 1 at the start of a method invocation, regardless of whether from another object instance or the same object instance. Supported on Java & .NET Agents.
SQLBackendTracerInternal use only. A version of the BackendMarker used with database drivers that will format the metric name (under the Backends Resource) based on the database URL connection string. Supports Oracle, DB2, and Microsoft SQL Server on Java. Supports Microsoft SQL Server on .NET. Supported on Java & .NET Agents.
StalledMethodTracerCalculates the number of method invocations currently running that have not completed within the specified threshold (in milliseconds). This tracer will factor in every method invocation. A Metric will not be published until a method stalls. Supported on Java & .NET Agents.
Default Metric Name: Stalled Method Count
StalledMethodTracerDifferentInstancesCalculates the number of method invocations currently running that have not completed within the specified threshold (in milliseconds). This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. A Metric will not be published until a method stalls. Supported on Java & .NET Agents.
Default Metric Name: Stalled Method Count
StalledMethodTracerDifferentMethodsCalculates the number of method invocations currently running that have not completed within the specified threshold (in milliseconds). This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. A Metric will not be published until a method stalls. Supported on Java & .NET Agents.
Default Metric Name: Stalled Method Count
StatementBackendTracer<Database Instance>|SQL". On Java, supports the following database drivers: Oracle for Oracle, BEA for Oracle, BEA for Pointbase, IBM for DB2, IBM for Informix, SAP for MaxDB, and Microsoft for SQL Server. Supported on Java Agents.
Default Metric Names: Average Response Time (ms), Concurrent Invocations, Errors Per Interval, Responses Per Interval, Stall Count
StatementExecuteQueryMethodTimerDeprecated.
StatementExecuteUpdateMethodTimerDeprecated.
ThisErrorReporterTraces the number of exceptions thrown (caught or uncaught) per interval by tracing the constructor of the specified exception class(es). The error message is based on the return value of the toString() method of the exception object. Recommended for custom exceptions. In order to capture the error message, must be used with a *WithParameters* Directive, otherwise will only increment the Errors Per Interval metric. To see error messages, requires ErrorDetector, otherwise will only increment the Errors Per Interval metric. Requires Agent be at 6.0 or later. Blame is implicit. Supported on Java Agents.
Default Metric Name: Errors Per Interval
ThresholdMethodTimerDeprecated.
ThrownExceptionMethodTraceDecrementorPerpetual counter that decreases by 1 for each exception thrown by a method, caught or not, when called from another object instance. Supported on Java & .NET Agents.
ThrownExceptionMethodTraceIncrementorPerpetual counter that increases by 1 for each exception thrown by a method, caught or not, when called from another object instance. Supported on Java & .NET Agents.
ThrownExceptionPerIntervalCounterCounts the number of exceptions thrown by methods, caught or not, per time interval. This tracer will factor in every method invocation. Supported on Java & .NET Agents.
ThrownExceptionPerIntervalCounterDifferentInstancesCounts the number of exceptions thrown by methods, caught or not, per time interval. This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
ThrownExceptionPerIntervalCounterDifferentMethodsCounts the number of exceptions thrown by methods, caught or not, per time interval. This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.
ThrownExceptionSimpleDecrementorPerpetual counter that decreases by 1 for each exception thrown by a method, caught or not, regardless of whether called from another object instance or the same object instance. Supported on Java & .NET Agents.
ThrownExceptionSimpleIncrementorPerpetual counter that increases by 1 for each exception thrown by a method, caught or not, regardless of whether called from another object instance or the same object instance. Supported on Java & .NET Agents.
UnderThresholdPerIntervalCounterCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). This tracer will factor in every method invocation. Supported on Java & .NET Agents.
UnderThresholdPerIntervalCounterDifferentInstancesCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). This tracer is applied to the first method invoked in the object - any successive calls within that object will be ignored until the first method finishes. Supported on Java & .NET Agents.
UnderThresholdPerIntervalCounterDifferentMethodsCalculates per interval the number of invocations that completed under the specified time threshold (in milliseconds). This tracer will run on the first method invoked in an instance with a given method name but any successive calls to other methods with the same name will be ignored until the first method finishes. This applies to calls to another method with the same name but different signature, recursive calls to the exact same method and calls to a method with the same name in the superclass. Supported on Java & .NET Agents.

Attachments

    Outcomes