Properties Reference .NET Agent

The .Net agent properties file is named the IntroscopeAgent.profile (agent profile), and is located in the <.NET_Home> directory.
apmdevops106
The .Net agent properties file is named the IntroscopeAgent.profile (agent profile), and is located in the <
.NET_Home
> directory.
All the .NET agent properties apply to on-premise CA APM, and only some properties apply to CA Digital Experience Insights Application Performance Management.
The .NET agent profile uses the
com.wily.introscope.agentProfile
environment variable to communicate the agent profile location to the agent.
The three important .NET environment variables are:
  • com.wily.introscope.agentProfile=%{INSTALL_DIRECTORY}%\wily\IntroscopeAgent.profile
    This variable specifies the .NET agent profile location.
  • Cor_Enable_Profiling=0x1
    This variable enables COR profiling.
  • COR_PROFILER={5F048FC6-251C-4684-8CCA-76047B02AC98}
    This variable specifies the GUID of the native COM profiler DLL. The CLR EE uses the registry to look up the profiler.
2
2
.NET Agent to Enterprise Manager Connection
This property controls how the agent connects to the Enterprise Manager using SSL.
agentManager.url.1
This property specifies the following settings:
  • The host name of the computer running the Enterprise Manager that the agent connects to by default
  • The port number on the computer that hosts the Enterprise Manager that listens for connections from the agent
  • SSL as the communication channel
Default:
localhost
When you are using Secure Socket Layer (SSL) protocol, the default port that listens for agent connections is 5443.
Example:
agentManager.url.1=ssl://localhost:5443
Note:
Restart the managed application for changes to this property to take effect.
Agent Failover
If the agent loses connection with its primary Enterprise Manager, the following properties specify the backup Enterprise Managers to which the agent tries to connect. Also, how often the agent tries to reconnect to its primary Enterprise Manager.
introscope.agent.enterprisemanager.connectionorder
This property specifies the connection order of backup Enterprise Managers the agent uses if it is disconnected from its default Enterprise Manager.
Property settings
Names of other Enterprise Managers the agent can connect to.
Default:
The Enterprise Manager that is defined by the DEFAULT host name, port number, and socket factory properties.
Example:
introscope.agent.enterprisemanager.connectionorder=DEFAULT
Notes:
  • Use a comma separated list.
  • You must restart the managed application before changes to this property take effect.
introscope.agent.enterprisemanager.failbackRetryIntervalInSeconds
This property specifies the number of seconds between attempts by a denied agent to reconnect to these Enterprise Managers:
  • Enterprise Managers that are based on the order that is configured in the agent profile
    introscope.agent.enterprisemanager.connectionorder
    property value.
  • Any Enterprise Manager allowed based on loadbalancing.xml configuration.
If an agent cannot connect to an Enterprise Manager, it handles connections in these ways:
  • Tries to connect to the next allowed Enterprise Manager.
  • Does not connect to any Enterprise Manager on which it is disallowed.
For information about configuring loadbalancing.xml and agent to Enterprise Manager connections, see Configure MOM Agent Load Balancing.
Default
The default interval is 120 seconds.
Example
introscope.agent.enterprisemanager.failbackRetryIntervalInSeconds=120
Notes
Restart the managed application so that changes to this property take effect.
This property is commented out by default.
This property is useful for environments where an agent is allowed to connect across the following CA APM components:
  • Clusters.
  • Collectors and Standalone Enterprise Managers.
  • Any combination of clusters, Collectors, and Standalone Enterprise Managers.
Imagine an agent can connect to Enterprise Managers in different clusters. When this property is not set, the following example shows what occurs:
  1. An agent that is connected to an Enterprise Manager in Cluster 1 disconnects.
  2. The agent connects to an Enterprise Manager in Cluster 2 in disallowed mode.
  3. The agent does not know when the allowed Enterprise Manager in Cluster 1 becomes available.
This property enforces the agent to keep trying to connect to its allowed Enterprise Managers until an Enterprise Manager is available for connection.
Agent Metric Aging Properties
Agent metric aging periodically removes dead metrics from the agent memory cache. A dead metric is a metric that has no new data reported in a configured amount of time. Removing old metrics helps to improve agent performance and avoid potential metric explosions.
A metric explosion happens when an agent is inadvertently configured to report more metrics than the system can handle. When too many metrics are reported, the agent can affect the performance of the application server. In extreme cases, the agent can prevent the server from functioning.
Metrics that are in a group are removed only if all metrics in the group are considered candidates for removal. Currently, only BlamePointTracer and MetricRecordingAdministrator metrics are removed as a group. Other metrics are removed individually.
The MetricRecordingAdministrator has the following interfaces for creating, retrieving, or removing a metric group:
  • getAgent().IAgent_getMetricRecordingAdministrator.addMetricGroup
    String component, collection metrics. The component name is the metric resource name of the metric group. The metrics must be under the same metric node to qualify as a group. The metrics are a collection of com.wily.introscope.spec.metric.AgentMetric data structures. You can only add AgentMetric data structures to this collection.
  • getAgent().IAgent_getMetricRecordingAdministrator.getMetricGroup
    String component. Based on the component name which is the metric resource name, you can get the Collection of metrics.
  • getAgent().IAgent_getMetricRecordingAdministrator.removeMetricGroup
    String component. The metric group is removed based on the component which is the metric resource name.
  • getAgent().IAgent_getDataAccumulatorFactory.isRemoved
    Checks if the metric is removed. You use this interface if you keep an instance of an accumulator in your extension. If the accumulator is removed because of metric aging, you use this interface to prevent holding onto a dead reference.
