Successfully reported this slideshow.
Your SlideShare is downloading. ×

DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 49 Ad

DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?

Download to read offline

DevOps als ganzheitliche Strategie geht von drei Phasen aus: Build - Measure - Learn. Die Build Phase mit der zeitnahen schnellen Realisierung, Integration und Deployment von neuen Features mit hohem Kundennutzen, haben Teams dank agiler Vorgehensmodelle mittlerweile gut im Griff. Sträflich vernachlässigt werden aber noch die essenziellen Phasen Messen und Verbessern. Viele Teams haben hier noch keine konkrete Idee, wie ein pragmatischer Messprozess aussehen kann. Der Vortrag wird sich deshalb dem Thema "Measure und Learn" aus Service- und Nutzerperspektive annehmen. Leitfragen sind bspw.: Arbeitet meine Infrastruktur noch wie geplant? Werden Dienste unbemerkt langsamer? Welche Funktionalitäten werden genutzt? Funktionieren Apps und Services überall wie geplant? Abgerundert werden die Fragen mit Demos aus AIT Projekten, bei denen u.a. das VS Last & Performance Test Framework sowie der Cloud-Dienst Application Insights neu zu einem 360° Applikationsmonitoring zusammengestellt wurden.

DevOps als ganzheitliche Strategie geht von drei Phasen aus: Build - Measure - Learn. Die Build Phase mit der zeitnahen schnellen Realisierung, Integration und Deployment von neuen Features mit hohem Kundennutzen, haben Teams dank agiler Vorgehensmodelle mittlerweile gut im Griff. Sträflich vernachlässigt werden aber noch die essenziellen Phasen Messen und Verbessern. Viele Teams haben hier noch keine konkrete Idee, wie ein pragmatischer Messprozess aussehen kann. Der Vortrag wird sich deshalb dem Thema "Measure und Learn" aus Service- und Nutzerperspektive annehmen. Leitfragen sind bspw.: Arbeitet meine Infrastruktur noch wie geplant? Werden Dienste unbemerkt langsamer? Welche Funktionalitäten werden genutzt? Funktionieren Apps und Services überall wie geplant? Abgerundert werden die Fragen mit Demos aus AIT Projekten, bei denen u.a. das VS Last & Performance Test Framework sowie der Cloud-Dienst Application Insights neu zu einem 360° Applikationsmonitoring zusammengestellt wurden.

Advertisement
Advertisement

More Related Content

Similar to DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot? (20)

More from Marc Müller (20)

Advertisement

Recently uploaded (20)

