Idag ska vi titta på New Relic anpassade instrumentpaneler. Specifikt kommer jag att visa dig tre sätt att jag brukar använda anpassade instrumentpaneler:
Det här innehållet beställdes av New Relic och skrevs och / eller redigerades av Tuts + -laget. Vårt mål med sponsrat innehåll är att publicera relevanta och objektiva handledningar, fallstudier och inspirerande intervjuer som erbjuder genuint pedagogiskt värde till våra läsare och gör det möjligt för oss att finansiera skapandet av mer användbart innehåll.
Men innan vi kommer in i något av det, måste vi först fråga oss en fråga, varför ska vi använda anpassade instrumentpaneler alls? New Relic gör ett ganska bra jobb med att presentera dina programresultatdata. Med hjälp av det vanliga användargränssnittet kan du få mer information om din apps prestanda än du någonsin kunde ha innan du började använda New Relic. Så innan jag visar dig hur du använder anpassade instrumentpaneler, förklarar jag varför jag tycker att alla som använder New Relic bör titta på dem snarare än senare.
Det är sant, de flesta använder gärna New Relic utan att någonsin titta på den anpassade instrumentbrädans funktionalitet som den ger. Det är inte förrän du är en ganska avancerad användare som du kan bestämma för att titta på anpassade instrumentpaneler och se vad de har att erbjuda dig. Jag tycker att det här är synd, om du spelar med anpassade instrumentpaneler kan du inte bara skära och tärning dina appresultatdata på olika sätt, men kan också:
Du kan lära dig alla dessa saker genom att läsa dokumentationen, men vi kan börja med att förstå några av dessa saker genom exempel (på en mer intuitiv nivå), snarare än att bara veta det som en massa prickpunkter. Som det ofta är fallet med teknik, som tinkar med ett orelaterat verktygsområde, kommer du ibland att ge dig mer insikt och förståelse för hur de mer vanliga områdena i samma verktyg fungerar. Med hjälp av anpassade instrumentpaneler får du en mer kunnig New Relic-användare, och om du har läst de andra New Relic-inlägg som jag har skrivit, vet du hur jag känner för att känna till dina verktyg.
Den enda anpassade instrumentbrädan som jag alltid gillar att bygga är vad jag kallar "24 timmar i korthet". Jag tar en massa befintliga kartor som jag anser vara viktiga för en enda applikation, låser tidsperioden till de senaste 24 timmarna och lägger dem alla ihop på en instrumentbräda. När jag tittar på en specifik applikation i New Relic blir det den första skärmen jag tittar på för att se om det är något särskilt dåligt som hoppar ut på mig från de senaste 24 timmarna. Låt oss se hur vi kan bygga denna typ av instrumentpanel.
För det första behöver vi skapa en ny anpassad instrumentbräda. I New Relic-gränssnittet klickar du på Dashboards-> Skapa anpassad instrumentpanel. På nästa skärm ger vi vår instrumentpanel ett namn (du kan använda "24 timmar i en blick" eller ditt eget namn) och välja rutnätlayouten. I grunden är gallerinställningen en samling av diagram i samma storlek och översiktslayouten är ett stort diagram omgivet av ett gäng mindre diagram (vi använder översiktslayout i nästa avsnitt).
Nu måste vi välja den app för vilken vi vill skapa vår instrumentpanel och sedan hitta några relevanta diagram som ska läggas till. Jag gillar att lägga till följande:
Beroende på din ansökan kanske du vill lägga till några andra, men jag tycker att det här ger mig en ganska bra bild av vad som händer med applikationen och vad som ska undersökas om något är fel. Låt oss hitta ett av dessa diagram och lägga till dem i vår nya instrumentpanel. Serverns genomsnittliga svarstid är en enkel, eftersom det är det stora diagrammet i Översikt del av Övervakning fliken för en applikation. Varje diagram i New Relic-gränssnittet har en liten New Relic-logotyp i det nedre högra hörnet. När du håller muspekaren över den här logotypen blir det ett plustecken. Genom att klicka på pluset kan du lägga till det här diagrammet på en instrumentpanel:
Men innan vi lägger till vårt diagram måste vi ändra tidsfönstret för New Relic-gränssnittet till 24 timmar. Vi behöver göra det för att ge oss möjlighet att "låsa" tabellen till de senaste 24 timmarna när vi faktiskt lägger till det i instrumentbrädan (det här är obekvämt UX enligt min åsikt, men vi har åtminstone ett sätt att göra vad vi behöver):
Vi kan nu gå vidare och lägga till diagrammet:
Glöm inte att kryssa Lås för att spänna checkbox. När vi nu besöker vår nya instrumentpanel borde det diagram vi just lagt till vara där:
Vi kan skölja och upprepa ovanstående process tills vi har lagt till alla diagram som vi vill ha. Till slut borde det se ut så här:
Du kan klicka på Redigera instrumentpanelen knappen i det övre högra hörnet som låter dig dra diagrammen runt och ordna dem i den ordning du vill ha. Det enda som ska noteras är att du inte kan ändra de enskilda kartorna på något sätt (till exempel kan du ha en mer beskrivande diagramtitel, men du kan inte ändra det) eftersom de är standarda nya relikskartor.
Den andra anpassade instrumentpanelen som jag alltid gillar att bygga från befintliga diagram är "Alla applikationer i en blick". Detta gäller bara om du har flera program du letar efter. Här väljer vi en eller två av de viktigaste kartorna för varje relevant applikation och lägger dem ihop. Det är vanligtvis en säker satsning att använda diagrammet "Response Time" från varje applikation. Den faktiska processen att sätta instrumentbrädorna tillsammans är densamma som beskrivits ovan, du behöver bara byta program för att få relevanta diagram från varje. Till slut borde du sluta med något så här:
Det här är skärmen jag brukar se först när jag loggar in på New Relic. Det kan vara användbart att låsa tiden för varje diagram i 24 timmar, precis som vi gjorde för vår "24 timmar vid en blick" -panel, men det är upp till dig. Det här är naturligtvis endast relevant om du stöder flera applikationer. Om du har sagt att om du har flera förproduktionsmiljöer för din ansökan (för staging eller load test), kanske du vill sätta dem alla ihop i en instrumentbräda som liknar den här, det kan hjälpa dig att fånga förändringar som försämrar prestanda före koden hamnar i produktion.
New Relic UI lider av några nödvändiga begränsningar. Det måste vara allt för alla människor, så de kan bara gruppera diagram och tabeller som skulle vara meningsfulla för alla webbapplikationer. För det mesta kommer gränssnittet för gränssnitt att begränsa dig för att titta på en transaktion i taget och en eller två uppsättningar av mätvärden åt gången, om du behöver komma åt andra som du måste klicka runt. Den goda nyheten är, med anpassade instrumentpaneler, gäller inte denna begränsning längre. Vi vet vilka transaktioner som är relaterade inom vår domän, vi vet också vilka mätvärden som är viktiga för oss per transaktionsbasis. Vi kan bygga en instrumentpanel som grupperar flera relaterade transaktioner med alla viktiga mätvärden för varje och tittar på den på en skärm.
Låt oss säga att vi har en särskilt viktig transaktion i vår ansökan, det kan vara meningsfullt att ha en instrumentbräda där vi kan se de flesta viktiga uppgifterna om denna transaktion på ett ögonblick. Här på Tuts + har vi ett begrepp av artiklar (självklart) och artiklar är ganska viktiga för oss, låt oss bygga en instrumentbräda för att hålla koll på dem.
Återigen behöver vi skapa en ny instrumentpanel precis som tidigare, vi kallar det "Artikelöversikt", men den här gången använder vi en översiktslayout. Vi behöver inte leta efter diagram eftersom vi ska skapa egna skräddarsydda diagram, så klicka på den stora knappen för att skapa huvudschemat för vår instrumentpanel:
Det kommer att fråga dig om du vill lägga till ett diagram eller ett bord, vi lägger till ett bord senare, för nu väljer du diagram. Du kommer att se en skärm som ser ut så här:
Det viktigaste att titta på här är den metriska som du vill visa. När du klickar in i textfältet Metrics kommer det att släppa ner en lista över mätvärden på toppnivå som du kan välja. Metrics i New Relic heter som prefix / kategori / etikett. I fallet med en Rails-app kan prefixet vara Kontrollant
eller Active
(Om du inte använder Rails, kommer prefixet för transaktioner att vara WebTransactions
). För Kontrollant
, kategorin skulle vara registeransvarigens namn och etiketten blir åtgärdsnamnet. Om du utforskar några av mätvärdena medan du spelar runt med ditt första diagram, börjar du känna för vilken typ av mätvärden du har tillgång till och var du hittar dem. Om du inte ser de mätvärden du förväntar dig, se till att du har rätt program valt inom New Relic, det här ringer mig alltid upp.
Tillbaka till vårt huvudtabell. Den metriska vi är efter kommer att vara bunden till vår ArticlesController
, så heter det Controller / artiklar / show. När vi har valt metriska, innehållet i Värde rullgardinsmenyn ändras för att innehålla alla värden som är meningsfulla för den här metriska. Det är värt att återigen utforska alla olika värden och se vad det resulterande diagrammet faktiskt innehåller. I vårt fall verkar "Genomsnittlig svarstid" vara en bra sak att ha som vårt huvudsakliga diagram.
Vid den här tiden, om vi ger vårt diagram en titel och klickar på förhandsvisning knappen kan vi se hur det ser ut:
Det här ser bra ut, men jag vill att Y-axeln ska vara i millisekunder och jag vill också ha enheterna på axeln. Så, låt oss släppa ned de avancerade alternativen för diagrammet och ändra nummerformat som "Till millisekunder
", vi kommer också att ställa in Y-axel enhet etikett som 'Fröken
':
Vårt diagram ser nu bra ut på förhandsvisningen. Det enda vi noterar att vi inte har pratat om är Diagramklick falla ner. Detta gör att ditt diagram verkligen kan vara en länk till en annan anpassad instrumentpanel, när du klickar på diagrammet kommer den instrumentpanelen att visas. Vi behöver inte den här funktionaliteten, så vi lämnar nedrullningen ensam. Vi ska nu gå vidare och spara vårt diagram.
Vi kan nu lägga till de olika underkartorna. I vårt fall råkar jag veta att Tuts + har ett handledningsbegrepp (också självklart) som är nära relaterat till artiklar, så om jag ska hålla koll på artikelens genomsnittliga svarstid är det nog en bra idé att få en handledningens genomsnittliga svarstid i närheten som en jämförelse, så jag ska skapa ett diagram för det. Vi följer samma steg som ovan, i slutändan ser vår instrumentpanel ut så här:
Hmm, det ser ut att den genomsnittliga svarstiden för artiklar är mycket högre än handledning, men jag råkar veta att de båda delar en betydande mängd kod, konstigt. Men det är också en indikation på att vår anpassade instrumentbräda redan betalar utdelningar och vi har inte ens slutat bygga den ännu. Jag kunde ha hittat den här informationen genom att kolla upp den i det vanliga New Relic-användargränssnittet, men med att diagrammen sida vid sida så här hjälper till att verkligen ta hem det faktum att det kan vara ett problem.
Det kan också vara bra att se var vårt ArticlesController
sitter jämfört med andra kontroller, så långt deras maximala svarstid går, är detta ett jobb för ett bord. Vi lägger till ett annat diagram som tidigare, men den här gången väljer du bord istället för diagram. För att skapa tabeller med flera rader måste vi använda jokertecken i vårt metriska namn. I vårt fall kommer jag att ställa in mätvärdet för att vara Kontrollant/, Detta kommer att markera alla mätvärden under *Kontrollant
prefix, jag ska nu ställa in begränsa textboks att vara 10
vilket kommer att göra exakt som du förväntar dig och sätta antalet rader i vårt bord till tio. I slutändan borde vi ha något som ser ut så här, precis innan vi sparar:
Vår anpassade instrumentpanel kommer nu att vara:
Det verkar som ArticlesController # show
har den längsta maximala svarstiden utav alla kontrolleråtgärder, inklusive TutorialsController # show
, Det här är väldigt nyfiken och jag borde noga göra en anteckning för att titta på detta.
Vi kan fortsätta lägga till ett gäng andra diagram, som slutanvändarens genomsnittliga svarstid eller samtal per minut. Men några saker du bara inte kan konstruera med hjälp av ett anpassat diagram, till exempel historisk genomströmning eller svarstid. Lyckligtvis kan vi alltid falla tillbaka på att hitta de diagram som vi vill ha någon annanstans i New Relic och helt enkelt lägga till dem på vår anpassade instrumentbräda.
Den enda begränsningen med att använda en instrumentpanel som har egna diagram är att du måste ha rätt app vald i New Relic, annars kommer alla anpassade diagram på din instrumentpanel att vara blank.
Om du läser min senaste artikel om anpassade statistik kan du komma ihåg mig att nämna att det enda sättet för dig att visa de anpassade metriska data som du har samlat är att skapa en anpassad instrumentpanel i New Relic, det här är den tredje anledningen att använda anpassade instrumentpaneler. Om du samlar in många anpassade mätvärden kan det här vara den bästa anledningen till alla.
På Tuts + har vi ett begrepp av kategorier (ännu en gång, självklart), jag råkar bara veta att vi har några anpassade mätvärden som flyter runt för kategorier. Låt oss se om vi kan sätta dessa på en instrumentbräda och faktiskt få en uppfattning om vad som händer. Vi skapar en annan instrumentpanel och kallar det för "Custom Customs". Alla anpassade mätvärden i New Relic borde ligga under Beställnings
prefix och det är här vi hittar de mätvärden vi letar efter:
Vi ska skapa ett par diagram, en för att se hur länge bygga presentatörer i CategoriesController
tar och den andra att se hur lång tid det tar att få en länkhack från presentatörerna. Det viktigaste att veta med anpassade statistik är vilken typ av data du faktiskt skickar till New Relic. I det här fallet råkar jag veta att vi mäter tid, så jag kan välja "Genomsnittligt värde
'som mitt mätvärde och ställa in Nummerformat till millisekunder
för att få ett rimligt snyggt diagram. Efter att ha skapat båda diagrammen ser vår anpassade instrumentpanel ut så här:
Det verkar som om att få länkhacken från presentatörerna är väldigt snabbt och fluktuerar inte för mycket. Det finns ingen anledning att optimera något här och jag kan nog sluta samla den här metriska helt (ingen anledning att fånga onödig data). Att bygga presentatörerna tar dock betydligt mer tid, vi kan undersöka det här ytterligare för att se om det kan optimeras. Vi kan också hålla koll på diagrammet (genom att titta på den anpassade instrumentpanelen ibland) för att säkerställa att prestandan inte försämras när vi fortsätter att arbeta med applikationen.
Anpassade instrumentpaneler är inte ett paradis. Förutom att skapa diagram för anpassade statistik kan du göra allt som anpassade instrumentpaneler kan göra med det vanliga New Relic-gränssnittet. Att spela med anpassade instrumentpaneler hjälper dig definitivt att bli en kraftanvändare av New Relic, med en djupare förståelse för hur det fungerar under huven. Dessutom kan möjligheten att titta på dina prestandamätningar på olika sätt vara ett ovärderligt verktyg som hjälper dig att övervaka potentiella prestandaproblem innan de påverkar din ansökan betydligt.
Om du har några frågor om anpassade instrumentpaneler New Relic, var inte rädd för att lämna en kommentar och jag gör mitt bästa för att svara. Om du har använt anpassade instrumentpaneler för en bra effekt i det förflutna, snälla dela alla tips du kanske har, det är alltid intressant att se hur andra använder sina verktyg.