If you create an extension that uses a MetricRecordingAdministrator interface (for example, for use with other CA Technologies products), be sure to delete your own instance of an accumulator. If a metric is aged out because it has not been invoked, and data later become available for the metric, the old accumulator instance does not create new metric data points. To avoid this situation, do not delete your own instance of an accumulator and use instead the getDataAccumulatorFactory interface.
Configuring agent metric aging
Agent metric aging is on by default. You can turn off this capability using the property introscope.agent.metricAging.turnOn. If you remove this property from the IntroscopeAgent.profile, agent metric aging is turned off by default.
Agent metric aging runs on a heartbeat in the agent. The heartbeat is configured using the property introscope.agent.metricAging.heartbeatInterval. Be sure to keep the frequency of the heartbeat low. A higher heartbeat impacts the performance of the agent and Introscope.
During each heartbeat, a certain set of metrics are checked. Configure the set of metrics using the property introscope.agent.metricAging.dataChunk. Keep this value low because a higher value impacts performance. The default value is 500 metrics to be checked per heartbeat. Each of the 500 metrics is checked to see if it is a candidate for removal. For example, you set this property to check chunks of 500 metrics per heartbeat, and you have a total of 10,000 metrics in the agent memory. It takes longer with lower impact on performance to check all 10,000 metrics. However, if you set this property to a higher number, all 10,000 metrics get checked faster, but with possibly high overhead.
A metric is a candidate for removal if the metric has not received new data after certain timeframe. You can configure this timeframe using the property introscope.agent.metricAging.numberTimeslices. This property is set to 180000 by default. When a metric meets the condition for removal, then a check is performed to see if all the metrics in its group are candidates for metric removal. If this requirement is been met, then the metric is removed.
introscope.agent.metricAging.turnOn
Turns on or off agent metric aging.
Values:
true or false
Default:
true
Example:
introscope.agent.metricAging.turnOn=true
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.metricAging.heartbeatInterval
This property specifies the time interval when metrics are checked for removal, in seconds.
Default:
1800
Example:
introscope.agent.metricAging.heartbeatInterval=1800
Note:
You must restart the managed application before changes to this property take effect.
introscope.agent.metricAging.dataChunk
This property specifies the number of metrics that are checked during each interval.
Default:
500
Example:
introscope.agent.metricAging.dataChunk=500
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.metricAging.numberTimeslices
Specifies the number of intervals to check without any new data before making it a candidate for removal.
Default:
180000
Example:
introscope.agent.metricAging.numberTimeslices=180000
Note:
Changes to this property take effect immediately and do not require restarting the managed application.
introscope.agent.metricAging.metricExclude.ignore.0
Excludes specified metrics from being removed. To exclude one or more metrics from aging, add the metric name or a metric filter to the list.
Values:
Comma separated list of metrics. You can use an asterisk (*) as a wildcard in metric names.
Default:
metric names beginning with Threads (
Threads*
).
Example:
introscope.agent.metricAging.metricExclude.ignore.0=Threads*
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
Agent Metric Clamp Property
You can configure the agent to clamp approximately the number of metrics that are sent to the Enterprise Manager. If the number of metrics that are generated exceeds the value of the property, the agent stops collecting and sending new metrics.
introscope.agent.metricClamp
This property configures the agent to clamp approximately the number of metrics that are sent to the Enterprise Manager.
Default
5000
Example
introscope.agent.metricClamp=5000
Notes
  • When the property is not set, by default the agent clamps at 50000 metrics and new metrics are not reported.
  • Restart the managed application to put property changes into effect.
  • This clamp property works with the introscope.enterprisemanager.agent.metrics.limit property that is located in the apm-events-thresholds-config.xml file.
    If introscope.enterprisemanager.agent.metrics.limit clamp value is triggered before the introscope.agent.metricClamp value, then the Enterprise Manager reads agent metrics but does not report them in the Investigator metric browser tree.
    If the introscope.agent.metricClamp clamp value is triggered before the introscope.enterprisemanager.agent.metrics.limit clamp value, the agent stops sending metrics to the Enterprise Manager
introscope.agent.simpleInstanceCounter.referenceTrackingLimit
The SimpleInstanceCounter metric tracks the number of instances that are created for each class. Large numbers of instances can cause significant overhead for the .NET agent. Use this property to limit the number of tracked instances for each class.
Values
Integers
Default
25000
Example
introscope.agent.simpleInstanceCounter.referenceTrackingLimit=25000
Notes
Changes to this property take effect immediately and do not require a restart of the managed application.
Agent Memory Overhead Property
Significant agent memory overhead only occurs in certain extreme cases. The typical trade-off for lowering memory consumption is a potential increase in response time. However, each application is unique and the trade-off between memory usage and response time can vary depending on the application itself.
introscope.agent.reduceAgentMemoryOverhead
This property specifies the agent configuration to use. Uncomment if you want to reduce the agent memory overhead.
Values:
true or false
Default:
false
Example:
introscope.agent.reduceAgentMemoryOverhead=false
Note:
Restart the managed application for the changes to this property take effect.
Agent Naming
You can control automatic agent and log file naming and naming-related operations.
introscope.agent.agentAutoNamingEnabled
This property specifies whether agent autonaming is used to obtain the .NET Agent name
Values:
True or False
Default:
True
Example
introscope.agent.agentAutoNamingEnabled=true
Notes
  • No managed application restart need before changes to this property take effect.
introscope.agent.agentAutoNamingMaximumConnectionDelayInSeconds
This property specifies the maximum number of seconds the agent waits to obtain naming information before connecting to the Enterprise Manager.
Property settings
Positive integer that represents the number of seconds in the delay.
Default
120 seconds.
Example
introscope.agent.agentAutoNamingMaximumConnectionDelayInSeconds=120
Notes
You must restart the managed application before changes to this property take effect.
introscope.agent.agentAutoRenamingIntervalInMinutes
This property specifies how frequently the agent checks to see if it has been renamed. At each interval you specify, the agent check to see if its name has changed.
Property settings
Positive integer that represents the number of minutes in the interval.
Default
Every 10 minutes.
Example
introscope.agent.agentAutoRenamingIntervalInMinutes=10
Notes
You must restart the managed application before changes to this property take effect.
introscope.agent.disableLogFileAutoNaming
This property specifies whether you want to disable automatic naming of an agent’s log files. By default, if an agent is configured to use automatic naming, its log files are also automatically named using the agent name or a timestamp. Setting this property to true disables the default behavior.
Property settings
True or False
Default
False
Example
introscope.agent.disableLogFileAutoNaming=false
Notes
You must restart the managed application before changes to this property take effect.
introscope.agent.agentName
This property specifies the name to use for the agent if all other agent naming methods fail. If the value of this property is invalid or the property is deleted from the profile, the default agent name is
Unknown Agent
. This property is commented out by default. You can uncomment this property to provide a default agent name if other agent naming methods fail.
Property settings
Text string to use as the agent name if the agent name cannot be determined in any other way.
Default
AgentName
Example
introscope.agent.agentName=AgentName
Notes
You must restart the managed application before changes to this property take effect.
introscope.agent.clonedAgent
This property enables you to run identical copies of an application on the same machine. Set this property to true if you have identical copies of an application running on the same machine.
Values:
true or false
Default:
false
Example:
introscope.agent.clonedAgent=false
Note:
You must restart the managed application before changes to this property take effect.
introscope.agent.display.hostName.as.fqdn
This property specifies whether the agent name is displayed as a fully qualified domain name (fqdn). To enable the fully qualified domain name, set this property value to 'true.' By default, the agent displays the host name.
Property settings:
true or false
Default:
false
Example:
introscope.agent.display.hostName.as.fqdn=false
Notes:
  • You must restart the managed application before changes to this property take effect.
  • For the Catalyst integration, set this property to 'true'.
