Hvad er en APM-løsning (Application Performance Management)?
Overvågning og sporing af sundheden for nutidens distribuerede applikationer er blevet en kompleks opgave.
Mens mange produktionsapplikationer stadig overholder noget i retning af tre-trins-modellen (som adskiller præsentations-, logik- og dataniveauet), er den faktiske implementering af disse niveauer alt andet end standard - og kan nu spænde lokalt, cloud og multi -geografiske implementeringer, selv inden for samme applikation.
Så mens din front-end muligvis er hostet på servere, der kører Amazon Web Services (AWS), er din beregningslogik muligvis hostet i Rackspace, og nogle eller måske bare de mest følsomme datafiler kan stadig gemmes i dit lokale datacenter, hvor du styrer firewallen.
Selv med disse komplikationer er kommercielle applikationer dog typisk ikke et ledelsesproblem, hvis applikationen er populær nok til at berettige en dedikeret agent fra din APM-leverandør (Application Performance Management).
Den virkelige udfordring kommer fra brugerdefinerede applikationer, der er udviklet internt, som ofte ikke har de samme kroge som de kommercielle.
Men hvis din virksomhed er stærkt afhængig af en sådan brugerdefineret applikation, skal du være meget opmærksom på denne opsamling af APM-værktøjer.
En af de primære funktioner i ethvert APM-værktøj bør være at identificere enhver netværkshændelse eller infrastrukturtilstand, der påvirker ydeevnen negativt.
Dette kan komme fra en lang række kilder og kan ofte spores til tredjepartsprodukter, der ikke er under applikationsejerens kontrol.
De fleste kommercielle applikationer - databaser, e-mail-servere og webservere - har en eller anden form for overvågningsgrænseflade til både direkte og programmatisk brug.
Ethvert APM-værktøj skal have mulighed for at oprette forbindelse til disse kommercielle applikationer og overvåge deres status.
At forstå designet af en intern applikation med tilstrækkelig dybde til at inkludere alle eksterne forbindelsespunkter er en kritisk faktor, når man beslutter om de rigtige ydeevneparametre, der skal overvåges.
For nogle applikationer skal det være muligt blot at overvåge de forbindelsespunkter, der findes til en database, en webserver eller en webservice.
Dybere applikationsinspektion kræver typisk rekompilering og linkning af koden til en DLL leveret af overvågningsværktøjet.
Dette er muligvis ikke en levedygtig mulighed for nogle brugerdefinerede applikationer, men giver typisk meget bedre indsigt i det indre arbejde i en applikation.
Kvantificering af niveauet for overvågning, der kræves til dine missionskritiske applikationer, er et godt sted at starte en evaluering.
Hvis din organisation kun har et par websteder plus en database-backend, har du sandsynligvis ikke brug for nogle af de avancerede funktioner og skal ikke betale for dem.
Nogle af produkterne i denne sammenfatning er Microsoft-specifikke, så du bliver nødt til at se andre steder, hvis du bruger en anden database end Microsoft SQL eller en open source-komponent.
Hvis du har en kompleks applikation med flere niveauer og betragter den som missionskritisk, så vil du se nærmere på nogle af værktøjerne med de dybere applikationsovervågningsfunktioner.
De vigtigste APM-overvågningsfunktioner
Nøglefunktioner til styring og overvågning af applikationer starter med konfigurationsprocessen.
Oprettelse af forbindelse til velkendte kommercielle applikationer bør ikke tage mere end et par klik plus indtastning af administratorlegitimationsoplysninger.
Support til de mest populære kommercielle databaser, herunder IBM DB2, Microsoft SQL og Oracle, bør være en given, ligesom dækning for de mere populære open source-databaser, herunder PostgreSQL og MySQL.
I stigende grad vil du gerne udvide listen yderligere til at omfatte det hurtigt voksende landskab af cloud-databasetilbud såsom Amazon SimpleDB og Microsoft Azure SQL Database.
Konfiguration og aktivering af alarmer udløst af specifikke applikationshændelser er en nøglefunktion, som ethvert værktøj skal have.
Alarmerne skal være i stand til at udløse underretningen fra en ansvarlig part ved hjælp af enten e-mail eller SMS eller endda integration med et dedikeret alarmværktøj som PagerDuty.
Et tilføjet plus her ville være muligheden for automatisk at afhjælpe visse problemer baseret på et sæt foruddefinerede workflow-trin.
Gravning under dækslerne til en webbaseret applikation kræver overvågning og afkodning af trafik mellem de forskellige niveauer.
At have evnen til at fange den trafik og derefter afkode den for at spore problemer er en funktion, der typisk kun findes i avancerede værktøjer.
Præsentation af performance-grafik til individuelle SQL-forespørgsler eller databaseopdateringer bringer en helt anden dimension til grundlæggende overvågning.
Mindst et af de testede produkter (Stackify) gør dette muligt til en meget rimelig pris.
Logfilanalyse har set en enorm stigning i interessen de seneste år.
At vide, hvilke poster der skal trækkes fra en applikationslog og derefter omdanne disse data til brugbare oplysninger, kræver typisk et loganalyseprodukt.
Stackify tilbyder en tilføjelse til deres grundlæggende styringsværktøj for at gøre netop det.
Andre produkter i denne sammenfatning giver nogle logfil-analysefunktioner på forskellige niveauer indbygget i deres basisprodukt, mens andre tilbyder denne funktionalitet som et plug-in.
Hvordan vi testede APM-løsninger
Det skal bemærkes indledningsvis, at det primære mål med denne gennemgang ikke var et dybtgående kig på de finere nuancer af overvågning af applikationsydelse, men mere af et højt niveau af de tilgængelige værktøjer til at spore applikationer, der er kritiske for organisationen —Og netværksressourcer og betingelser, der er kritiske for dem.
Udgangspunktet for denne evaluering vedrører det vanskelighedsniveau, der kræves for at opsætte og konfigurere overvågningen af ??både Commercial-Off-The-Shelf (COTS) og brugerdefinerede, internt udviklede applikationer.
Tilføjelse af overvågningsfunktionen til et brugerdefineret program skal være så minimalt påtrængende som muligt og veldokumenteret til at inkludere prøvekode.
Nogle af de gennemgåede produkter kræver kun, at du angiver et par kodelinjer, mens andre har brug for mere omfattende ændringer.
Hvis din applikation allerede har en vis fejllogning, behøver du muligvis ikke nogen ændringer.
Rapportering af applikationer kan falde ind under kategorien mødeaftaler om serviceniveau (SLA'er) for specifikke applikationer.
Opbygning af brugerdefinerede rapporter med specifikke forespørgsler behøver ikke være svært.
Eksport af disse rapporter til en række filformater bør også være en nem ting at gøre.
Dashboards skal have samme niveau af fleksibilitet og tilpasning.
Grafik, der vises med afbildninger af fejl, skal give en administrator mulighed for at bestemme problemet uden at grave meget.
Sådan køber du
At definere kravene til et robust APM-værktøj skal være udgangspunktet for enhver seriøs evaluering.
Grundlæggende stykker inkluderer muligheden for at se detaljerede oplysninger om vigtige kommercielle applikationer og kommunikationen mellem forskellige niveauer.
Mange organisationer har ikke personalet til at overvåge computerskærme 24/7.
Automatiseret alarmering og afhjælpning er bestemt et nøglekrav i så fald for at reducere den krævede administrative arbejdskraft.
Trendbaseret rapportering og overvågning hjælper med at bestemme anvendelsesniveauer og identificere potentielle flaskehalse, før de bliver et problem.
Gode ??rapporteringsværktøjer ville være et andet krav for at inkludere evnen til at oprette tilpassede rapporter og forespørgsler.
Når du først har denne liste over væsentlige krav, skal du kunne se på hvert af disse produkter og afgøre, om det opfylder disse krav eller ej.
Hvis mere end et produkt er kvalificeret, skal du selv foretage nogle test for at se, hvilket produkt der bedst passer til dine behov.
Priserne varierer, begyndende med gratis, derefter fra en low-end, pr.
Server, pr.
Måned på $ 1,24, op til en købspris på $ 1.995 for op til 50 enheder.








