M365 Portal Login Performance Collection

Microsoft.SystemCenter.M365.Rules.PortalLoginRule (Rule)

This rule connects to the Microsoft 365 Portal and logs in via synthetic transaction and collects the time in milliseconds.

Knowledge Base article:

Summary

This rule connects to the Microsoft 365 Portal and logs in via synthetic transaction and collects the time in milliseconds.

Element properties:

TargetMicrosoft.SystemCenter.M365.WatcherNodeApplication.Networking
CategoryPerformanceCollection
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DataSource DataSource Microsoft.SystemCenter.M365.DataSource.PortalLogin Default
System.Performance.DataGenericMapper ConditionDetection System.Performance.DataGenericMapper Default
Microsoft.SystemCenter.CollectPerformanceData WriteAction Microsoft.SystemCenter.CollectPerformanceData Default
Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData WriteAction Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData Default

Source Code:

<Rule ID="Microsoft.SystemCenter.M365.Rules.PortalLoginRule" Enabled="true" Target="Microsoft.SystemCenter.M365.WatcherNodeApplication.Networking" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>PerformanceCollection</Category>
<DataSources>
<DataSource ID="DataSource" TypeID="Microsoft.SystemCenter.M365.DataSource.PortalLogin">
<IntervalSeconds>900</IntervalSeconds>
<AzureADEndpoint>$Target/Host/Property[Type="Microsoft.SystemCenter.M365.WatcherNodeApplication"]/AzureADEndpoint$</AzureADEndpoint>
<GraphEndpoint>$Target/Host/Property[Type="Microsoft.SystemCenter.M365.WatcherNodeApplication"]/GraphEndpoint$</GraphEndpoint>
<TenantId>$Target/Host/Property[Type="Microsoft.SystemCenter.M365.WatcherNodeApplication"]/TenantId$</TenantId>
<ApplicationClientId>$RunAs[Name="Microsoft.SystemCenter.M365.RunAsProfile.ApplicationClient"]/UserName$</ApplicationClientId>
<ApplicationClientCredentials>$RunAs[Name="Microsoft.SystemCenter.M365.RunAsProfile.ApplicationClient"]/Password$</ApplicationClientCredentials>
<DelegatedUserId>$RunAs[Name="Microsoft.SystemCenter.M365.RunAsProfile.DelegatedLicensingUser"]/UserName$</DelegatedUserId>
<DelegatedUserCredentials>$RunAs[Name="Microsoft.SystemCenter.M365.RunAsProfile.DelegatedLicensingUser"]/Password$</DelegatedUserCredentials>
</DataSource>
</DataSources>
<ConditionDetection ID="System.Performance.DataGenericMapper" TypeID="Performance!System.Performance.DataGenericMapper">
<ObjectName>Microsoft 365 Network</ObjectName>
<CounterName>portal.office.com Connect Time (ms)</CounterName>
<InstanceName>$Target/Host/Property[Type="Microsoft.SystemCenter.M365.WatcherNodeApplication"]/LocationName$</InstanceName>
<Value>$Data/Property[@Name='RTTinMS']$</Value>
</ConditionDetection>
<WriteActions>
<WriteAction ID="Microsoft.SystemCenter.CollectPerformanceData" TypeID="SC!Microsoft.SystemCenter.CollectPerformanceData"/>
<WriteAction ID="Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData" TypeID="SCDW!Microsoft.SystemCenter.DataWarehouse.PublishPerformanceData"/>
</WriteActions>
</Rule>