introscope.agent dotnet.appnaming.sitename.enabled
This property specifies whether the application name is the website name only when the .NET agent cannot evaluate a good application name. When .NET applications are deployed at their root context, the application domain name is evaluated as the site name, not the root context.
Property settings:
true or false
Default:
true
introscope.agent.dotnet.naming.sitename.enabled
This property enables the agent name to be the same as a website name. When the agent cannot evaluate a good name for itself, the agent uses the website name irrespective this property value.
Property settings:
true or false
Default:
false
Agent Recording (Business Recording) Property
You can control how the agent handles business transaction recording.
introscope.agent.bizRecording.enabled
This property enables or disables business transaction recording for the agent.
Values:
true or false
Default:
true
Example:
introscope.agent.bizRecording.enabled=true
Note:
You must restart the managed application before changes to this property take effect.
Agent Thread Priority
You can control the priority of agent threads.
introscope.agent.thread.all.priority
This property specifies the priority of agent threads.
Property settings
Values vary from 0 (low) to 4 (high).
Default
2
Example
introscope.agent.thread.all.priority=2
AutoProbe
You can control how the agent interacts with AutoProbe.
The following properties are required parameters. If AutoProbe properties are not set or the values are invalid, Introscope does not function.
introscope.autoprobe.directivesFile
This property specifies the ProbeBuilder Directive (
.pbd
) and ProbeBuilder List (
.pbl
) files that you want to deploy. The files that are listed for this property determine the components instrumented. This property is required.
Property settings
A single entry, or a comma-separated list of entries. The list may include any combination of:
  • ProbeBuilder Directive (
    .pbd
    ) file names
  • ProbeBuilder List (
    .pbl
    ) file names
  • The
    hotdeploy
    directory name (
    .pbd
    files placed in the
    hotdeploy
    directory are loaded automatically, without editing the agent profile)
You can specify the absolute paths to the file names you list or can specify file names using a path relative to the location of the
IntroscopeAgent.profile
file.
Default
The default entries depend on selections you make when you install the agent.
Example
introscope.autoprobe.directivesFile=default-full.pbl,hotdeploy
Notes
You must restart the managed application before changes to this property take effect.
introscope.autoprobe.enable
When this property is set to false, the following conditions exist:
  • AutoProbe is disabled
  • The .NET agent does not connect to the Enterprise Manager
  • The .NET agent does not appear in the Investigator
  • The .NET agent does not report metrics
Property settings
Values
true or false
Default
true
Example
introscope.autoprobe.enable=true
Note:
Restart of the agent is required for any change to take effect.
introscope.autoprobe.logfile
Name and location of the instrumentation log file. Set this property to move the location of the log file to something other than the default.
Property settings
Absolute or relative path to the instrumentation log file.
Default
The default location is logs\AutoProbe.log relative to the
<Agent_Home>
directory.
Example
introscope.autoprobe.logfile=logs/AutoProbe.log
To disable logging, comment out the log file as follows:
introscope.autoprobe.logfile=logs/AutoProbe.log
Notes
You must restart the managed application before changes to this property take effect.
CA CEM Agent Profile Properties
You can configure CA CEM-related IntroscopeAgent.profile
properties.
introscope.autoprobe.directivesFile
You need to enable ServletHeaderDecorator / HTTPHeaderDecorator and CEMTracer through the directivesFile property configuration.
The directives file property specifies where to find the directive files (PBD) or directive lists (PBL) for AutoProbe.
AutoProbe uses directives to enable your applications, and to determine which metrics the agents report to the Enterprise Manager.
Settings
Depends on the agent application server that is installed, with the format of
<appserver>
-full.pbl or
<appserver>
-typical.pbl.
Default
default-typical.pbl
Example
introscope.autoprobe.directivesFile=weblogic-typical.pbl
Notes
Although you can simply add "ServletHeaderDecorator.pbd" or "httpheaderdecorator.pbd" to the end of this property list, it is better practice to:
  1. Locate the PBL file specified in the property (in the example above, weblogic-typical.pbl).
  2. Open the PBL file in a text editor.
  3. For a Java agent, uncomment to enable the ServletHeaderDecorator.pbd line.
  4. For a .NET agent, uncomment to enable the httpheaderdecorator.pbd line.
  5. Save your changes to the PBL file.
introscope.agent.decorator.enabled
If this Boolean value is set to true, it configures the agent to add additional performance monitoring information to HTTP response headers. ServletHeaderDecorator / HTTPHeaderDecorator attaches the GUID to each transaction and inserts the GUID into an HTTP header, x-wily-info.
This enables the correlation of transactions between CA CEM and Introscope.
Settings
True or false
Default
  • false for Java agents
  • false for .NET agents
Note:
This property is a hot config property for Java agents.
Example
introscope.agent.decorator.enabled=false
introscope.agent.decorator.security
This property determines the format of decorated HTTP response headers that are sent to CA CEM.
Settings
  • clear -- clear text encoding
  • encrypted -- header data is encrypted
