9 kraftfulla verktyg för felsökning och övervakning av ASP.NET-applikationer

By rik

Välfungerande övervakning och effektiv felsökning är fundamentalt för att uppnå framgång i applikationsutveckling.

ASP.NET, en ramverksplattform med öppen källkod baserad på .NET, används flitigt av utvecklare för att skapa webbsidor, applikationer och tjänster med hjälp av CSS, HTML och JavaScript. Dessutom används det för att bygga webb-API:er som möjliggör kommunikation med anslutna enheter, inklusive mobiler, via JSON eller XML.

Funktionaliteten i ASP.NET kan utökas med hjälp av SignalR-biblioteket, som via HTML5-baserade WebSockets API och andra API:er underlättar dynamisk kommunikation i flera riktningar mellan server och klient.

Microsoft erbjuder även andra ramverk som ytterligare förbättrar ASP.NET:s kapacitet, såsom dynamiska data, ramverk för dataapplikationer, AJAX-funktionalitet, samt ett MVC-ramverk (Model-View-Controller) för webbapplikationsutveckling.

Behovet av felsökning i ASP.NET-applikationer

Under design- och utvecklingsprocessen, eller programutvecklingslivscykeln (PDLC), är det inte ovanligt att fel uppstår. Tidig identifiering och korrigering av dessa fel är avgörande för att minimera arbetstimmarna och förhindra större utvecklingshinder i ett senare skede.

Felsökning är processen där logiska och syntaxfel i en PDLC hittas och åtgärdas.

Felsökningsprocessen innebär att programmerare eller utvecklare placerar brytpunkter i en ASP.NET-applikation. Dessa brytpunkter stoppar exekveringen av programmet i syfte att kontrollera dess korrekthet steg för steg. Detta hjälper utvecklare att noggrant analysera kodavsnitt innan de färdigställer eller korrigerar koden.

Betydelsen av applikationsövervakning i ASP.NET

Övervakning av ASP.NET-applikationer säkerställer att applikationerna fungerar enligt fastställda riktlinjer. Om svårigheter eller fel uppstår, ska utvecklare snabbt identifiera dem innan användarupplevelsen påverkas negativt.

Övervakningshändelser är avgörande för att bibehålla programmets driftstid och för att snabbt åtgärda fel. Det finns flera anledningar till att övervaka ASP.NET-applikationer, inklusive:

  • Kontroll av webbplatsens tillgänglighet och användning.
  • Förekomst av fel vid varje laddning av sidan.
  • Applikationen fungerar korrekt, men backend-processer som fakturering eller liknande körs inte.
  • Applikationen kan köra andra processer som kan ta upp resurser och försämra huvudprocessens hastighet.

Det är viktigt för både små och medelstora företag (SMB) samt stora företag att övervaka ASP.NET-applikationers svarstider, onlinetillgänglighet, kundrespons, backend-processer, etc., för att garantera den bästa användarupplevelsen och uppnå bättre affärsresultat.

Företag behöver åtminstone veta om applikationen är online och hur den fungerar övergripande. Är sidan snabb eller långsam? Är kunderna nöjda? Dessa kritiska frågor måste besvaras och övervakas kontinuerligt.

I de följande avsnitten diskuteras olika verktyg som används för att felsöka och övervaka ASP.NET-applikationer.

New Relic

New Relic erbjuder insyn i .NET Framework och .NET-kärnan, samt andra språk och komponenter utöver Microsofts. Programvaran hjälper till att identifiera och åtgärda flaskhalsar i applikationer och tjänster innan de påverkar kundupplevelsen.

Denna anpassningsbara programvara övervakar applikationer som körs i datacenter i molnet och webbtjänster från bland annat Amazon, Microsoft Azure och Elastic Cloud.

Dess dynamiska programanalys diagnostiserar och löser problem under produktionsfasen. En mekanism för undantagsvarningar hjälper till att lösa problem innan användare drabbas.

New Relic utgör ett komplett paket för att visualisera hela ASP.NET-ramverket med avseende på realtidsövervakning, driftspårning, varningar, diagnostik och felsökning i applikationer.

