<\/p>\n\r
Monitoring a service works for:<\/p>\n\r
<\/p>\n\r
•<\/span>Native services <\/span><\/p> •<\/span>.Net services<\/p> •<\/span>Mixed mode services.<\/p> <\/p>\n\r Native Services<\/span><\/p>\n\r <\/p>\n\r If you are working with native services you must use the NT Service API<\/a> in your service as well as <\/span>using the Monitor a service method below.<\/p>\n\r <\/p>\n\r .Net Services<\/span><\/p>\n\r <\/p>\n\r Coverage Validator won\'t attach until some .Net code is executed. <\/p>\n\r <\/p>\n\r If there is native code being called prior to the .Net code, Coverage Validator won\'t monitor that code, only the native code called after the first .Net code that is called. <\/p>\n\r <\/p>\n\r To monitor any native code called prior<\/span> to your .Net code, use the NT Service API<\/a>.<\/p>\n\r <\/p>\n\r Mixed Mode .Net Services<\/span><\/p>\n\r <\/p>\n\r You don\'t need to use the NT Services API<\/a>.<\/p>\n\r <\/p>\n\r If you are working with a .Net service that loads native DLLs, or a mixed mode service, Coverage Validator will recognize the service when the .Net runtime starts executing the .Net service main.<\/p>\n\r <\/p>\n\r <\/p>\n\r When working with Coverage Validator and services, you still start the service the way you normally do - e.g. with the service control manager. <\/p>\n\r <\/p>\n\r The code that you have embedded into your service then contacts Coverage Validator, which you should have running before starting the service.<\/p>\n\r <\/p>\n\r To start monitoring a service:<\/p>\n\r <\/p>\n\r <\/p>\n\r Or use the shortcut<\/p>\n\r <\/p>\n\r <\/span> Monitor a service<\/p>\n\r <\/p>\n\r <\/p>\n\r <\/p>\n\r First ensure the service is installed, but not running.<\/p>\n\r <\/p>\n\r Set the service to monitor, choose whether to start collecting data right away, and click OK.<\/p>\n\r <\/p>\n\r <\/p>\n\r <\/p>\n\r •<\/span>Service to monitor<\/span> type or Browse<\/span> to set the service name to monitor <\/span><\/p> •<\/span>OK<\/span> waits for the service to start before injecting into it <\/span><\/p> Start the service in the normal manner, e.g. from the control panel, the command line or programmatically.<\/p>\n\r <\/p>\n\r •<\/span>Type of data collection<\/span> Are you only interested in Native data, .Net data or both Native data and .Net data? <\/span><\/p> <\/span><\/p>\n\r •<\/span>Native Only<\/span> Ignore all .Net data in the target application. <\/span><\/p> <\/span><\/p>\n\r •<\/span>.Net Only<\/span> Ignore all Native data in the target application. <\/span><\/p> <\/span><\/p>\n\r •<\/span>Mixed Mode<\/span> Collect both Native and .Net data from the target application <\/span><\/p> <\/span><\/p>\n\r This setting cannot be changed after the application is launched <\/span><\/p>\n\r <\/span><\/p>\n\r •<\/span>Collect data from application<\/span> If it\'s the startup procedure you want to validate, obviously start collecting data from launch. <\/span><\/p> <\/p>\n\r Depending on your application, and what you want to validate, you may want to start collecting data as soon as injection has happened, or do it later.<\/p>\n\r <\/p>\n\r If your program has a complex start-up procedure, initialising lots of data, it may be much faster not<\/span> to collect data until the program has launched. <\/p>\n\r <\/p>\n\r If it\'s the startup procedure you want to validate, obviously start collecting data immediately.<\/p>\n\r <\/p>\n\r <\/span><\/p>\n\r <\/p>\n\r Example demonstrating how to monitor a service<\/a>.<\/p>\n\r <\/p>\n\r Example demonstrating how to monitor an application launched from a service<\/a> (how to monitor any application running on a service account).<\/p>\n\r <\/p>\n\r"
})
Launch<\/span> menu Services <\/span> Monitor a service...<\/span> shows the Monitor a service dialog below <\/span><\/h1>\n\r
The monitor a service dialog<\/span><\/h1>\n\r
<\/span><\/h1>\n\r
<\/span><\/h1>\n\r
<\/span><\/h1>\n\r
Data collection<\/span><\/h1>\n\r
<\/span><\/h1>\n\r
See the section on controlling data collection<\/a> for how to turn collection on and off after launch. <\/h1>\n\r
<\/span><\/h1>\n\r
The data collection option may be disabled because of the instrumentation mode that is selected<\/a>.<\/h1>\n\r
<\/span><\/h1>\n\r
Examples<\/span><\/h1>\n\r