Default
encrypted
Example
introscope.agent.decorator.security=encrypted
ChangeDetector Configuration Properties
You can control how the local agent works with ChangeDetector.
introscope.changeDetector.enable
This property specifies whether ChangeDetector is enabled or disabled. Set the property to true to enable ChangeDetector. It is commented out and set to false by default. If you enable ChangeDetector, you should also set the additional ChangeDetector-related properties.
Property settings
True or False
Default
False
Example
introscope.changeDetector.enable=false
Notes
You must restart the managed application before changes to this property take effect.
introscope.changeDetector.agentID
This property specifies the text string used by ChangeDetector to identify the local agent. This property is commented out by default. If you enable ChangeDetector, you should uncomment this property and set it to an appropriate value.
Default
The default value is
SampleApplicationName
.
Example
introscope.changeDetector.agentID=SampleApplicationName
introscope.changeDetector.rootDir
This property specifies the root directory for ChangeDetector files. The root directory is the folder where ChangeDetector creates its local cache files.
Property settings
Full path to the root directory for ChangeDetector files as a text string.
Default
The default path is c:\\sw\\AppServer\\<
Agent_Home
>\\change_detector.
Example
introscope.changeDetector.rootDir=c:\\sw\\AppServer\\<
Agent_Home
>\\change_detector
Notes
Use a backslash to escape the backslash character, as in the example.
introscope.changeDetector.isengardStartupWaitTimeInSec
This property specifies the number of seconds to wait after the agent starts before ChangeDetector tries to connect to the Enterprise Manager. This property is commented out by default.
Default
The default is 15 seconds.
Example
introscope.changeDetector.isengardStartupWaitTimeInSec=15
introscope.changeDetector.waitTimeBetweenReconnectInSec
This property specifies the number of seconds ChangeDetector waits before retrying a connection to the Enterprise Manager. This property is commented out by default.
Default
The default is 10 seconds.
Example
introscope.changeDetector.waitTimeBetweenReconnectInSec=10
introscope.changeDetector.profile
This property specifies the absolute or relative path to the ChangeDetector datasources configuration file. This property is commented out by default.
Default
The default is ChangeDetector-config.xml.
Example
introscope.changeDetector.profile=CDConfig\\ChangeDetector-config.xml
Notes
Use a backslash to escape the backslash character, as in the example.
introscope.changeDetector.profileDir
This property specifies the absolute or relative path to the directory that contains datasource configuration files. If this property is set, all the datasource configuration files in this directory are used in addition to any file specified by the
introscope.changeDetector.profile
property. This property is commented out by default.
Default
The default is changeDetector_profiles.
Example
introscope.changeDetector.profileDir=c:\\CDconfig\\changeDetector_profiles
Notes
Use a backslash to escape the backslash character.
Cross-process Transaction Trace
You can enable automatic collection of downstream traces due to tail filter. Enabling this property and running long periods of Transaction Trace session with tail filters can cause large numbers of unwanted traces to be sent to the Enterprise Manager.
introscope.agent.transactiontracer.tailfilterPropagate.enable
Controls whether the presence of a tail filter triggers automatic collection of traces from downstream agents or not. This property does not affect collection of automatic downstream traces due to passing of head filters. Enabling this property and running long periods of transaction trace session with tail filters can cause large numbers of unwanted traces to be sent to the Enterprise Manager.
Note:
For more information about this property, see TEC1219994.
Values:
true or false
Default:
true
Example:
introscope.agent.transactiontracer.tailfilterPropagate.enable=false
Note:
Restart the managed application for the changes to this property to take effect.
Default Domain Configuration
You can controls how the default domain connects to the Enterprise Manager.
introscope.agent.dotnet.enableDefaultDomain
This property determines if the agent connected to the default domain connects to the Enterprise Manager.
Property settings
True or False
Default
False
Example
introscope.agent.dotnet.enableDefaultDomain=false
Notes
You must add this property to the IntroscopeAgent.profile to enable it.
When this property is set to true, the agent monitoring the default domain also gets reported in the Investigator.
Differential Analysis
Differential Analysis is active by default for Web API and MVC controllers. As an administrator you can:
  • Disable differential analysis
  • Limit the number of transaction per interval.
introscope.agent.da.trace.enabled
This property enables or disables differential analysis.
Property settings
True or False
Default
True
Example
introscope.agent.da.trace.enabled=false
introscope.agent.da.trace.maxTransactionsAnalyzedPerInterval
Limits the number of transactions that are analyzed per 15-second interval.
Property settings
A non-negative integer
Default
4
Example
introscope.agent.da.trace.maxTransactionsAnalyzedPerInterval=3
Dynamic Instrumentation Properties
You can enable classes and methods to be instrumented dynamically without writing custom PBDs, restarting the application server, or restarting the agent.
introscope.agent.remoteagentdynamicinstrumentation.enabled
This property enables or disables remote management of dynamic instrumentation.
Property settings
True or False
Default
True
Example
introscope.agent.remoteagentdynamicinstrumentation.enabled=true
Notes
  • Restart managed applications for changes to take effect.
  • Dynamic instrumentation is a CPU-intensive operation. Use the configurations that minimize the classes that are being instrumented.
