Please enable JavaScript to view this site.

Performance Validator Help

 

Monitoring a service

 

Monitoring a service works for:

 

Native services

.Net services

Mixed mode services.

 

Native Services

 

If you are working with native services you must use the NT Service API in your service as well as using the Monitor a service method below.

 

.Net Services

 

Performance Validator won't attach until some .Net code is executed.

 

If there is native code being called prior to the .Net code, Performance Validator won't monitor that code, only the native code called after the first .Net code that is called.

 

To monitor any native code called prior to your .Net code, use the NT Service API.

 

Mixed Mode .Net Services

 

You don't need to use the NT Services API.

 

If you are working with a .Net service that loads native DLLs, or a mixed mode service, Performance Validator will recognize the service when the .Net runtime starts executing the .Net service main.

 

 

note When working with Performance Validator and services, you still start the service the way you normally do - e.g. with the service control manager.

 

The code that you have embedded into your service then contacts Performance Validator, which you should have running before starting the service.

 

To start monitoring a service:

 

menu Launch menu instructionStep Services instructionStep Monitor a service... instructionStep shows the Monitor a service dialog below

 

Or use the shortcut

 

 b_f6  Monitor a service

 

 

The monitor a service dialog

 

First ensure the service is installed, but not running.

 

Set the service to monitor, choose whether to start collecting data right away, and click OK.

 

monitor-a-service

 

Service to monitor instructionStep type or Browse to set the service name to monitor

 

OK instructionStep performs some brief setup work and then prompts you to start the service

 

monitor-a-service-start

 

 Click OK to close the dialog and then start your native service or .Net service.

 

Start the service in the normal manner, e.g. from the control panel, the command line or programmatically.

 

 

Data collection

 

Type of data collection instructionStep Are you only interested in Native data, .Net data or both Native data and .Net data?

 

Native Only instructionStep Ignore all .Net data in the target application.

 

.Net Only instructionStep Ignore all Native data in the target application.

 

Mixed Mode instructionStep Collect both Native and .Net data from the target application

 

This setting cannot be changed after the application is launched

 

Collect data from application instructionStep If it's the startup procedure you want to validate, obviously start collecting data from launch.

 

Depending on your application, and what you want to validate, you may want to start collecting data immediately, or do it later.

 

If your program has a complex start-up procedure, initialising lots of data, it may be much faster not to collect data until the program has launched.

 

seeAlsoSee the section on controlling data collection for how to turn collection on and off after launch.

 

datacollection-onoff

 

seeAlsoSee the section on controlling data collection for how to turn collection on and off after launch.

 

Collect function times instructionStep tick to collect data that will allow overall function timings to be calculated
 

datacollection-functions

 

Collect line times instructionStep tick to allow individual line timings to be calculated
 

datacollection-lines

 

A warning dialog may be displayed to remind you of the possible performance slowdown when using line timing.

 

line-timing-warning

 

This warning only appears if the Enable line timing warning option on the Performance settings is checked.

 

The option at the bottom to edit line timing filters can be used to set specific classes, methods and functions to be included in, or excluded from, the hooking process and is identical to the Line Timing Filters page of the global settings dialog.

 

 

Slow Startup

 

The first time you work with Web Development Server and Performance Validator you may experience a delay during startup. This is most like because symbols are being downloaded from Microsoft's symbol servers to match the DLLs and assemblies on your machine.

 

 

Examples

 

Example demonstrating how to monitor a service.

 

Example demonstrating how to monitor an application launched from a service (how to monitor any application running on a service account).