New Relic Synthetics er som en crash test dummy for din programvare. Syntetisk gjør det mulig å konfigurere et mylder av tester for å løpe mot nettstedet ditt og tjenester fra hele verden på en gjentatt tidsplan. Disse tester hjelper deg med å finne problemer og fikse dem før kundene opplever dem.
Eller, som det morsomme produktvideoen ovenfor sier, "Din app trenger en konsekvent treningsøkt som skjer hver dag som clockwork, og Synthetics er den tøffe, kjærlige trener for å sikre at det skjer (slaps robotlår)."
I denne opplæringen vil jeg gi deg en generell oversikt over Synthetics-produktet og gå gjennom konfigurering av skjermer og bla gjennom rapporter.
Syntetikk hjelper deg med å sikre at viktige webtjenester er på plass og fungerer feilfritt med tilpasset, automatisk testing. Enten om det er en gang i minuttet i San Francisco, eller en gang om dagen i Dublin, velger du frekvensen og plasseringen av testene dine basert på forretningsfunksjon og behov.
Her er et eksempel på konfigurasjonsskjema for å bygge en automatisert overvåkingstest (jeg vil gå nærmere i detalj nedenfor):
Nettstedet ditt kan fungere i Singapore, men er det også tilgjengelig i São Paulo? Finn ut om noen sekunder med enkle ping eller webleser tester. Se programvarens simulerte ytelse i Washington DC, Portland, San Francisco, São Paulo, Dublin, Singapore, Tokyo og Sydney.
Syntetisk gir deg mulighet til å se detaljerte beregninger, inkludert sidetilfeltider og individuelle ressurser ved hjelp av en ekte nettlesermotor, slik at du kan identifisere og adressere problemer som skjer i sanntid.
Skriptautomatiserte samtaler til API-ene dine for å sikre at alle utgangs- og systemresponsene blir vellykket returnert fra flere steder rundt om i verden.
Syntetikk integreres enkelt med andre New Relic-produkter som Insights for en konsekvent opplevelse og optimal datarapportering. Få også automatiske transaksjonsspor gjennom New Relic APM, det back-end-appserveringsovervåkingsverktøyet.
For å lære mer, se den korte produktturen nedenfor:
Du kan bruke New Relic Synthetics 'dybde feilsøkings beregninger for å løse problemer og feil i appen din. Syntetikk gir deg beskjed når noe går galt, og peker ut nøyaktig hva som må løses, slik at du kan gjenopprette og levere fungerende og pålitelig programvare til sluttbrukerne dine..
Forstå hvordan individuell aktivitetsytelse påvirkes gjennom gjennomsnittlig sideinnlastingstid og størrelsesrapportering:
Få en liste over system nedetider og feil for dine kritiske transaksjoner. Se individuelle nedetidshendelser etter detalj for å identifisere trender og løse problemer som de oppstår.
Se de samme problemene dine brukerne opplever med programvaren din gjennom faktiske skjermbilder av feilene som oppstår:
Motta handlinger som inkluderer alle forespørsler og responsoverskrifter for å hjelpe deg med å feilsøke og reparere programvaren din:
Syntetikk gir detaljerte beregninger med sidetid for alle individuelle eiendeler i ett lettlest vannfallskart. Rask enkelt gjennom forskjellige tidsperioder på fossen din:
Detaljerte SLA-rapporter hjelper deg med å opprettholde kundetilfredshet. Disse rapportene oppsummerer Apdex-scoring for referanser og ytelsesterskel og total oppetid:
Syntetikk sender kun varsler etter å ha kjørt en test tre ganger og får det samme feilresultatet (selv om du bare belastes for en test). Når du får et varsel, er det ekte.
Du kan lære mer om New Relic Synthetics-funksjonen, eller se Synthetics Datasheet (pdf) og BloomThat Customer Case Study (pdf). Nå, la oss gå gjennom å bruke produktet.
Når du har registrert deg for New Relic, kan du begynne å bruke den gratis Synthetics-prøveperioden. La oss begynne med å lage noen skjermer.
Dette er skjermdashbordet - det er veldig greit. Vi fortsetter og klikker på Legg til skjerm knappen til øverst til høyre:
Den første typen skjerm er en enkel ping. Det forteller oss at nettstedet vårt er oppe. Vi gir et vennlig navn til skjermen og en nettadresse for testing:
Vi kan enkelt velge geografiske områder for å kjøre testen fra. Syntetikk tilbyr i dag ni.
Deretter velger vi frekvensen for disse kontrollene med en enkel glidebryter, og gir en e-postadresse for varsler:
Syntetisk gjør det enkelt å se hvordan vår nye skjerm påvirker vårt totale budsjett for sjekker:
Den neste typen skjerm er en enkel nettlesertest. Vi gir et vennlig navn og en URL, og Synthetics vil regelmessig gi et dypt dykk av analytiske resultater:
Her er et eksempel på resultatene du vil motta:
Scripted Browser-testen lar deg skrive JavaScript-baserte automatiserte tester mot nettstedet ditt:
Skriptmiljøet er som node.js lite. Nesten alt du forventer å finne i et node.js miljø er tilgjengelig.
Når skriptene kjører, ser du et skjermbilde og logg av testresultater:
Her er et eksempelskript inkludert som et rammeverk for å gi deg en ide om hvordan du vil kode dine egne tester:
/ ** * Velkommen til Synthetics JavaScript IDE - Browser Edition * Du kan tenke på det som node.js lite. Alt du forventer å finne i et * node.js-miljø er også tilgjengelig her, med noen få bemerkelsesverdige unntak: * * Du kan gjerne utforske eller sjekke ut full dokumentasjon * https://docs.newrelic.com/docs / syntetisk / ny-relik-syntetikk / skripting-skjermer / skrive-scripted-nettlesere * for detaljer. * / // Dette skriptet vil gå til New Relic-startsiden, klikke på søkeknappen for å åpne et søkefelt, klikke på det første settet av søkeresultater, og bekreft at H1 inneholder strengen "synthetics" var By = $ driver. ; var assert = krever ('assert'); // Last New Home-siden $ browser.get ("http://newrelic.com") .then (funksjon () // Klikk søkeknappen for å åpne opp et tekstfelt console.log ('Klikk søkeknapp'), returner $ browser.findElement (By.id ("søkestart")). klikk ();). deretter (funksjon () // Skriv inn strengen "synthetics" og trykk deretter enter-tasten console.log ('Enter search string'), returner $ browser.waitForAndFindElement (By.id ("st-search-input")). deretter (funksjon (element) element.sendKeys "),;). deretter (funksjon () // Bruk xPath av det første resultatet på søkeresultatsiden, og klikk deretter på den. Du kan også bruke CSS-klasser eller IDer, men vårt element har ikke disse, så vi vil bruke xPath // xPath kan fås i Chrome inspektøren via kontekstmenyens ulemper ole.log ('Klikk første resultat'); returnere $ browser.waitForAndFindElement (By.xpath ('// * [@ id = "st-results-container"] / div / div [2] / div [2] / div [1] / div [1] / h3 / a ')). da (funksjon (element) element.click ();); ). deretter (funksjon () // Finn og kontroller at h1-tagget til det første søkeresultatet inneholder ordet "Synthetics" $ browser.waitForAndFindElement (By.xpath ('// * [@ id = "hero-main "] / divisjon / header / div [2] / h1 ')), deretter (funksjon (element) element.getText (). deretter (funksjon (h1Text) console.log (' H1 Tittel:% s ', h1Text ); assert.ok (h1Text.indexOf ('crash test dummy')> -1, "Tittel validerer ikke");););;
Du kan også bruke Synthetics for API nivå testing. Igjen kan du bruke Synthetics 'JavaScript-miljø for å automatisere tester mot dine webtjenester. Her er det medfølgende testtestet:
var assert = krever ('assert'), // Endre disse verdiene for umiddelbar tilfredstillelse: // ----------------------------- ------------------------------------------------- SERVICE_URL = 'http://httpbin.org', AUTH_USER = 'superbot', AUTH_PASSWORD = 'supersecret'; // ------------------------------------------------ ------------------------------ // Eksempel POST med JSON nyttelast, forventer et 200 OK svar $ http.post (SERVICE_URL + '/ post', // Postdata json: brukernavn: AUTH_USER, passord: AUTH_PASSWORD, // Tilbakeringingsfunksjon (feil, svar, kropp) hvis (feil) kaster ny feil ('Autentiseringsfeil:' + feil .referanse); assert.ok (response.statusCode == 200, 'Forventet 200 OK-svar'); // Utdrag en API-token fra JSON-svaret for å bruke som en overskrift i // påfølgende forespørsler var token = body.token; $ http.get (SERVICE_URL + '/ get', funksjon (feil, svar, kropp) hvis (feil) kaste ny feil ('Feil å få widgets:' + err.message); // Validere svarskode assert.ok (response.statusCode == 200, 'Forventet 200 OK-svar'); // Forvent minst 10 widgets assert.ok (body.widgets.length> = 10, 'Mottatt mindre enn 10 widgets tilbake'););; ); console.log ('Hvis vi fikk dette langt: SUCCESS!');
Når du har satt opp flere tester, kan du overvåke, redigere og gjennomgå dem i oversikten:
Her er noen av detaljene og sammendragsrapporter du kan få fra Synthetics med jevne mellomrom. SLA oversiktrapporten viser historisk Apdex og oppetid:
Lastetidsrapporter - den første fra demonstrasjonens oversikt over New Relic:
Og en enklere rapport fra min egen testmonitor:
Du kan studere sidelast og nettverkstider fra hele verden:
Og få ressursoppsummeringer for nettstedet ditt for å hjelpe deg med å feilsøke ytelsesproblemer mer detaljert:
Jeg håper du har likt å lære om New Relic Synthetics. Det er åpenbart et nyttig og kraftig verktøy for enhver seriøs forlegger eller tjenesteleverandør. Jeg var mest imponert over enkelheten og kraften til brukergrensesnittet.
For å komme i gang kan du registrere deg for en gratis 14-dagers prøveversjon av New Relic Synthetics. Når prøveperioden avsluttes, flyttes du automatisk til New Relic LITE, gratis for evig plan.For $ 69 / måned kan du motta 10.000 + avanserte kontroller og ubegrenset lagring av data. Du kan også be om en konsultasjon med en New Relic Synthetics-spesialist for en produktdemo eller et tilbud.
Ta gjerne inn dine spørsmål og kommentarer nedenfor. Du kan også nå meg på Twitter @ reifman eller email meg direkte.