ErrorDetector Properties
ErrorDetector is installed by default with the agent. You can control how the agent interacts with ErrorDetector.
introscope.agent.errorsnapshots.enable
This property enables the agent to capture transaction details about serious errors. This property must be set to true for error snapshots to be available for viewing.
Values:
true or false
Default:
true
Note:
You  do not need to restart the managed application.
introscope.agent.errorsnapshots.throttle
This property specifies the maximum number of error snapshots that the agent can send in a 15-second period.
Default:
10
Example:
introscope.agent.errorsnapshots.throttle=10
Note:
You  do not need to restart the managed application.
introscope.agent.errorsnapshots.ignore.<index>
This property specifies one or more error message filters. You can specify as many filters as you need using the index identifier that is appended to the property name (for example, .0, .1, .2 ...). You can use wildcards (*) Error messages matching the criteria that you specify are ignored. When errors match the filters that you define, the agent does not generate error snapshots and does not send error events to the Enterprise Manager.
You cannot use this property to filter SOAP error messages.
Default:
The IntroscopeAgent.profile provides example values.
Example:
introscope.agent.errorsnapshots.ignore.0=*com.company.HarmlessException*
introscope.agent.errorsnapshots.ignore.1=*HTTP Error Code: 404*
Note:
You  do not need to restart the managed application.
Extensions Properties
You can configure the location of agent extensions.
introscope.agent.extensions.directory
This property specifies the location of all extensions to be loaded by the agent. You can specify an absolute or relative path to the directory. If you do not specify an absolute path, the value you specify is resolved relative to the location of the IntroscopeAgent.profiles file.
Default:
ext
directory in the
<Agent_Home>/
ext directory.
Example:
introscope.agent.extensions.directory=../ext
Note:
You must restart the managed application before changes to this property take effect.
Filtered Parameters
You can enable filtered parameter collection.
introscope.agent.asp.disableHttpProperties
By default, the .NET agent reports only the URL for transactions it traces. Reporting of individual HTTP properties is restricted to minimize the impacts of transaction tracing on system overhead.
To enable filtering you must first enable collection of HTTP properties, by setting this property to false.
This property enables collection of: Application Name, Session ID, Context Path, Server Name, URL, Context Path, Normalized URL, HTTP headers, HTTP parameters, HTTP attributes
Property settings
Values
True or False
Default
False
Example
#introscope.agent.asp.disableHttpProperties=false
Notes
You must restart the managed application before changes to this property take effect.
HTTP Backend Path Group Properties
The properties in this section are for configuring HTTP backend path group for backend metrics.
introscope.agent.backendpathgroup.keys
Path groups are groupings of web service HTTP client requests that are defined in terms of an HTTP backend URL path prefix.
You can diagnose performance problems by examining path group metrics to determine the number of requests that are invoked from an HTTP backend.
By default, all HTTP backend URL paths are assigned to the D
efault
group. The HTTP backend path group key defines a list of the HTTP backend URL groups metrics to display in the Metric Browser. Other properties that declare a path group attribute also reference the path group key.
You can define path groups so that some paths fall into multiple groups. In this configuration, the order in which you list the keys for the path groups in the property is important. Be sure that the path group with the narrower membership precedes the path group with broader membership.
This property works with the
introscope.agent.backendpathgroup.group.default.pathprefix
and
introscope.agent.backendpathgroup.group.default.format
properties.
Default:
default
Example:
introscope.agent.backendpathgroup.keys=default
Note:
Changes to this property take effect immediately and do not require restarting the managed application.
introscope.agent.backendpathgroup.group.default.pathprefix
This property specifies a pattern against which the path prefix is matched. The matching defines which requests fall within the path group.
Default:
*
Example:
introscope.agent.backendpathgroup.group.default.pathprefix=*
Note:
Changes to this property take effect immediately and do not require restarting the managed application.
introscope.agent.backendpathgroup.group.default.format
This property determines the names under which response time metrics for a path group are generated. Typically, the
introscope.agent.backendpathgroup.group.default.format
property is used to assign a text string as the name for a path.
Default:
default
Example:
introscope.agent.backendpathgroup.group.default.format=Default
Note:
Changes to this property take effect immediately and do not require restarting the managed application.
HTTP Header Decorator
You can enable Servlet Header Decorator, which is part of the integration solution with CA CEM.
introscope.agent.decorator.enabled
If this Boolean value is set to true, it configures the agent to add additional performance monitoring information to HTTP response headers.
HTTPHeaderDecorator attaches the GUID to each transaction and inserts the GUID into an HTTP header, x-wily-info. This enables the correlation of transaction between CA CEM and Introscope.
Property settings
True or False
Default
False
Example
introscope.agent.decorator.enabled=false
Logging
introscope.agent.log.config.path
This property points to the Log4Net configuration file.
Property settings
Default
logging.config.xml
Example
introscope.agent.log.config.path=logging.config.xml
Notes
You must restart the managed application before changes to this property take effect.
NativeProfiler
You can set the following properties in the
IntroscopeAgent.profile
to control NativeProfiler operations. These properties control monitoring for applications created using Native Image Generator, the size of the in-memory cache for class names, and the location and content of the NativeProfiler log file.
introscope.nativeprofiler.clrv4.transparency.checks.disabled
The .NET 4 CLR makes checks on transparent assemblies which may invalidate instrumented code by profiler. To suppress these checks, set the value of this property to “true”.
Property settings
true or false
Default
true
Example
#introscope.nativeprofiler.clrv4.transparency.checks.disable=true
You must reset IIS for this value to take effect.
introscope.nativeprofiler.logfile
Sets the path to the log file that records information about the directives NativeProfiler reads and the methods it instruments.
Property settings
Absolute or relative path to file location.
Default
logs/nativeprofiler.log
Example
introscope.nativeprofiler.logfile=logs/nativeprofiler.log
Notes
NativeProfiler logs information about all the directives that are active in the PBDs and PBLs it is configured to read and records the specific methods that are instrumented for your reference.
introscope.nativeprofiler.logBytecode
Determines whether NativeProfiler lists the instrumented bytecode. If set to true, the NativeProfiler log file lists the instrumented bytecode. This property is set to false and commented out by default.
Property settings
True or False
Default
False
Example
#introscope.nativeprofiler.logBytecode=false
Notes
This property is commented out by default.
introscope.nativeprofiler.logAllMethodsNoticed
Logs all methods that NativeProfiler notices, including the methods that are not instrumented, if this property is enabled.
Property settings
True or False
Default
False
Example
introscope.nativeprofiler.logAllMethodsNoticed=false
Notes
Disabled by default.
introscope.nativeprofiler.directivematching.cache.max.size
This property specifies the maximum number of class names that are stored in the in-memory cache for the agent. By default, the agent creates an in-memory cache of the directive groups it has previously found that contain classes to be monitored. Each time that you start IIS, the agent creates a cache of the classes previously discovered. The cache increases over time as new classes to be monitored are used by application code. By default, the in-memory cache stores up to 5000 class names.
Increasing the value of this property can improve the startup time if the cache must store more than 5000 class names. However, increasing the value increases the memory overhead that is required for the agent. Decreasing the property value reduces the agent’s memory overhead. Decreasing the value can be appropriate if you monitor fewer than 5000 classes.
The cache does not store class objects.
Default
By default, the cache is enabled to store up to 5000 class names.
Example
introscope.nativeprofiler.directivematching.cache.max.size=5000
Notes
You must restart the managed application before changes to this property take effect.
introscope.nativeprofiler.generic.agent.trigger.enabled
This property lets you start the .NET agent using a generic trigger. If you enable this property, the agent is started using a generic trigger after the first user code executes. This action starts a default domain probing, which can be restricted. When disabled, the agent is started using the main method or start-up method while IIS is running.
Property settings
True or False
Default
False
Example
introscope.nativeprofiler.generic.agent.trigger.enabled=true
Notes
  • You must restart the managed application before changes to this property take effect.
  • In ProcSxS, the agent names appear as follows:
    <ProcessName>_<ApplicationDomainName>