Funktioner:

  • Prestandajämförelse före och efter implementering av kod.
  • Visualisering av servicekartor för distribuerade applikationer och tjänsteberoenden.
  • Centraliserad instrumentpanel för att övervaka alla aktiva applikationer och deras hälsostatus.
  • Insamling av realtidsdata för att få insikt i applikationens prestanda.

Transparensen, förutsägbarheten och överkomligheten gör denna programvara mycket fördelaktig för små och medelstora företag. En grundläggande version är kostnadsfri för en användare. Priset börjar sedan på $99 per ytterligare användare och för extra funktioner.

ManageEngine

Applikationsövervakningen från ManageEngine har nio gånger blivit utsedd som en magisk kvadrant av Gartner. Den ger en detaljerad inblick i prestandan hos olika typer av webbapplikationer, och i användarupplevelser som är centrala för dina affärsapplikationer. Detta möjliggör identifiering och åtgärdande av problem innan de drabbar slutanvändare.

Hela applikationsstacken, från kodningssekvenser till Unified Resource Locator (URL), kan övervakas, spåras för prestandaproblem och buggar kan fixas innan större krascher inträffar.

Detaljerade prestandamått som sidvisningstid, nedladdningstid och väntetid kan också övervakas från olika platser på instrumentpanelen. Organisationer av alla storlekar kan använda programvaran för att spåra applikationskörning, övervaka prestanda i realtid och lösa flaskhalsar innan de påverkar användarnas upplevelse.

Funktioner:

  • Spårning och övervakning av användaråtgärder för svarstider och fel.
  • Identifiering av webbtransaktioner som leder till dålig användarupplevelse med hjälp av Apdex-poäng.
  • Användning av vattenfallsdiagram för att identifiera komponenter med långsam laddning.
  • Inspelning och uppspelning av viktiga webbvagar på några minuter.

Förutom .NET-ramverket kan verktyget användas för olika typer av webbapplikationer, inklusive Java, NodeJS, Ruby on Rails och PHP. Programvaran är tillgänglig för fri användning i 30 dagar, varefter priser för årliga och eviga licensversioner är tillgängliga på begäran.

Sentry

Sentry är en av de enklaste och mest använda programvarorna för fel- och prestandaövervakning i ASP.NET, lämplig för både små och stora företag. Den används av 80 000 organisationer över hela världen, inklusive Microsoft, Disney, Cloudfare, Reddit och Github.

Hela applikationsstacken, inklusive filnamn och radnummer, kan övervakas. Alla undantag, inklusive felsökningsloggar, nätverksfrågor, databasfrågor och tidigare fel, kan filtreras och grupperas för analys.

Den unika förmågan att skapa anpassade miljötaggar för undantag hjälper till att kategorisera applikationer, affärsproblem och användarfel. Hanteringen av ASP.NET-undantag baseras på specifika parametrar som HTTP-förfrågningar, arbetsflödessteg och värdnamn för varje problem.

Funktioner:

  • Distribuerad end-to-end-spårning för att upptäcka felaktiga och korrekta API-anrop.
  • Effektiv bugghantering och korrigering av ASP.NET-fel genom att automatiskt skicka e-postmeddelanden till berörda ägare eller team.
  • Möjlighet att slå samman dubbletter av buggar efter version och bedöma effekten på framtida versioner.

En gratisversion är tillgänglig för utvecklare för grundläggande prestandaövervakning. Priset börjar på $26 per månad.

DotTrace

DotTrace Profiler hjälper företag att identifiera prestandaflaskhalsar i alla typer av .net-applikationer, inklusive stationära applikationer, Windows Communication Foundation- och Windows Universal Platform-tjänster, ASP.NET-applikationer på IIS-webbservrar, enhetstester, Mono- och Unity-applikationer.

