asp.net monitoring
DESCRIPTION
ASP.NET Monitoring. Paul Mizel [email protected]. Inhalt. Motivation Theoretische Ansätze ASP.NET Möglichkeiten Benutzeranzahl Demo Do.NET Pla Framework Do.NET Pla - Demoseite Do.NET Pla - How it works. Motivation. Was ist Monitoring? Überwachen Reagieren Was bringt Monitoring? - PowerPoint PPT PresentationTRANSCRIPT
ASP.NET Monitoring
Paul [email protected]
© Copyright Do-DotNet - 2008
20.04.23 2
Inhalt
MotivationTheoretische AnsätzeASP.NET MöglichkeitenBenutzeranzahl DemoDo.NET Pla FrameworkDo.NET Pla - DemoseiteDo.NET Pla - How it works
© Copyright Do-DotNet - 2008
20.04.23 3
Motivation
Was ist Monitoring?ÜberwachenReagieren
Was bringt Monitoring?StatusübersichtStatistikenSystemkontrolle SLA - Aussagen
Ziel von MonitoringHöhere VerfügbarkeitStabileres System
© Copyright Do-DotNet - 2008
20.04.23 4
Theoretische Ansätze
Monitoring FachlogikJede SeiteMasterPageBasis SeiteHttpHandlerHttpModule
State Speichern und AbfragenFileSystem - Binär / XML / TextInProcess - Session / Cache / MemoryOutProcess - WebService / MQs / PipesSQLPerformanceCounter
© Copyright Do-DotNet - 2008
© Copyright Do-DotNet - 2008
Do.NET PLA Framework
© Copyright Do-DotNet - 2008
20.04.23 7
Do.NET PLA FrameworkPLA - Performance Logs and Alerts
HttpModule –> PlaModule
Zwei Default Provider GruppenEmptyPerformanceCounter
ProviderModel & Interface Injections & EventbasiertFlexibel ErweiterbarFlexibel KonfigurierbarFlexibel AnbindbarEinfach bedienbar
Was PLA nicht istErrorhandlingTracing oder Debuging
© Copyright Do-DotNet - 2008
20.04.23 8
Module des Do.NET Pla Frameworks
External
Data-Warehouse – MSCOM Config – Cache – Service – DB
Do.NET Pla Framework
IPerformanceProvider
IPerformanceMonitor
ASP.NET Web Application
IPerformanceMetrics IPerformanceState
IPerformanceStore
IPerformanceMetrics
IPerformanceState
IPerformanceStore
PlaModule:HttpModule laden
StatusabfragePerformanceCounter Statusantwort
© Copyright Do-DotNet - 2008
© Copyright Do-DotNet - 2008
20.04.23 10
Inhalt des Do.NET Pla Frameworks
Monitoring DatenAnzahl AufrufeAnzahl Fehlerhafter AufrufeAnzahl Aufrufe pro sec.Anzahl Fehlerhafter Aufrufe pro sec.% Durchschnittliche Aufrufzeit
AussagenWelche Seite wird wie am meisten aufgerufenWelche Seite verursacht die meisten FehlerStosszeiten verhalten der Seiten, im Aufruf und FehlerfallAussagen über Verarbeitungsverhalten der Seite
© Copyright Do-DotNet - 2008
20.04.23 11
How to use #1
HttpModule anmelden (web.config)
Do.NET Pla konfigurieren (web.config)
Do.NET Pla Provider erweitern
<httpModules> <add name="PlaModule" type="Do.NET.Pla.PlaModule, Do.NET.Pla"/></httpModules>
<section name="performanceConfiguration" type="Do.NET.Pla.Configuration.PerformanceConfiguration"/>
<performanceConfiguration enabled="true" providerGroup= "PerformanceCounter" applicationName = "Portal.Pla"> <performanceItems> <!--Add Namespaces--> <add name="*" enabled="true" isCriticalPerformance="false" description="Wartungsarbeiten" criticalResponder="Do.NET.Pla.PerformanceCriticalResponderDefault"/> </performanceItems> </performanceConfiguration>
providerGroup= "Custom"
performanceProvider="Do.NET.Pla.PerformanceCounter.Provider, Do.NET.Pla, Version=1.0.0.0, PublicKeyToken=null"performanceMetrics="Do.NET.Pla.PerformanceCounter.Metrics, Do.NET.Pla, Version=1.0.0.0, PublicKeyToken=null"performanceStore="Do.NET.Pla.PerformanceCounter.Store, Do.NET.Pla, Version=1.0.0.0, PublicKeyToken=null" performanceState="PlaWeb.Extend.ServiceState, PlaWeb.Extend, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
© Copyright Do-DotNet - 2008
20.04.23 12
How to use #2
Aus der Page auf Pla zugreifen
In der Page reagieren
Fachlogik Monitorentry{ using (IPerformanceMonitor mon = Performance.CreateMonitor(PerformanceContextTypes.Show)) { //mach was throw new Exception(); //Fehler simulation
mon.CountOperation (true);//erfolgreich ausgeführt }}catch (Exception) { //Fehlerbehandlung}
Implementieren IPerformanceContainer
Implementieren IPerformanceContainer
© Copyright Do-DotNet - 2008
20.04.23 13
How it workHttpModule
Bindung an InitInitialisierung des Frameworks (IPerformanceProvider)Bindung an die Page (IPerformanceContainer, IPerformanceCriticalResponder)Start der Zeitmessung
Bindung an ErrorFehler Markierung in Metrics
Bindung an UnloadZeitmessungAufräumarbeiten
Was macht das Do.NET PLA Framework?Instanz-Namen festlegenErfolgreich oder nicht erfolgreich ausgeführt merkenZeitmessung erstellenAbfrage des Status vom einer QuelleReaktion auf den kritischen Status melden
© Copyright Do-DotNet - 2008
20.04.23 14
Zusammenfassung
Monitoring ist nicht einfach nur guckenÜber HttpModule elegante Lösungen möglich
Transparentes Monitoring von ASP.NET WebSeitenSchwache Bindung zu ASP.NET Webseiten
Über PerformanceCounterLiveüberwachung möglichAutmatische Zwischenberechnung
In Kombination mit Enterprise Server Produkten vollständig Automatisierbar statistische AuswertungenSLA Kontrolle
© Copyright Do-DotNet - 2008
Weitere Vortragsfolien der .NET User Group Dortmund findet ihr auf:
www.do-dotnet.de
PLA – Performance Logs and Alertshttp://msdn2.microsoft.com/en-us/library/aa372635(VS.85).aspx
Data-Warehausehttp://de.wikipedia.org/wiki/Data-Warehouse
System Center Operations Manager 2007http://www.microsoft.com/systemcenter/opsmgr/
© Copyright Do-DotNet - 2008