Performance Monitor Data Collection
You can configure properties to control the collection of data from Performance Monitor counters.
introscope.agent.perfmon.metric.filterPattern
This property specifies a simple string that matches the Performance Monitor counters that you want to monitor.
Property settings
A text string for matching Performance Monitor counter names. To add new counters, such as process-specific thread metrics, add the new string to the end of the list, which is separated by a comma. The only wildcard that is allowed is an asterisk *. For example:
...,|Thread|{osprocessname}*|*
Default
The default filter monitors Processor, .NET Data Provider, .NET CLR, and ASP.NET Performance Monitor counters, objects, and instances.
Example
introscope.agent.perfmon.metric.filterPattern=|Processor|*|*,|.NET Data Provider*|*|*,|.NET CLR*|{osprocessname}|*,|.NET CLR Data|*|*,|Process|{osprocessname}|*,|ASP.NET|*
Notes
Using filter |*|* is equal to asking Performance Monitor to enumerate all counters as instance-less. This setting is not valid for certain counters.
introscope.agent.perfmon.metric.filterPattern.average
This property specifies Performance counter name pattern for the Performance Monitor metrics using the LongAverage metric type instead of the default LongCounter metric type.
Performance Monitor metrics are reported as LongCounter and when aggregated over time, the highest value of a period is used as the aggregated value. This behavior is unintuitive for some Performance Monitor metrics such as “Processor:% Processor Time.” You can specify these metrics to be aggregated as an average value by using the agent property introscope.agent.perfmon.metric.filterPattern.average in the IntroscopeAgent.profile.
Property settings
A text string expression for matching Performance counter names. This property specifies that Performance counter name expressions of those Performance Monitor metrics to be reported as average values. A wildcard is only supported at beginning or end. For example, */sec matches all Performance counter names that end with "/sec". To add new Performance counter names, such as those for process-specific thread metrics, add the new expression to the end of the list, which is separated by a comma. For example: ...,|Thread|{osprocessname}*|*
Default
The default property value specifies name expressions for some Performance Monitor counters expected to have average values for their corresponding metrics, such as counters with “Avg” in their names. This property is disabled by default.
Example
introscope.agent.perfmon.metric.filterPattern.average=*/sec,Avg*,%*,*Length,Connections*,*Connections,*Rate,*Time,*Current Bandwidth,*Free Megabytes,*Running
Notes
Using filter |*|* is equal to asking Performance Monitor to enumerate all counters as instance-less. This setting is not valid for certain counters.
introscope.agent.perfmon.metric.limit
This property specifies the maximum number of Performance Monitor metrics that can be reported in each interval.
Default
The default is 1000 metrics.
Example
introscope.agent.perfmon.metric.limit=1000
introscope.agent.perfmon.metric.pollIntervalInSeconds
This property specifies how frequently the Performance Monitor Collection Agent check Performance Monitor objects, counters, and instances for new metric values. The default polling interval checks all metric values every 15 seconds.
Default
The default interval is 15 seconds.
Example
introscope.agent.perfmon.metric.pollIntervalInSeconds=15
introscope.agent.perfmon.category.browseEnabled
This property enables or disables the discovery of new Performance Monitor counters.
Property settings
True or False
Default
True (enabled)
Example
introscope.agent.perfmon.category.browseEnabled=true
w3wp.exe is an exception for this property.
introscope.agent.perfmon.category.browseIntervalInSeconds
Determines how frequently the Performance Monitor Collection Agent checks for new Performance Monitor objects to be discovered.
Property settings
Positive integer representing the number of seconds in the interval.
Default
The default interval is 600 seconds (10 minutes).
Example
introscope.agent.perfmon.category.browseIntervalInSeconds=600
Process Name
You can configure properties to define the process name.
introscope.agent.customProcessName
This property specifies the process name as it appears in the Enterprise Manager and Workstation. Uncomment this property and define the process name to have the custom name appear in the Enterprise Manager and Workstation.
Default
CustomProcessName
Example
#introscope.agent.customProcessName=CustomProcessName
Notes
This property is commented out by default.
You must restart the managed application before changes to this property take effect.
introscope.agent.defaultProcessName
The default process name is used if no custom process name has been defined and the agent is unable to determine the name of the main application class.
Default
.NET Process
Example
introscope.agent.defaultProcessName=.NET Process
Notes
You must restart the managed application before changes to this property take effect.
Restricting Instrumentation Configuration
You can configure instrumentation for targeted sets of processes or executables.
introscope.agent.dotnet.monitorApplications
This property specifies processes and applications to instrument.
Options
Fully qualified paths are not supported. Use only the process image names of the application executables. The names are case sensitive and must exactly match the names being reported to the Windows process management.
Default
w3wp.exe,aspnet_wp.exe
Example
introscope.agent.dotnet.monitorApplications=w3wp.exe,aspnet_wp.exe,dllhost.exe
introscope.agent.dotnet.monitorAppPools
This property specifies application pools to be instrumented.
Options
Uncomment this property and specify IIS application pools to be instrumented.
Default
"NULL","DefaultAppPool","AppPool1","AppPool2"
Example
#introscope.agent.dotnet.monitorAppPools= "NULL","DefaultAppPool","AppPool1","AppPool2"
Notes
  • Application pool names must be in quotes. Use "NULL" to specify applications not running in any application pool.
  • Leave commented to instrument all application pools, or uncomment and list only the application pools you want instrumented.
Socket Metrics
The following properties control the generation of socket metrics.
introscope.agent.sockets.reportRateMetrics
This property enables the reporting of Input/Output bandwidth rate metrics for individual sockets.
Property settings
True or False
Default
True
Example
introscope.agent.sockets.reportRateMetrics=true
Notes
You must restart the managed application before changes to this property take effect.
SQL Agent
The following properties are for the SQL agent.
introscope.agent.sqlagent.sql.maxlength
Limits the size in bytes of the SQL statements that are displayed in the Investigator tree for SQL agent metrics.
Default
The default limit is 990 bytes.
Example
introscope.agent.sqlagent.sql.maxlength=990
Notes
This property does not appear in IntroscopeAgent.profile by default. To change the value, add the property to the agent profile.
introscope.agent.sqlagent.normalizer.extension
This property specifies the name of the SQL normalizer extension that is used to override the preconfigured normalization scheme.
To make custom normalization extension work, the value of its manifest attribute
com-wily-Extension-Plugin-{pluginName}-Name
must match the value given in this property.
If you specify a comma-separated list of names, the Agent uses the default normalizer extension.
For example, with the following setting RegexSqlNormalizer is used for normalization:
introscope.agent.sqlagent.normalizer.extension=RegexSqlNormalizer
This property limits how much of a SQL statement appears in the Investigator tree for SQL Agent metrics, in bytes.
Values:
The name of the SQL normalizer extension that is used to override the preconfigured normalization scheme.
Default:
RegexSqlNormalizer
Example:
introscope.agent.sqlagent.normalizer.extension=RegexSqlNormalizer
Note:
  • If you use the default setting, you also must configure the regular expressions SQL statement normalizer properties:
    • introscope.agent.sqlagent.normalizer.regex.matchFallThrough
    • introscope.agent.sqlagent.normalizer.regex.keys
    • introscope.agent.sqlagent.normalizer.regex.key1.pattern
    • introscope.agent.sqlagent.normalizer.regex.key1.replaceAll
    • introscope.agent.sqlagent.normalizer.regex.key1.replaceFormat
    • introscope.agent.sqlagent.normalizer.regex.key1.caseSensitive
  • Changes to this property take effect immediately and do not require that you restart the managed application.
