asp.net monitoring

17
ASP.NET Monitoring Paul Mizel [email protected]

Upload: daxia

Post on 05-Jan-2016

24 views

Category:

Documents


1 download

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 Presentation

TRANSCRIPT

Page 1: ASP.NET Monitoring

ASP.NET Monitoring

Paul [email protected]

Page 2: ASP.NET Monitoring

© 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

Page 3: ASP.NET Monitoring

© 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

Page 4: ASP.NET Monitoring

© 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

Page 5: ASP.NET Monitoring

© Copyright Do-DotNet - 2008

Page 6: ASP.NET Monitoring

© Copyright Do-DotNet - 2008

Do.NET PLA Framework

Page 7: ASP.NET Monitoring

© 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

Page 8: ASP.NET Monitoring

© 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

Page 9: ASP.NET Monitoring

© Copyright Do-DotNet - 2008

Page 10: ASP.NET Monitoring

© 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

Page 11: ASP.NET Monitoring

© 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">

Page 12: ASP.NET Monitoring

© 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

Page 13: ASP.NET Monitoring

© 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

Page 14: ASP.NET Monitoring

© 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

Page 15: ASP.NET Monitoring

© 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/

Page 16: ASP.NET Monitoring

© Copyright Do-DotNet - 2008

Vielen Dank!

Paul [email protected]

Page 17: ASP.NET Monitoring

© Copyright Do-DotNet - 2008