Gedistribueerde tracering is een methode voor het volgen van serviceaanvragen in gedistribueerde systemen, waarmee inzicht wordt verkregen in latentie, knelpunten in prestaties, enz.
De eisen van het moderne bedrijfsleven hebben geleid tot een explosie in informatietechnologie, waarbij gecentraliseerde, verouderde computersystemen zich hebben ontwikkeld tot krachtige en complexe gedistribueerde IT-omgevingen. Helaas brengt deze toegenomen complexiteit, samen met de verbeterde mogelijkheden van de huidige cloudgebaseerde netwerken en gegevensverwerking met externe toegang, ook grotere risico's met zich mee.
Vanwege hun complexe onderlinge afhankelijkheden zullen complexe systemen eerder problemen ondervinden. Storingen in één deel kunnen zich over het hele systeem verspreiden, en het identificeren en oplossen van problemen is vaak veel moeilijker dan in gecentraliseerde systemen. Tegelijkertijd geldt dat hoe complexer het systeem, hoe moeilijker het is om te voorspellen hoe veranderingen in het ene deel de andere delen zullen beïnvloeden. En dit leidt tot onverwachte gevolgen bij zelfs de meest onschuldige aanpassingen. Hierdoor is het grondig testen van een complex systeem exponentieel moeilijker. Dit betekent dat problemen steeds vaker onopgemerkt door het net glippen. Gedistribueerde tracering biedt daarbij een oplossing.
Gedistribueerde tracering is naar verluidt begonnen met de Dapper-whitepaper, die in 2010 door Google werd geïntroduceerd en waarmee de basis werd gelegd voor een grootschalige traceringsinfrastructuur voor gedistribueerde systemen. Interessant is dat Ben Sigelman, oprichter van Lightstep (dat later ServiceNow Cloud Observability werd), een belangrijke rol speelde bij de creatie van Dapper. Na Dapper bracht Twitter (nu 'X') in 2012 Zipkin uit, het eerste open-source gedistribueerde traceringsproject. Vervolgens lanceerde Uber in 2015 Jaeger, dat zelf geïnspireerd was door Dapper.
In 2016 schreef Sigelman een blogbericht ("Towards Turnkey Distributed Tracing", dat bekend zou worden als het OpenTracing-manifest). In deze cruciale tekst werd OpenTracing geïntroduceerd als één standaard, waarmee het gebrek aan standaardisatie binnen het traceringsecosysteem werd aangepakt en de basis werd gelegd voor OpenTracing om een project te worden onder de Cloud Native Computing Foundation (CNCF) en om uiteindelijk in 2019 met OpenTelemetry samengevoegd te worden.
OpenTelemetry-versie 1.0 werd uitgebracht in 2021 en is sindsdien de feitelijke standaard geworden voor tracering, meetwaarden en logging. Van Dapper in 2010 tot de huidige OpenTelemetry-mogelijkheden, is gedistribueerde tracering in iets meer dan tien jaar tijd geëvolueerd van één back-endsysteem naar een veelgebruikte totaaloplossing, waardoor uiteindelijk de weg is geëffend voor moderne, uitgebreide observeerbaarheidsmethoden.
Met gedistribueerde tracering kunnen organisaties hun volledige scala aan toepassingen profileren en monitoren, met name toepassingen die zijn gebouwd met behulp van een microservicearchitectuur. Deze benadering biedt inzicht in hoe individuele services binnen een gedistribueerd systeem met elkaar communiceren. Zo ontstaat een nauwkeurig beeld van de flow aan individuele aanvragen door het systeem.
Door het traject van aanvragen te volgen en te meten hoe lang elk onderdeel duurt, helpt gedistribueerde tracering bij het lokaliseren van prestatieknelpunten, latentieproblemen en potentiële storingen. Daarom is gedistribueerde tracering een cruciaal hulpmiddel voor DevOps- en IT-teams, waarmee ze hun systemen effectiever kunnen optimaliseren en onderhouden, en systeemproblemen effectiever kunnen oplossen.
Gedistribueerde tracering is opgebouwd rondom drie kerncomponenten:
- Span
Een span is een enkele eenheid van werk die wordt uitgevoerd door een service binnen het systeem, gemarkeerd met begin- en eindtijdintervallen en mogelijk inclusief metagegevens zoals logs of tags. Spans zijn de bouwstenen van een trace die verschillende delen van de workflow vertegenwoordigen. Root spans (ook wel bovenliggende spans genoemd) kunnen hun eigen spans hebben (de zogenaamde onderliggende spans), die op hun beurt ook spans kunnen hebben. - Trace
Een trace bestaat uit een span of meerdere spans die samen het volledige uitvoeringspad van de serviceaanvraag vertegenwoordigen wanneer deze door het gedistribueerde systeem wordt verplaatst. Traces worden vaak gevisualiseerd als structuren, waarbij het basisknooppunt de interactie van de gebruiker vertegenwoordigt, terwijl de andere knooppunten de verschillende microservices vertegenwoordigen die betrokken zijn bij het verwerken van de aanvraag en het voorbereiden van de respons. - Tags
Tags zijn metagegevenselementen die aan spans zijn gekoppeld. Deze bieden context en classificatie.
De trace/span-structuur biedt een aanvraaggerichte weergave, waardoor de kloof tussen onafhankelijke microservices wordt overbrugd en een uniform perspectief wordt geboden op de prestaties van het systeem. Met deze informatie zijn organisaties beter voorbereid om de gebruikerservaring te begrijpen en te verbeteren.
Tracering, logging en meetwaarden spelen een cruciale rol in observeerbaarheid, maar het zijn niet dezelfde concepten. Elk van deze concepten dient verschillende doelen en inzicht in de verschillen en de complementaire aard van deze concepten is essentieel voor uitgebreide systeemmonitoring en foutopsporing:
- Tracering
Gedistribueerde tracering biedt een gedetailleerd overzicht van aanvragen terwijl deze zich verplaatsen door de componenten van een gedistribueerd systeem. Hierbij wordt de stroom van de aanvraag vastgelegd via diverse services die een rol spelen bij het afstemmen van prestaties en het oplossen van problemen. In tegenstelling tot logging en meetwaarden richt gedistribueerde tracering zich op het traject van specifieke aanvragen, waardoor een duidelijk beeld wordt geboden van de interacties tussen microservices. - Logging
Logging is een methode waarbij specifieke, individuele events in een systeem worden geregistreerd, zoals gebruikersacties, systeemfouten of andere activiteiten. Logs met een tijdstempel bieden gedetailleerde informatie over wat er op een bepaald moment in het systeem is gebeurd, vaak essentieel voor foutopsporing en controle. Terwijl gedistribueerde tracering de stroom van aanvragen volgt, biedt logging een meer statische momentopname van events, zonder noodzakelijkerwijs de relaties tussen verschillende onderdelen van het systeem te tonen.
Meetwaarden zijn numerieke waarden die de status van een systeem op een bepaald moment of over een tijdsinterval weergeven. Ze kunnen responstijden, foutpercentages en het gebruik van systeemresources omvatten. Meetwaarden spelen een cruciale rol bij gedistribueerde tracering, en bieden een kwantificeerbare manier om de prestaties van verschillende services binnen een gedistribueerd systeem te monitoren en te analyseren. Deze numerieke waarden worden geëxtrapoleerd uit traceringen en logs, en bieden in één oogopslag informatie of zelfs gedetailleerde rapportage over specifieke aspecten zoals responstijden, foutpercentages en doorvoercapaciteit van het systeem.
Door trace- and loggegevens te zien door de lens van meetwaarden die kritieke prestatie-indicatoren samenvatten, kunnen organisaties een uitgebreid inzicht krijgen in hun gedistribueerde architectuur. Dit zorgt voor snelle diagnoses en bruikbare inzichten, en ook een effectieve systeemoptimalisatie wordt makkelijker.
Microservices zijn ontwerpcomponenten in een softwarearchitectuur waarbij een toepassing is gestructureerd als een verzameling losjes gekoppelde, onafhankelijk inzetbare services. Elke microservice richt zich op een specifiek functiegebied en werkt als een afzonderlijke component binnen het bredere systeem. Deze modulaire aanpak bevordert de flexibiliteit en schaalbaarheid en kan ook de ontwikkelingssnelheid verhogen. In de context van gedistribueerde tracering spelen microservices een belangrijke rol. Dit zijn namelijk de afzonderlijke knooppunten die een bepaalde aanvraag doorloopt.
Terwijl een aanvraag zich verplaatst van de ene microservice naar de andere, worden de details van deze interacties via gedistribueerde tracering vastgelegd, inclusief de tijd die bij elke stap wordt genomen. In deze informatie wordt beschreven hoe de aanvraag door de talrijke services stroomt, waarbij knelpunten, latenties en potentiële storingen worden geïdentificeerd.
Inzicht krijgen in de interactie tussen microservices binnen een gedistribueerd systeem kan ingewikkeld zijn. Gedistribueerde tracering biedt waardevolle inzichten in deze interacties, waardoor organisaties de paden kunnen visualiseren, systeemprestaties kunnen monitoren en eventuele problemen kunnen oplossen om tot een robuustere en efficiëntere systeemarchitectuur te komen.
Gedistribueerde tracering is een onmisbaar hulpmiddel geworden voor organisaties die werken met gedistribueerde systemen, met name in de context van microservices en dynamische architecturen. Door de interacties tussen een aanvraag en elke service volledig te volgen en vast te leggen, biedt gedistribueerde tracering cruciale inzichten in monitoring, foutopsporing en prestatieoptimalisatie. Ter verduidelijking kunnen er kenmerken kunnen worden toegevoegd aan traces. Iedere span wordt vastgelegd met gedetailleerde metadata, waaronder relaties tussen bovenliggende en onderliggende spans, zodat een volledig inzicht wordt verkregen in de manier waarop aanvragen via en tussen verschillende services worden geleid.
Als zodanig wenden steeds meer organisaties zich tot gedistribueerde tracering om de complexiteit van hun moderne toepassingsomgevingen te beheren. Met talloze potentiële foutpunten in de complexe toepassingsstacks van tegenwoordig kan het lokaliseren van de onderliggende oorzaken van problemen lastig, tijdrovend en foutgevoelig zijn. Met gedistribueerde tracering wordt dit proces gestroomlijnd. Zo kunnen problemen sneller en nauwkeuriger worden geïdentificeerd, en is het bedrijf direct al beter in staat om een uitstekende gebruikerservaring te bieden.
Tegelijkertijd is gedistribueerde tracering een effectief antwoord op het probleem van kardinaliteit, waarbij gegevensvolumes toenemen tot het punt waarop gegevensopslag en computervermogen moeilijk te beheren zijn.
De voordelen van gedistribueerde tracering zijn: meer inzicht in de prestaties van microservices, een snellere probleemoplossing en hogere klanttevredenheid. Door een gedetailleerd overzicht te bieden van hoe elke microservice presteert, kunnen organisaties zorgen voor stabiele inkomstenstromen en tegelijkertijd meer tijd besteden aan strategie en innovatie.
De gegevens die via gedistribueerde tracering worden geleverd, zijn weliswaar cruciaal, maar uiteindelijk ook niets meer dan alleen maar gegevens. Zonder duidelijk inzicht in wat de gegevens vertegenwoordigen, kunnen ze het besluitvormingsproces niet positief beïnvloeden. De werkelijke waarde van de gegevens is het bruikbare inzicht dat kan worden afgeleid uit de cijfers, mits deze recent, relevant en betrouwbaar zijn.
Dankzij de intelligente analyse van deze gegevens en het contextueel inzicht kunnen organisaties problemen lokaliseren, oorzaken identificeren en effectieve oplossingen implementeren. Hoe gaat gedistribueerde tracering verder dan alleen het verzamelen van gegevens om diepgaande inzichten te bieden in verschillende scenario's? Denk hierbij aan het volgende:
Gedistribueerde tracering speelt een cruciale rol bij het herkennen van de symptomen van een slechte softwarestatus, zoals latentie of lage doorvoer. Deze tracering werkt als een diagnostisch hulpmiddel dat de waarneembare effecten verbindt met hun onderliggende oorzaken. Zo kunnen hypothesen over de mogelijke oorzaken voor de waargenomen verandering, eenvoudig worden gevalideerd.
Wanneer een service niet beschikbaar is, vraagt dat om een uitleg. Tracering helpt organisaties bij het bepalen welke wijzigingen, intern of extern, zijn aangebracht voorafgaand aan een storing. Of de variatie nu het gevolg is van bugs in de software, wijzigingen die worden veroorzaakt door gebruikers of wijzigingen in de infrastructuur die leiden tot prestatieproblemen, met gedistribueerde tracering kan de status van het systeem voor en na de uitval worden bepaald en duidelijk worden vastgesteld wat de uitval kan hebben veroorzaakt.
Inzicht in veranderingen binnen individuele services is van essentieel belang. Met gedistribueerde tracering worden de prestaties in verschillende fasen opgedeeld, waarbij elke span wordt getagd met de versie-informatie. Dit proces geldt zowel voor implementaties als versie-updates. Deze gedetailleerde weergave helpt bij het diagnosticeren van wijzigingen die de prestaties van een service beïnvloeden.
Systemen zijn niet statisch en de gebruikers die binnen de systemen werken ook niet. Externe factoren zoals verschuivingen in gebruikersgedrag kunnen veranderingen in de serviceprestaties stimuleren. Inzichtelijke tracering maakt gebruik van tags om essentiële onderdelen van aanvragen en gebruikersfuncties vast te leggen, waardoor een beter inzicht wordt verkregen in de manier waarop gebruikers met de toepassing omgaan en hoe deze interacties onverwachte eisen kunnen creëren.
Resources zijn eindig, en soms kun je er gewoon niet genoeg van hebben. Een grote vraag naar gedeelde resources in gedistribueerde netwerken kan de prestaties aanzienlijk beïnvloeden. Gedistribueerde tracering biedt inzicht in hoe gedeelde resources zoals CPU's, containers of databases worden gebruikt. Correct getagde traces maken een geaggregeerde analyse mogelijk. Hierbij wordt vastgesteld wanneer en waar tragere prestaties correleren met specifiek resourcegebruik, wat helpt bij resourceplanning en conflictoplossing.
De dynamische aard van afhankelijkheden betekent dat upstream-wijzigingen van invloed kunnen zijn op de prestaties van je service. Inzichtelijke gedistribueerde tracering, waaronder het taggen van uitgaande bewerkingen en versienummers, maakt inzicht mogelijk in hoe upstream-services de prestaties beïnvloeden. Inzicht in deze relaties helpt bij het aanpassen aan of beperken van de gevolgen van deze veranderingen.
Open-source standaarden voor gedistribueerde tracering zijn essentiële kaders die de verzameling, het beheer en de analyse van het traceren van gegevens in verschillende services op een gestandaardiseerde manier begeleiden. Deze standaarden bevorderen interoperabiliteit en verminderen de kans op 'leveranciers-lock-in'. Ontwikkelaars kunnen nu met minimale aanpassingen schakelen tussen verschillende back-ends en tools voor tracering. De standaarden bieden ook een gemeenschappelijke basis voor het integreren van verschillende platforms, talen en toepassingen in complexe gedistribueerde systemen.
Een van de meest gebruikte open-source standaarden voor gedistribueerde tracering zijn:
OpenTracing maakt deel uit van de Cloud Native Computing Foundation (CNCF) en is een van de vroegste open-source standaarden voor gedistribueerde tracering. Dit framework omvat API's die gedistribueerde contextpropagatie ondersteunen en waarmee ontwikkelaars instrumentatie kunnen toevoegen aan hun toepassingscode (zonder dat ze zich moeten binden aan een specifieke leverancier). OpenTracing bood consistente tracing-semantiek op verschillende platforms, maar is sindsdien gearchiveerd. De CNCF biedt geen ondersteuning meer voor het project.
OpenCensus is speciaal ontworpen om meerdere exporttoepassingen te ondersteunen, waardoor gebruikers tracegegevens naar verschillende back-ends kunnen verzenden voor analyse. Dit framework (dat afkomstig is van Google) biedt een duidelijke set API's en bibliotheken die automatische en handmatige verzameling van gedistribueerde traceringen en meetwaarden mogelijk maken. Door een uniforme oplossing voor observeerbaarheid te bieden, stroomlijnt OpenCensus het proces van het verzamelen en beheren van essentiële statistische gegevens. OpenCensus is eveneens stopgezet.
OpenTelemetry is een samengevoegd project tussen OpenTracing en OpenCensus, waarbij de beste functies van beide standaarden worden gecombineerd. OpenTelemetry is mede opgericht door Lightstep en biedt een uniforme en uitgebreidere set API's, bibliotheken, agents en instrumentatie om een volledig observeerbaarheidskader te bieden voor cloud-native software. OpenTelemetry vereenvoudigt de instrumentatie van toepassingen en biedt ingebouwde ondersteuning voor verschillende populaire frameworks en bibliotheken. Het is de bedoeling dat die project de standaard voor observeerbaarheid wordt voor gedistribueerde tracering, logging en meetwaarden. OpenTelemetry wordt ondersteund door een groeiende community en geniet brede ondersteuning van de branche.
Verschillende functies zijn essentieel voor de functionaliteit en het succes van gedistribueerde tracering. Hier zie je hoe elke functie een rol speelt:
Met behulp van waarschuwingsmechanismen in de back-end voor observeerbaarheid kunnen teams drempels bepalen voor specifieke meetwaarden of gedragingen die op een probleem kunnen duiden. Wanneer deze drempels worden bereikt, kunnen waarschuwingen naar het relevante personeel worden verzonden, zodat potentiële problemen snel kunnen worden geïdentificeerd en opgelost, en de betrouwbaarheid van het systeem verbeterd.
Gedistribueerde tracering biedt uitgebreid inzicht in het gehele traject van een aanvraag via verschillende services en componenten. Dit end-to-end inzicht helpt bij het identificeren van knelpunten, inefficiënties en afwijkingen binnen het systeem, en biedt een gedetailleerde context voor prestatieafstemming en foutanalyse.
Door nauwkeurige informatie over het gedrag van het systeem te bieden, vermindert gedistribueerde tracering de tijd die wordt besteed aan het opsporen van fouten en het identificeren van problemen aanzienlijk. Deze efficiëntie vertaalt zich in kostenbesparingen, omdat teams meer tijd kunnen besteden aan functieontwikkeling en innovatie, in plaats van aan probleemoplossing.
Met de opkomst van gedistribueerd computergebruik op meerdere geografische locaties en cloudproviders is gedistribueerde tracering uiterst handig om de integratie in deze complexe omgevingen te faciliteren. Dit maakt een samenhangend beeld van de prestaties van het systeem in verschillende regio's en cloudplatforms mogelijk, waardoor consistente monitoring en analyse wordt gegarandeerd.
Gedistribueerde tracering maakt realtime monitoring en tracking van de prestaties van elke service mogelijk. Hierbij wordt inzicht verkregen in de manier waarop deze samenwerken en worden gebieden geïdentificeerd die mogelijk moeten worden geoptimaliseerd.
De collector fungeert als een essentieel onderdeel bij het verzamelen, verwerken en exporteren van telemetriegegevens (d.w.z. traces, meetwaarden en logs). De collector biedt een uniforme, leveranciersonafhankelijke optie voor het verzamelen en verzenden van gegevens, waardoor naadloze integratie met verschillende observeerbaarheids-back-ends mogelijk wordt. De flexibiliteit van de collector zorgt ervoor dat tracering kan worden aangepast aan verschillende omgevingen zonder de instrumentatiecode te wijzigen.
Sampling is een functie waarmee een subset van aanvragen (in plaats van individuele aanvragen) kan worden verzameld. Zo blijft de totale hoeveelheid gegevens die naar de tracering-back-end wordt verzonden, beperkt. Hierdoor kunnen systemen voor gedistribueerde tracering op schaal werken zonder dat de resources worden overweldigd. Tegelijkertijd worden zo waardevolle inzichten verkregen.
Naarmate systemen groeien, moet gedistribueerde tracering zich aanpassen aan de toegenomen complexiteit en hoeveelheid gegevens. Schaalbaarheidsfuncties zorgen ervoor dat tracering geschikt is voor grootschalige omgevingen, waardoor consistente prestatie-inzichten worden verkregen, ongeacht de grootte van het systeem. Natuurlijk is het vastleggen van de gegevens slechts de eerste stap. Om organisaties inzicht te bieden in de gegevens, hebben ze toegang nodig tot een platform dat samen met de gedistribueerde tracering kan worden geschaald naarmate systemen groeien en evolueren.
Moderne toepassingen bestaan uit verschillende talen, frameworks, technologieën en clients (zowel webgebaseerd als mobiel). De mogelijkheid van gedistribueerde tracering om te werken in heterogene full-stack omgevingen zorgt ervoor dat ontwikkelaars de benodigde inzichten krijgen die zijn gebaseerd op de hele technologiestack, ongeacht hoe divers deze kan zijn.
Zoals eerder vermeld, zijn de voordelen van gedistribueerde tracering gekoppeld aan de verbeterde zichtbaarheid die het biedt in de gedistribueerde systemen van een organisatie. Maar zichtbaarheid op zich is alleen waardevol als het andere voordelen faciliteert. De belangrijkste voordelen van gedistribueerde tracering zijn:
Een van de belangrijkste voordelen van gedistribueerde tracering is de mogelijkheid om te meten hoeveel tijd nodig is om essentiële gebruikersacties uit te voeren, zoals een aankoop doen. Het traceren van het aanvraagpad helpt bij het lokaliseren en corrigeren van back-end belemmeringen die anders de gebruikerservaring negatief kunnen beïnvloeden.
De meeste organisaties werken binnen de grenzen van Service Level Agreements (SLA's), waarmee prestatieverplichtingen aan klanten of andere interne divisies worden geformaliseerd. Tools voor gedistribueerde tracering verzamelen prestatiegegevens van individuele services, waardoor teams gemakkelijk kunnen beoordelen of ze zich houden aan hun SLA's.
Service-Level Objectives (SLO's) zijn specifieke, meetbare doelen die de verwachte prestaties en beschikbaarheid van een service definiëren. Deze doelen worden ondersteund door serviceniveau-indicatoren waarmee organisaties hun serviceniveaus kunnen meten. Als gedistribueerde tracering op de juiste wijze wordt geïmplementeerd, kunnen SLO's worden gevolgd en behaald door te kiezen welke specifieke signalen moeten worden gemonitord en door waarschuwingen in te stellen voor fouten of gegevens die buiten een vooraf bepaald bereik vallen. Zo kunnen gerelateerde incidenten snel en effectief worden aangepakt.
Gedistribueerde tracering biedt inzicht in de complexe oorzaak-en-gevolg-relaties tussen verschillende services. Met dit inzicht kunnen bedrijven hun algehele systeemprestaties makkelijker optimaliseren.
In omgevingen waar verschillende teams toezicht houden op verschillende services die betrokken zijn bij het uitvoeren van een aanvraag, biedt gedistribueerde tracering duidelijkheid over waar een fout is opgetreden en welk team deze moet aanpakken. Deze helderheid verbetert de samenwerking tussen teams, vermindert de tijd die wordt besteed aan 'een schuldige aanwijzen' aanzienlijk en draagt bij aan de algehele productiviteit binnen de organisatie.
Wanneer er problemen optreden in de prestaties van toepassingen, kunnen ondersteuningsteams met behulp van gedistribueerde tracing bepalen of het probleem in de back-end ligt. Door traces van de service in kwestie te analyseren, kunnen technici het probleem identificeren en oplossen. Het gebruik van end-to-end tools voor gedistribueerde tracering maakt zelfs het onderzoek van front-end prestatieproblemen binnen hetzelfde platform mogelijk. Op deze manier kan zowel de gemiddelde detectietijd (MTTD) als de gemiddelde oplossingstijd (MTTR)voor mogelijke problemen worden verkort.
Hoewel gedistribueerde tracering tal van voordelen biedt, zijn er ook inherente obstakels die het volledige potentieel ervan kunnen belemmeren. Inzicht in deze uitdagingen is essentieel voor organisaties die ernaar streven gedistribueerde tracering effectief te implementeren. Hieronder volgen enkele van de meest opmerkelijke uitdagingen:
Een van de obstakels die sommige platforms voor gedistribueerde tracering bieden, is de noodzaak voor handmatige instrumentatie. Dit betekent dat de organisatie mogelijk de bestaande code moet wijzigen om de tracering van aanvragen te starten. Een dergelijke handmatige interventie neemt niet alleen waardevolle technische resources in beslag, maar kan ook leiden tot de introductie van fouten in de toepassingen wanneer de code wordt herzien.
Traditionele gedistribueerde tracering is vaak beperkt tot de back-endservices, waardoor alleen een trace-ID wordt gegenereerd wanneer de aanvraag de eerste back-endservice bereikt. Als er geen gebruik wordt gemaakt van een end-to-end platform voor gedistribueerde tracering, blijft het inzicht in de bijbehorende gebruikerssessie op de front-end onduidelijk. Deze beperking maakt het moeilijker om de onderliggende oorzaak van sommige problematische aanvragen te achterhalen en te bepalen of het probleem moet worden opgelost door het front-end of back-end team.
Gelukkig verlicht of elimineert de invoering van frameworks zoals OpenTelemetry de uitdagingen van beperkte zichtbaarheid van front-end transacties en problemen die verband houden met instrumentatie. Deze en andere uitdagingen zijn inherent aan veel branchetechnologieën (zoals Kubernetes) die OpenTelemetry in hun kerncodebases integreren.
Naarmate het moderne IT-landschap van bedrijven blijft groeien in termen van omvang en complexiteit, worden de voordelen van gedistribueerde tracering steeds duidelijker. ServiceNow Cloud Observability, dat gebruik maakt van het bekroonde Now Platform®, stelt een nieuwe standaard voor tracering, waardoor volledige zichtbaarheid van aanvragen in gedistribueerde systemen wordt geboden.
Integreren met bestaande tools. Overbrug meetwaarden en tracering om uniforme telemetrie te creëren. Verlaag de gemiddelde oplossingstijd (MTTR) van je organisatie aanzienlijk. En stem de prijzen af op de bedrijfsresultaten, voor meerwaarde zonder schalingskosten voor een hoger gebruik.
Cloud Observability zorgt voor een revolutie in gedistribueerde tracering om je bedrijf tot dienst te zijn. Neem contact op met ServiceNow voor meer informatie!