Page History
...
Tracking instrumentation activity is subject to the following limitations:
- Only the Microsoft .NET version 1versions 3.10, 23.05, 34.0, 34.5, 4.062, and 4.5 7 Frameworks are supported.
- The time resolution (granularity) of the tracked activity is approximately 16 milliseconds.
Certain system DLLs that are part of the Microsoft .NET infrastructure cannot be instrumented. It is strongly recommended not to add an additional system DLL to the DLL list without first contacting Precise Technical Support.
Info All system DLLs that are discussed, are safe for instrumentation.
- Generated Microsoft .NET wrappers for COM+ components that are produced by Microsoft .NET Framework SDK utilities (such as TLBImp) cannot be tracked.
- "Pre-Jitted" assemblies cannot be instrumented because they were compiled beforehand. For example, the System.Windows.Forms.dll is pre-jitted in the Microsoft .NET framework.
...
- DLL list. A list of DLLs to be instrumented and specific configuration rules for each DLL. If the underlying process of the instance should be instrumented, it must be mentioned explicitly.
- Common instrumentation rules (“instrument”"instrument") for the whole DLL list.
- Common exclude rules (“ignore”"ignore"). Following is an example of the file structure:
...
In the following example, all DLLs with the prefix “Pet” "Pet" are instrumented and tracked, regardless of their path. Likewise, for the classes with the prefix “Pet”, "Pet" all methods are instrumented and tracked.
...
Table 13-1 Instrumentation file tags
Tag name | Description | Comment |
---|---|---|
instrumentation-config | The top level XML tag. |
instances | The list of instances to be instrumented. |
| The logical name of the instance. |
instance tracker (attribute) | The tracker DLL's reference to use. | Optional tag. |
dlls | The list of DLLs to be instrumented when loaded by this instance. | Without a list of DLLs, all loaded DLLs should be instrumented. |
dll name (attribute) | The name of the DLL. | Pattern match (for example Company.GUI.* ) If the main module of the process must also be instrumented, the process name should be added explicitly to this DLL list. |
dll path (attribute) | The path of the DLL. | Pattern match. Optional tag. Without this tag, all DLLs with the indicated name are instrumented. |
dll version (attribute) | The version of the DLL. | Pattern match. Optional tag. Without this tag, all DLLs with the indicated name are instrumented. |
instrument | The include list for instrumentation. |
interfaces | List of interfaces to be instrumented. | All classes that implement these interfaces must be instrumented. |
interface | A specific interface (item in the interfaces list). |
classes | The list of classes to be instrumented. Also classes that inherit from these classes must be instrumented. | The same syntax as the interfaces section. |
class | A specific class (item in the classes list). |
name (in interface/class section) | The specific name of the interface/class. | Pattern match. (for example, using * as the name indicates all names in this context) |
caller-method | The list of methods to be instrumented on the callee side. |
methods | The beginning of the list. |
method | The description of a specific method (within the classes/interfaces context). |
type | The type of method invocation. | Optional tag (the default is Custom). Specified in the default-inst-config.xml file. |
name (of method) | The specific name of the method. | Pattern match (for example, using * as the method name indicates all methods in this context). |
params | The list of parameter types. |
param | A specific parameter type. |
all-calls-to-method | The list of methods to be instrumented on the caller side. | The same syntax as the caller-method section. |
ignore | The exclude list for instrumentation. | The syntax of this section and its subcomponents is identical to the instrument section. |
About instrumenting DLLs from the GAC
...
Table 13-2 Collector configuration file tags
Tag name | Description |
---|---|
activity-collector-config | The top-level XML tag. |
Aggregator | The top-level definitions for the Collector agent’s aggregator. |
Topnsql | The top number of SQL statements to monitor. |
Sla | The SLA (red) value (in milliseconds) for ASP.NET instance URLs. |
nearsla | The Near SLA (yellow) value (in milliseconds) for ASP.NET instance URLs. |
insane-rt | The timeout value for long running threads/URLs. A method or URL that is longer than this threshold is not collected. |
tracker | Specific definitions for the tracker. |
threshold | The threshold (in milliseconds) for filtering events before they are forwarded to the Collector agent. |
Anchor | ||||
---|---|---|---|---|
|
...
- After the Microsoft .NET instance is installed, configure the DLLs, classes, and methods to be instrumented in the instrumentation.xml file.
- Open a command prompt window and run the following command:
cd<i3_root>
products\dotnet\bin\psdn_instr_validate.exe [-k instance-name]
-f directory-name | -dll name [-gac]
where:
instance-name is the Microsoft .NET instance name, such as AspNetIIS5. If this parameter is omitted, the Instrumentation Driver works for all the Microsoft .NET instances that are installed on the monitored server.
directory-name is the name of the DLL directory of the Microsoft .NET instance to be instrumented. This is the location where you deployed your Microsoft .NET code. For example, a DLL for an ASP.NET application may be stored in:
C:\Inetpub\wwwroot\MyWebApp\bin
name is the name of a single DLL (without the path). If this DLL is located in the GAC, add-gac
when running the command.
...