introscope.agent.sqlagent.normalizer.extension.runPredefinedScheme
This property allows the default normalizer to run first before executing the regular expression SQL statement normalizer.
Values:
TRUE/FALSE
Default:
TRUE
Example:
introscope.agent.sqlagent.normalizer.extension.runPredefinedScheme=TRUE
Visibility:
This property is not included in the IntroscopeAgent.profile file; add it manually if you want to change the default setting to FALSE.
introscope.agent.sqlagent.normalizer.regex.keys
This property sets the regular expressions SQL statement normalizer with introscope.agent.sqlagent.normalizer.extension property. This property specifies the regex group keys. They are evaluated in order.
Default:
key1
Example:
introscope.agent.sqlagent.normalizer.regex.keys=key1
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.normalizer.regex.key1.pattern
This property sets the regular expressions SQL statement normalizer with introscope.agent.sqlagent.normalizer.extension property. This property specifies the regex pattern that is used to match against the SQL.
Values:
All valid regex entries that are allowed by java.util.Regex package can be used here.
Default:
.*call(.*\)\.FOO(.*\)
Example:
introscope.agent.sqlagent.normalizer.regex.key1.pattern=.*call(.*\)\.FOO(.*\)
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.normalizer.regex.key1.replaceAll
Sets the regular expressions SQL statement normalizer in conjunction with introscope.agent.sqlagent.normalizer.extension property. When this property is set to false, it replaces the first occurrence of the matching pattern in the SQL query with the replacement string. If set to true, it replaces all occurrences of the matching pattern in the SQL query with replacement the string.
Values:
true or false
Default:
false
Example:
introscope.agent.sqlagent.normalizer.regex.key1.replaceAll=false
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.normalizer.regex.key1.replaceFormat
Sets the regular expressions SQL statement normalizer with introscope.agent.sqlagent.normalizer.extension property. This property specifies the replacement string format.
Values:
All valid regex entries that are allowed by the java.util.Regex package and java.util.regex.Matcher class can be used here.
Default:
$1
Example:
introscope.agent.sqlagent.normalizer.regex.key1.replaceFormat=$1
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.normalizer.regex.key1.caseSensitive
This property sets the regular expressions SQL statement normalizer with
introscope.agent.sqlagent.normalizer.extension
property. This property specifies whether the pattern match is sensitive to case.
Values:
true or false
Default:
false
Example:
introscope.agent.sqlagent.normalizer.regex.key1.caseSensitive=false
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.normalizer.regex.matchFallThrough
This property sets the regular expressions SQL statement normalizer in conjunction with the
introscope.agent.sqlagent.normalizer.extension
property. When this property is set to true, it evaluates SQL strings against all regex key groups.
The implementation is chained. For example, if SQL matches multiple key groups, the normalized SQL output from group1 is fed as input to group2, and so on.
If the property is set to false, as soon as a key group matches, the normalized SQL output from that group is returned.
Values:
true or false
Default:
false
Example:
introscope.agent.sqlagent.normalizer.regex.matchFallThrough=false
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.sqlagent.sql.artonly
This property specifies if the agent must create and send only the Average Response Time metric. All SQL agent metrics under back-ends are affected. When the value for this property is true, performance of the agent for SQL metrics and transaction traces can improve.
Setting introscope.agent.sqlagent.sql.turnoffmetrics to true overrides this property.
Default:
false
Note:
  • This property does not control custom metrics, such as the connection count.
  • Changes to this property take effect immediately and can be made using the Management interface.
  • The following tracer parameter must be set for this property setting to work:
    SetTracerParameter: StatementToConnectionMappingTracer agentcomponent "SQL Agent"
introscope.agent.sqlagent.sql.rawsql
This property specifies if the agent must add
unnormalized
SQL as a parameter for SQL components in transaction trace. When the value for this property is true, performance of the agent for SQL metrics and transaction traces can improve.
Default:
false
Note:
  • Changes to this property take effect after you restart the managed application.
  • Enabling this property can result in passwords and sensitive information being presented in transaction trace.
introscope.agent.sqlagent.sql.turnoffmetrics
This property specifies that the SQL statement metrics can be turned off to send fewer metrics from the agent to the Enterprise Manager. When the value for this property is true, performance of the agent for SQL metrics and transaction traces can improve.
Default:
false
Note:
  • This property overrides the introscope.agent.sqlagent.sql.artonly property.
  • Changes to this property take effect immediately and can be changed using the Management user interface.
  • The following tracer parameter must be set for this property setting to work:
    SetTracerParameter: StatementToConnectionMappingTracer agentcomponent "SQL Agent"
introscope.agent.sqlagent.sql.turnofftrace
Controls whether the agent creates and sends transaction trace components to the Enterprise Manager for SQL statements under back-ends. When the value for this property is true, performance of the agent for SQL metrics and transaction traces can improve.
Default:
false
Note:
  • Changes to this property take effect immediately and can be changed using the Management user interface.
  • The following tracer parameter must be set for this property setting to work:
    SetTracerParameter: StatementToConnectionMappingTracer agentcomponent "SQL Agent"
Stall Metrics
The following sections define the properties that are related to the stall metrics.
introscope.agent.stalls.thresholdseconds
This property specifies the number of seconds that an executing process can take before it is considered a stalled process. To ensure an accurate Stall Count metric, set the stall threshold to 15 seconds or more. This setting allows time for the Enterprise Manager to complete its harvest cycle.
Default:
30 seconds
Example:
introscope.agent.stalls.thresholdseconds=30
Note:
This property is dynamic. You can change the configuration of this property during run time and the change is picked up automatically.
introscope.agent.stalls.resolutionseconds
This property specifies the frequency that the agent checks for stalls. To ensure an accurate Stall Count metric, do not set the stall resolution to less than 10 seconds. This setting allows time for the Enterprise Manager to complete its harvest cycle.
Default:
10 seconds
Example:
introscope.agent.stalls.resolutionseconds=10
Note:
This property is dynamic. You can change the configuration of this property during run time and the change is picked up automatically.
Transaction Tracing
The following properties are for Transaction Tracing.
introscope.agent.crossprocess.compression
Reduces the size of cross process transaction tracing data.
Values:
lzma, gzip, none
Default:
lzma
Example:
introscope.agent.crossprocess.compression=lzma
Note:
  • This option will increase agent CPU overhead, but will reduce the size of interprocess headers.
  • lzma
    compression is more efficient than
    gzip
    , but may use more CPU.
  • .NET agents do not support the
    gzip
    option, so if interoperability is required, do not use
    gzip
    .
  • This property is dynamic. You can change the configuration of this property during run time and the change will be picked up automatically.
introscope.agent.crossprocess.correlationid.maxlimit
This property specifies the maximum size of cross process parameter data allowed.
If the total size of cross process parameter data is more than this limit, even after applying compression, some data will be dropped and some cross process correlation functionality will not work properly.
However, this setting protects user transactions from failing in network transmission due to too large header size.
Default:
4096
Example:
introscope.agent.crossprocess.correlationid.maxlimit=4096
Note:
  • Used with the introscope.agent.crossprocess.compression and introscope.agent.crossprocess.compression.minlimit properties.
  • This property is dynamic. You can change the configuration of this property during run time and the change is picked up automatically.
