Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper
Updated: September 16, 2011
The Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper condition detection module type takes Microsoft.SystemCenter.WebApplication.WebApplicationData data as input and maps it to System.Performance.Data type data.
Usage
This module is commonly used with Microsoft.SystemCenter.WebApplication.UrlProbe, to map the output from the data provider to the performance data type. Unlike Microsoft.SystemCenter.WebApplication.PerformanceMapper, which maps performance for the entire web application, this module maps performance for a specific request.
Type Definition
<ConditionDetectionModuleType ID="Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper" Accessibility="Public" Batching="true" Stateful="false" PassThrough="false">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element name="RequestID" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="ObjectName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="CounterName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="InstanceName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
<xsd:element name="Value" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
</Configuration>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<ConditionDetection ID="Filter" TypeID="System!System.ExpressionFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Boolean">CollectPerformanceData</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Boolean">true</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">RequestResults/RequestResult[@Id="$Config/RequestID$"]/BasePageData/ErrorCode</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">RequestResults/RequestResult[@Id="$Config/RequestID$"]/State</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">0</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<ConditionDetection ID="PerfMapper" TypeID="Performance!System.Performance.DataGenericMapper">
<ObjectName>$Config/ObjectName$</ObjectName>
<CounterName>$Config/CounterName$</CounterName>
<InstanceName>$Config/InstanceName$</InstanceName>
<Value>$Config/Value$</Value>
</ConditionDetection>
</MemberModules>
<Composition>
<Node ID="PerfMapper">
<Node ID="Filter" />
</Node>
</Composition>
</Composite>
</ModuleImplementation>
<OutputType>Performance!System.Performance.Data</OutputType>
<InputTypes>
<InputType>Microsoft.SystemCenter.WebApplication.WebApplicationData</InputType>
</InputTypes>
</ConditionDetectionModuleType>
Parameters
The Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper module supports the following configuration parameters.
| Parameter | Type | Description |
|---|---|---|
|
RequestID |
Integer |
Required parameter. Contains the ID of the request to map. |
|
ObjectName |
String |
Required parameter. Specifies the performance object name. |
|
CounterName |
String |
Required parameter. Specifies the performance counter name. |
|
InstanceName |
String |
Required parameter. Specifies the instance name, but can empty if there is only a single instance. |
|
Value |
String |
Required parameter. Specifies the numeric value for the performance value. |
Composition
The Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper module is a composite module that contains the member modules that are described in the following table.
| Workflow Run Order | Module Type | Usage |
|---|---|---|
|
1 |
Filters the workflow to instances where CollectPerformanceData is set to true, and where the request does not return an error. |
|
|
2 |
Maps the returned data to System.Performance.Data. |
Related Modules
| Module Type | Usage |
|---|---|
|
Microsoft.SystemCenter.WebApplication.PerformanceMapperMicrosoft.SystemCenter.WebApplication.PerformanceMapper |
Maps the performance of a specific request, instead of the performance of the entire web application. |
|
Data source module that provides data to be mapped. |
External Module References
None
Sample
The following example shows a performance collection rule that uses Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper. Note that the RequestID element is included, so that performance data is collected for only this request.
<Rule ID="MPAuthor.WebApplication.Request1.BasePage.DNSResolutionTime" Enabled="true" Target="MPAuthor.WebApplication" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DataSource" TypeID="MPAuthor.WebApplication.UrlDataSource" />
</DataSources>
<ConditionDetection ID="PerfMapper" TypeID="MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.Request.PerformanceMapper">
<RequestID>1</RequestID>
<ObjectName>Web Request</ObjectName>
<CounterName>Web Request DNS Resolution Time</CounterName>
<InstanceName>$Data/RequestResults/RequestResult[@Id="1"]/BasePageData/RequestUrl$</InstanceName>
<Value>$Data/RequestResults/RequestResult[@Id="1"]/BasePageData/DNSResolutionTime$</Value>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WriteAction" TypeID="SystemCenter!Microsoft.SystemCenter.CollectPerformanceData" />
<WriteAction ID="WriteActionDW" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData" />
</WriteActions>
</Rule>
Information
|
Module Type |
|
|
Input Type |
Microsoft.SystemCenter.WebApplication.WebApplicationData |
|
Output Type |
|
|
Implementation |
Composite |
|
Library |
Microsoft.SystemCenter.WebApplication.Library |