DWX 2016 - Monitoring 2.0 - Monitoring 2.0: Alles im Lot?

  1. 1. Monitoring 2.0 – Alles im Lot? Nico Orschel, MVP @ AIT, DE Marc Müller, MVP @ 4tecture, CH
  2. 2. ▪ ▪ Plan Build Release
  3. 3. Measure Learn Build 4
  4. 4. … ist ein Überbegriff für alle Arten der unmittelbaren systematischen Erfassung (Protokollierung), Messung, Beobachtung oder Überwachung eines Vorgangs oder Prozesses mittels technischer Hilfsmittel (zum Beispiel Langzeit-EKG) oder anderer Beobachtungssysteme. Dabei ist die wiederholte regelmäßige Durchführung ein zentrales Element der jeweiligen Untersuchungsprogramme, um anhand von Ergebnisvergleichen Schlussfolgerungen ziehen zu können (siehe auch Längsschnittstudie). 5
  5. 5. 6
  6. 6. 7
  7. 7. Ziel: Primäre technische Kennzahlen vom Server Beispiele: - CPU / Memory Utilization - Response Time - Transferred Data - Data Transfer Rate (e.g MBits/sec) - Connections - … 8
  8. 8. Ziel: Primäre technische Kennzahlen aus der Applikation 9 Beispiele: - Exceptions Client - Exceptions Server - Stacktraces - Non responsive external Services (Salesforce, SAP, CRM, Internal Services, …)
  9. 9. Ziel: Überwachung der (Business-)Prozesse Beispiele: - Welche Features meiner Anwendung werden „tatsächlich“ genutzt? - Wie intensiv werden Features genutzt? - In welche Features müssen wir investieren? - Wird die Anwendung aus Kundenperspektive langsamer? 10
  10. 10. 11
  11. 11. Unser Fokus heute: Microsoft Azure Application Insights Framework zur Überwachung von Anwendungs- Telemetriedaten Alternativen: PreEmptive Analytics, New Relic Software Analytics 12
  12. 12. Where do we invest next? Show Notifications & Insights Usage
  13. 13. 14
  14. 14. Fallstudie WebApp 15
  15. 15. Problemstellung
  16. 16. Enterprise Portal SAP Salesforce Navision Kunden WebServices
  17. 17. Problem: a) Zyklische Überwachung eines extern. erreichbaren Webportals b) Seite enthält viel JavaScript Logik sowie ext. Services Lösung: Monitoring der Verfügbarkeit über WebTests - Aufzeichnung via VS Ultimate, Fiddler - Direkte Ausführung via Azure Portal
  18. 18. Testen von komplexer JavaScript Logik JavaScript Code teilweise voneinander abhängig Externe Services überwachen (ohne die Möglichkeit AI zu integrieren) 20
  19. 19. Problem: a) Services ggf. schlecht via webtest überwachbar b) Daten sollen im globalen Monitoring überwacht werden Lösung: Verwendung von anderen Testing Frameworks / CMD - CodedWebTests - Unit Tests (MSTest, Xunit,…) Reporting und Fehleranalyse durch eigene Zusatzdaten via Azure AI SDK Ausführung zyklisch via Task Scheduler/CMD 21
  20. 20. Problem: a) Prüfen ob Kernszenarien (End2End) noch funktionieren b) WebApp setzt intensiv auf JavaScript Lösung: Funktionale Tests via UI oder Unit Tests (Selenium, CodedUI, ...) Ausführung: Zyklisch via CMD / Task Scheduler Reporting und Fehleranalyse durch eigene Zusatzdaten via Azure AI SDK 23
  21. 21. Application Insights 24
  22. 22. AI Telemetry for Services WebTests Browser Server URL Ping WebTests Insert Javascript snipet Custom Events MMA (default): APM Perf, Exception, Memory Java: APM, Perf, Exception Custom Events Default Server Side Events Collect Logs Nlog Log4Net Trace MMA (custom): Windows Perf Counters Build Events Easy to configure: No coding, simple, fast, few clicks. Legend: Requires more time: could require coding, more clicks.
  23. 23. AI Telemetry for Services Web Tests Browser Server URL Ping WebTest s Insert Javascript snipet Custom Events MMA (default): APM Perf, Exception, Memory Java: APM, Perf, Exception Custo m Events Default Server Side Events Collect Logs Nlog Log4Net Trace MMA (custom): Windows Perf Counters Build Events Easy to configure: No coding, simple, fast, few clicks. Legend: Requires more time: could require coding, more clicks. HockeyApp Mobile, UWP, WPF, WinForms, … Custo m Event s Collect Logs, Exceptions, Feedback
  24. 24. What is Application Insights? Telemetry is collected at each tier: server applications and browser1 Telemetry arrives in the Application Insights service in the cloud where it is processed & stored Get a 360° view of the application including availability, performance and usage patterns 3 2
  25. 25. 1 Outside-in monitoring URL pings and web tests from 16 global points of presence Observed user behavior How is the application being used?2 Developer traces and events Whatever the developer would like to send to Application Insights 3 Observed application behavior No coding required – service dependencies, queries, response time, exceptions, logs, etc. 4 Infrastructure performance System performance counters5
  26. 26. Availability
  27. 27. Ist meine Applikation / meine Services noch verfügbar? Http basierte Webtests ▪ ▪ Alert ▪ ▪
  28. 28. Ping auf URL WebTests
  29. 29. Tracking
  30. 30. JavaScript bei Page Load ▪ ▪ Async, Queued <script type="text/javascript"> var appInsights = window.appInsights || function (config) { function r(config) { t[config] = function () { var i = arguments; t.queue.push(function () { t[config].apply(t, i) }) } } var t = { config: config }, u = document, e = window, o = "script", s = u.createElement(o), i, f; for (s.src = config.url || "//az416426.vo.msecnd.net/scripts/a/ai.0.js", u.getElementsByTagName(o)[0].parentNode.appendChild(s), t.cookie = u.cookie, t.queue = [], i = ["Event", "Exception", "Metric", "PageView", "Trace"]; i.length;) r("track" + i.pop()); return r("setAuthenticatedUserContext"), r("clearAuthenticatedUserContext"), config.disableExceptionTracking || (i = "onerror", r("_" + i), f = e[i], e[i] = function (config, r, u, e, o) { var s = f && f(config, r, u, e, o); return s !== !0 && t["_" + i](config, r, u, e, o), s }), t }({ instrumentationKey: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" }); window.appInsights = appInsights; appInsights.trackPageView(); </script>
  31. 31. 34
  32. 32. Quelle: https://azure.microsoft.com/en- us/documentation/articles/app-insights-api-custom- events-metrics/ Beispiele: TrackPageView, TrackEvent, TrackMetric, TrackException, TrackRequest, TrackTrace, TrackDependency Beispiel: var telemetryClient = new TelemetryClient(); telemetryClient.TrackEvent($"Generating {numberOfBooks} books");
  33. 33. Performance
  34. 34. Überwachung des Ausführungsprozesses Überwachung der Performance Indikatoren Installation auf Zielsystem notwendig
  35. 35. Ergebnis – 360 Grad Monitoring 38
  36. 36. Analyse von allen AI Daten über eigene Abfragen im Browser Codename: Kusto
  37. 37. 43
  38. 38. 44
  39. 39. 45
  40. 40. Power BI ▪ ▪ 46
  41. 41. Build und Release Automation mit TFS 2015 / VSTS 21.06.2016 11:45 - 12:45 Uhr Track: ALM Performance & Load Testing mit Visual Studio 21.06.2016 14:15 - 16:15 Uhr Track: Performance Continuous Quality 22.06.2016 09:00 - 10:00 Uhr Track: Better Coding Agile Methoden in verteilten Teams 22.06.2016 14:15 - 15:15 Uhr Track: Agile
  42. 42. KONTAKT Nico.Orschel@aitgmbh.de +49 151 55052624 AIT GmbH & Co. KG Leitzstr. 45, 70469 Stuttgart www.aitgmbh.de BERATUNG Agile ALM und TFS .NET und Architektur ENTWICKLUNG Dienstleister für individuelle Lösungen mit .NET und Azure © AIT GmbH & Co. KG – Alle genannten und gezeigten Marken oder Warenzeichen sind eingetragene Marken oder eingetragene Warenzeichen ihrer jeweiligen Eigentümer und ggf. nicht gesondert gekennzeichnet. Aus dem Fehlen der Kennzeichnung kann nicht geschlossen werden, daß es sich bei einem Begriff oder einem Bild nicht um eine eingetragene Marke oder ein eingetragenes Warenzeichen handelt.
  43. 43. Marc Müller Principal Consultant für DevOps, ALM, TFS /VS, .NET E-Mail: marc.mueller@4tecture.ch Webseite: http://www.4tecture.ch Schulungen: http://4tecture.ch/trainings Blog: http://4tecture.ch/blog Twitter: @muellermarc
  44. 44. - https://azure.microsoft.com/en- us/documentation/articles/app-insights- analytics/ - https://azure.microsoft.com/en- us/documentation/articles/app-insights-web- monitor-performance/ - https://azure.microsoft.com/en- us/documentation/articles/app-insights- proactive-detection/

×