introscope.agent.crossprocess.compression.minlimit
This property specifies the minimum length of cross process parameter data length for which to apply compression.
Values:
0 to twice the total maximum limit, set in the introscope.agent.crossprocess.correlationid.maxlimit.
If set below the default of 1500, the compression will run more frequently and will consume more CPU overhead. The default setting of 1500 usually results in no impact to CPU overhead in normal conditions.
Default:
1500
Example:
introscope.agent.crossprocess.compression.minlimit=1500
Note:
  • Used with the introscope.agent.crossprocess.compression property.
  • This property is dynamic. You can change the configuration of this property during run time and the change is picked up automatically.
introscope.agent.transactiontrace.componentCountClamp
Limits the number of components that are allowed in a Transaction Trace.
Default:
5000
Important!
If the clamp size is increased, the requirements on memory are higher.
Example:
introscope.agent.transactiontrace.componentCountClamp=5000
Note:
  • Any transaction trace exceeding the clamp is discarded at the agent and a warning message is logged in the agent log file.
  • This property is dynamic. You can change the configuration of this property during run time and the change is picked up automatically.
  • When the set limit is reached, warnings appear in the log, and the trace stops.
  • Zero is
    not
    a valid value. Do
    not
    set introscope.agent.transactiontrace.componentCountClamp=0.
introscope.agent.transactiontrace.headFilterClamp
This property specifies the maximum depth of components that are allowed in head filtering. Head filtering is the process of examining the start of a transaction for potentially collecting the entire transaction. Head filtering checks each component until the first blamed component exits. For transaction with very deep call stacks, the extreme depth of the components can be a problem if no clamping is applied. The clamp value limits the memory and CPU utilization impact of this behavior by forcing the agent to look up to a fixed depth.
Default:
30
Warning!
If the clamp size is increased, the requirement on memory is higher. Garbage collection behavior is affected, which has an application-wide performance impact.
Example:
introscope.agent.transactiontrace.headFilterClamp=30
Note:
  • Changes to this property take effect immediately and do not require the managed application to be restarted.
  • Any transaction trace whose depth exceeds the clamp is only examined for possible collection
    when
    some other mechanism is active to select the transaction for collection. Other mechanisms include sampling or user-initiated transaction tracing.
introscope.agent.transactiontracer.parameter.httprequest.headers
This property specifies (in comma-separated list) HTTP request header data to capture. Use a comma separated list.
Default:
commented out; User-Agent
Example:
introscope.agent.transactiontracer.parameter.httprequest.headers=User-Agent
introscope.agent.transactiontracer.parameter.httprequest.parameters
This property specifies (in comma-separated list) HTTP request parameter data to capture.
Default:
commented out; generic parameters.
Example:
introscope.agent.transactiontracer.parameter.httprequest.parameters=parameter1,parameter2
introscope.agent.transactiontracer.parameter.httpsession.attributes
This property specifies (in comma-separated list) HTTP session attribute data to capture.
Default:
commented out; generic parameters.
Example:
introscope.agent.transactiontracer.parameter.httpsession.attributes=attribute1,attribute2
introscope.agent.transactiontracer.sampling.enabled
This property enables or disables transaction tracer Sampling.
Values:
true or false
Default:
true
Example:
introscope.agent.transactiontracer.sampling.enabled=false
Note:
Changes to this property take effect immediately and do not require the managed application to be restarted.
introscope.agent.transactiontracer.sampling.perinterval.count
This property specifies the number of transactions to trace, during the interval you specify.
This property disables the introscope.agent.transactiontracer.sampling.perinterval.count configuration in the Enterprise Manager if this property is configured in the agent.
Default:
1
Example:
introscope.agent.transactiontracer.sampling.perinterval.count=1
Note:
You must restart the managed application before changes to this property take effect.
introscope.agent.transactiontracer.sampling.interval.seconds
This property specifies the length of time to trace the number of transactions you specify.
This property disables the introscope.agent.transactiontracer.sampling.interval.seconds configuration in the Enterprise Manager if this property is configured in the agent.
Default:
120
Example:
introscope.agent.transactiontracer.sampling.interval.seconds=120
Note:
You must restart the managed application before changes to this property take effect.
Configure the Session ID Collection
The introscope.agent.transactiontracer.parameter.capture.sessionid property enables or disables the collection of the Session ID in the TransactionTracer Data. By default, this property is enabled and recorded in the TransactionTracer Data. When you disable this property, data is not available for use in filters.
Follow these steps:
  1. Open the IntroscopeAgent.profile file in a text editor.
    Locate the following lines:
    # Uncomment the following property to disable sessionid capture in TransactionTracer data.
    # By default, it is enabled and recorded in the TT Data.
    # introscope.agent.transactiontracer.parameter.capture.sessionid=true
  2. Follow the instructions to enable or disable the property by commenting or uncommenting the line:
    # introscope.agent.transactiontracer.parameter.capture.sessionid=true
  3. Save and close the file, and restart the agent.
    The agent configuration is set to use the value you specified for collecting the session ID.
introscope.agent.transactiontracer.userid.key
This property specifies the user-defined key string.
Default:
commented out; generic parameters.
Example:
#introscope.agent.transactiontracer.parameter.httpsession.attributes=attribute1,attribute2
Note:
When user IDs are accessed using
HttpServletRequest.getHeader
or
HttpServletRequest.getValue
in your environment, it is optional to supply the values.
introscope.agent.transactiontracer.userid.method
This property specifies the method that returns User IDs.
Values:
  • HttpContext.User.Identity.Name
  • HttpContext.Request.Uri.UserInfo
  • HttpRequest.Headers.Get
  • HttpContext.Session.Contents
Default:
commented out.
Example:
The IntroscopeAgent.profile includes a commented out property definition for each of the allowable values. You can uncomment the property that you want to use.
introscope.agent.transactiontracer.userid.method=HttpContext.User.Identity.Name
#introscope.agent.transactiontracer.userid.method=HttpContext.Request.Uri.UserInfo
#introscope.agent.transactiontracer.userid.method=HttpRequest.Headers.Get
#introscope.agent.transactiontracer.userid.method=HttpContext.Session.Contents
URL Grouping
These properties are for configuring URL Groups for frontend metrics.
introscope.agent.urlgroup.keys
This property specifies configuration settings for Frontend naming.
Default:
default
Example:
introscope.agent.urlgroup.keys=default
introscope.agent.urlgroup.group.default.pathprefix
This property specifies configuration settings for frontend naming.
Default:
*
Example:
introscope.agent.urlgroup.group.default.pathprefix=*
introscope.agent.urlgroup.group.default.format
This property specifies configuration settings for Frontend naming.
Default:
default
Example:
introscope.agent.urlgroup.group.default.format=default