En av dess unika egenskaper är att den möjliggör omedelbar profilering av valfri statisk metod i koden. Detta ger möjlighet att profilera enskilda kodsnuttar direkt efter att de har skrivits. Det eliminerar behovet av att bygga en lösning, köra den genom en profilerare eller exekvera distributionsskript som implementerar ny kod.

Alla SQL-länkar kan spåras för att identifiera långsamma SQL-frågor och prestandastatistik. Detta kan kopplas till körning av applikationer för att undersöka prestandaproblem i en produktionsmiljö.

Funktioner:

  • Snabb analys av asynkron kod på ett ställe.
  • Fjärrprofilering av applikationer utan installation.
  • Analys av långsamma inkommande HTTP-förfrågningar för att fastställa den exakta orsaken.
  • Uppskattad prestandaförbättring genom omräknad tid för alla funktioner i en ögonblicksbild baserat på tidsjustering.

DotTrace erbjuder en dedikerad TeamCity-plugin som kan användas för att profilera CI-serverintegrationstester och förebygga prestandaförsämring. Programvaran Dot Trace är en del av dotUltimate-programvarupaketet som inkluderar sex andra verktyg. DotUltimate kostar $399 för en användare under det första året.

Dynatrace

Dynatrace är ett komplett .NET-paket för övervakning av webbläsarapplikationer, IIS, databaser, tjänster och aktiviteter. Det använder en egenutvecklad PurePath-teknik för att fånga tids- och kontextdata på kodnivå för varje transaktion på varje nivå utan luckor eller blinda fläckar i .NET-applikationsmiljöer.

Förkonfigurerade instrumentpaneler övervakar alla prestandamått i realtid, inklusive enskilda transaktioner, SQL-satser, kodnivåer och mer. Den visar olika mätvärden för felspårning, såsom skräphantering, storlek på webbförfrågningar, aktiva och inaktiva trådar, .NET-minne, omstarter, felfrekvens, bandbredd, etc.

Funktioner:

  • Prestandamått som CPU- och minnesanvändning, nätverkstrafik och TCP-omsändningar kan observeras.
  • Dess omvända spårningsfunktion hjälper till att förstå hur databasuttryck påverkar användarupplevelsen.
  • Automatisk identifiering och kartläggning av alla applikationer och affärstransaktionsflöden i .NET-applikationer.
  • Övervakning av webbserverprestanda såsom processer, trafik och frågor.

Kostnaden för full-stack övervakningsprogram är $69. Det finns en separat prisstruktur för specifika moduler.

AppDynamics

AppDynamics-plattformen ägs av det globala nätverksföretaget Cisco. Denna programvara erbjuder en komplett lösning för övervakning och hantering av prestanda för .NET-applikationer.

Plattformen har den mest skalbara designen i branschen och stödjer nästan alla .NET-övervakningsramverk, inklusive ADO, ASP, IIS, asynkron övervakning, fristående applikationer, Windows Services, Azure, Sharepoint-servrar, Remote Services, MVC5 och många fler.

Den har en dedikerad Business Transaction Management Board som övervakar och spårar den fulla effektiviteten av affärstransaktioner, inklusive transaktionsstatus, viktig statistik som anrop per minut och långsamma transaktioner.

AppDynamics visar detaljerad statistik såsom exekveringstiden för ASP.NET-transaktionsåterställningskoden.

Funktioner:

  • Automatiska ögonblicksbilder av långsamma eller väntande transaktioner för snabb analys och felsökning med ASP.NET.
  • Grafisk representation av prestandastatistik.
  • Snabb driftsättning tack vare dess snabba monteringsmekanism.

Programvaran kommer med en 15-dagars testperiod. Prisstrukturen baseras på CPU-kärnor och börjar på $6 per månad för Infrastructure Monitoring Edition. Det finns ytterligare tre utgåvor: Premium ($60/m), Enterprise ($90/m) och Real-Time User Monitoring (0,06/m per 1000 tokens).

ANTS Performance Profiler

ANTS Performance Profiler är utformad för att hitta prestandaproblem i .NET-standarden, .NET core- och tredjepartsramverk, SQL-frågor och mer. Den används för stationära applikationer, ASP.NET-applikationer och ASP.NET Model-View-Controller.

