Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Verify that your Microsoft .NET application is running.
  2. Open the command prompt window.
  3. Change directory to the <i3_root> directory.
  4. Run the following command:
    • Microsoft .NET Framework version 1.1. products\dotnet\install\psdn_detect_dlls.exe /im image name /f filter file
    • Microsoft .NET Framework version 2.0 and 3.0 products\dotnet\install\FW2.0\psdn_detect_dlls.exe /im image name /f filter file name

    where the parameter values should be set as follows:

    • image name

    If this is an ASP.NET instance , the name of this executable depends on the Internet Information Server (IIS) type.

        • IIS 6: w3wp.exe

        • IIS 7: 

    If this is a regular .NET instance , the image name is the name of the .NET executable (without the path).

    • filter file name

...

  1. The path and name of the file that lists the modules to be filtered out, as follows:
    products\dotnet\install\dlls_filter.xml

    As alternative to this step, you can also use the Process Explorer. See http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx.

...

  1. Save the XML output of the command to a temporary file.

To define the DLLs in the instrumentation file1.    Open

  1. Open the following file in an editor:

...

  1. <i3_

...

  1. root>\products\dotnet\config\instrumentation.xml

...

  1. Within the XML output that you saved in step 5 above, locate the <module name> tag for a DLL file you want to instrument and copy the file name.
    For example, if you want to instrument the file petshop.web.dll, copy its name from the line <module name="petshop.web.dll">.

...

  1. In the instrumentation file, paste the name of the DLL file into the entry for the instance that you want to monitor.
    For example:
    <instances>
         <instance name="AspNetIIS6" >
              <dlls>
              <dll name="petshop.web.dll"/>
              ...
              </dlls>
         </instance>
    </instances>

...

  1. Repeat step 2 and step 3 for each DLL file that you want to instrument.

...

  1. Restart your Microsoft .NET application for the changes to take effect.

Invoking the Instrumentation Driver utility

The instrumentation process is the execution of a Collector agent, which reads the code (the DLLs) of your application and stores an instrumented version in the <i3<i3_root>root>\products\dotnet\cache\instr cache directory:

The contents of the cache can then be used for future invocations of your Microsoft .NET application, avoiding the time to re-instrument. The instrumentation process can last anywhere between a few minutes and an hour, depending on the size of the DLLs.

The instrumentation process consumes memory. The required memory for instrumenting a DLL is approximately 20 times the size of that DLL file. As a result, the startup of your Microsoft .NET application can be considerably slow.

The instrumentation is triggered when the Microsoft .NET application starts and one of the following criteria is applicable:.•    The

  • The .NET instance is installed for the first time.

...

  • A change is made to the instrumentation.xml file (the instrumentation configuration file).

...

  • A new code version is deployed on the monitored server.

To minimize the time it takes the Microsoft .NET application to start up, you can invoke a Precise for Microsoft .NET utility called Instrumentation Driver. The Instrumentation Driver populates the cache before it restarts the Microsoft .NET application.

Info

...

If the instance uses DLLs from several directories or several single DLLs, invoke the Instrumentation Driver utility several times using the appropriate directory or DLL names.

It is recommended to stop your Microsoft .NET application before you invoke the Instrumentation Driver utility. If you invoke the utility while the application is running, the instrumentation results are placed in the cache and used only during the next startup of the Microsoft .NET application.

If your application changes, for example because a new version is deployed, or if you modify the instrumentation.xml file, you can activate the Instrumentation Driver utility to recalculate the cache contents.NOTE    The

Info

The Instrumentation Driver utility may not calculate the cache contents for all DLLs that the application uses. These DLLs are only instrumented during the next startup of the Microsoft .NET application.

To invoke the Instrumentation Driver utility1.    After

  1. After the Microsoft .NET instance is installed, configure the DLLs, classes, and methods to be instrumented in the instrumentation.xml file.

...

  1. Open a command prompt window and run the following command:
    cd

...

  1. <i3_

...

  1. 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.

 

Precise. Performance intelligence from click to storage. Learn more > >

...