Shromáždit čítač výkonu statistiky .NET/průměrného času spuštění (ms)
Stav instance se změní na Není v pořádku, pokud průměrná doba požadavku za definované časové období překročí prahovou hodnotu monitorování.
Výstrahy výkonu transakcí se vygenerují, pokud počet událostí výkonu překročí nakonfigurovanou prahovou hodnotu monitorování.
Nadměrně dlouhá volání databáze mohou být způsobena buď problémem se serverem, nebo se strukturou a složitostí dotazu. Dlouhé časy vstupu a výstupu mohou být způsobeny problémy se souborovým serverem. Problémy s výkonem webových služeb mohou být způsobeny tím, že webová služba nebo server, na němž je umístěna, jsou vypnuty nebo došlo k problému v kódu webové služby. Dlouhé časy interního provedení u aplikací mohou být způsobeny složitým nebo neefektivním kódem.
Typické snížení výkonu aplikace mohlo nastat z důvodu dlouhého volání databáze, dlouhého volání webové služby, pomalého vzdáleného volání rozhraní .NET, pomalého volání modelu COM+ nebo neúčinného kódu aplikace.
Target | Microsoft.SystemCenter.Apm.Transaction | ||
Parent Monitor | System.Health.PerformanceState | ||
Category | Custom | ||
Enabled | False | ||
Instance Name | .NET Statistic | ||
Counter Name | Avg execution time | ||
Alert Generate | True | ||
Alert Severity | MatchMonitorHealth | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | System.Performance.ConsecutiveSamplesThreshold | ||
Remotable | False | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.Apm.Transaction.AvgRequestTimeMonitor" Accessibility="Public" Enabled="false" Target="Microsoft.SystemCenter.Apm.Transaction" ParentMonitorID="Health!System.Health.PerformanceState" Remotable="false" Priority="Normal" TypeID="Performance!System.Performance.ConsecutiveSamplesThreshold" ConfirmDelivery="false">
<Category>Custom</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.Transaction.AvgRequestTimeMonitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorThreshold$</AlertParameter1>
<AlertParameter2>$Data/Context/SampleValue$</AlertParameter2>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Success" MonitorTypeStateID="ConditionFalse" HealthState="Success"/>
<OperationalState ID="Warning" MonitorTypeStateID="ConditionTrue" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<CounterName>Avg execution time</CounterName>
<ObjectName>.NET Statistic</ObjectName>
<InstanceName>$Target/Property[Type="Microsoft.SystemCenter.Apm.Transaction"]/CounterInstance$</InstanceName>
<AllInstances>false</AllInstances>
<Frequency>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorInterval$</Frequency>
<Threshold>$Target/Property[Type="Microsoft.SystemCenter.Apm.TransactionBase"]/AvgRequestTimeMonitorThreshold$</Threshold>
<Direction>greater</Direction>
<NumSamples>3</NumSamples>
</Configuration>
</UnitMonitor>