Denna programvara ger fullständig ASP.NET-prestandadata för .NET-kod och databasfrågor. Dess precisa diagnostik gör det möjligt att undersöka långsamma rader för att identifiera problem.

Dess anropsträdsstruktur identifierar och visar omedelbart dyra metoder, DB-frågor och webbfrågor för att felsöka långsam aktivitet. Professional Edition stöder två huvudsakliga databaser – SQL och Oracle – för att testa hur effektivt .NET-kod söker efter data i databasen.

Funktioner:

  • Ger bred I/O-prestanda när applikationer har diskaktivitet.
  • Spårar utgående HTTP-förfrågningar för att ta reda på vad som orsakade förfrågan.
  • Kombinerar varje radtid med SQL-fråga för att hitta långsamma frågor.
  • Övervakar CPU-specifik prestanda för .NET- eller ASP.NET-applikationer, vilket gör det möjligt att fokusera på relevanta data.

Testperioden är 14 dagar. Programvaran finns tillgänglig i två versioner: Standard och Professional. Standardpriset börjar på $545 per användare.

Retrace

Stackify Retrace är en lättanvänd SaaS-baserad programvara som övervakar ASP.NET- och Java-applikationer. Den erbjuder kompletta end-to-end-lösningar, inklusive applikationsövervakning, transaktionsspårning, mätvärdesloggning, felrapportering och robusta varningsfunktioner.

Dess egenutvecklade ”App score” ger detaljerad information utöver Apdex-poäng. Instrumentpanelen ger insikt i alla mätvärden som behövs för noggrann applikationsövervakning, inklusive bästa webbfrågor, prestanda för SQL-frågor, långsamma webbfrågor med mera.

Webbplattformen visar server- och applikationsprestanda med avseende på CPU- och minnesanvändning, signaler relaterade till kritiska transaktioner per minut, fel per minut, nöjdhetspoäng med mera.

Funktioner:

  • Automatisering av distributionsspårning med alla verktyg för kontinuerlig integration/kontinuerlig leverans (CI/CD).
  • Möjlighet att snabbt identifiera ändringar i prestanda eller felfrekvens.
  • Identifiering av hur lång tid bearbetningskoden för webbförfrågningar tar.
  • Snabb buggfix och identifiering av metoder för att optimera koden.

Programvaran är tillgänglig kostnadsfritt i 14 dagar. Kostnaderna börjar på $10/månad för förproduktion och $25/månad för produktion.

MiniProfiler

MiniProfiler är en öppen källkodsplattform för .NET, ASP.NET, ASP.NET Core och ASP.NET MVC, skapad av medlemmar i Stack Overflow-teamet.

MiniProfiler underlättar felsökning och optimering av sidprestanda genom att spåra den tid det tar att bearbeta varje del av applikationen och hur mycket tid som läggs på att bearbeta databasförfrågningar.

Plattformen används för att identifiera vilken del av applikationen som orsakar fördröjning, vilket gör att utvecklare kan granska flaskhalsar, göra nödvändiga korrigeringar och optimera applikationens hastighet.

De mest framträdande funktionerna inkluderar lagring, anropsstackar och databasprofilering.

Slutsats

Att skapa en robust applikation är en komplex uppgift som kräver många arbetstimmar för att utföra komplex kodning, inklusive HTML, CSS och JS. Applikationsutveckling involverar mappning av enheter, olika bibliotek, databasanslutning och svarstid från servrar och mycket mer.

Under denna process kan det vara svårt att avgöra den exakta orsaken till en applikations långsamhet. Verktygen och programvaran som beskrivits ovan är därför mycket användbara för att förenkla processen när det gäller felsökning, övervakning och optimering av applikationsprestanda.

Förhoppningsvis har den här genomgången varit till hjälp för att felsöka och optimera prestandan för ASP.NET-applikationer. Du kanske också är intresserad av att lära dig mer om ASP.NET Hosting Platforms.