Kinsta’s APM tool

Kinsta’s APM tool helpt je bij het identificeren van PHP prestatie knelpunten op je WordPress site zonder dat je je hoeft aan te melden voor externe monitoringsdiensten zoals New Relic.

De APM tool is gratis beschikbaar voor alle pakketten en kan erg handig zijn bij het oplossen van problemen op je website. De APM tool is ontworpen om informatie met tijdstempels vast te leggen over de PHP processen van je WordPress site, MySQL database queries, externe HTTP calls en meer.

Met de APM gegevens kun je specifieke trage paginaladingen onderzoeken om de hoofdoorzaak van het probleem te achterhalen. Voor meer details over het oplossen van prestatieproblemen op specifieke typen sites met behulp van de APM tool, zie deze gidsen:

Houd er rekening mee dat Kinsta’s APM tool specifiek is ontworpen om je te helpen WordPress sites te monitoren, dus het gebruik ervan om een site te monitoren die draait op een ander CMS of framework kan leiden tot onnauwkeurige resultaten. Daarom raden we aan om het alleen te gebruiken voor WordPress sites.

APM Tool terminologie

Voordat we ons gaan verdiepen in het gebruik van de APM tool, definiëren we eerst een paar belangrijke termen die later gebruikt zullen worden.

APM

APM, kort voor “Application Performance Monitoring,” is een tool die je inzicht geeft in de prestatiestatistieken en trends van een applicatie. De APM tool van Kinsta geeft je bruikbare gegevens over de prestaties van je WordPress site.

Verzoek

In de context van de APM tool verwijst een verzoek naar een bezoek aan je WordPress site dat PHP uitvoering vereist om te renderen. Een verzoek URL kan verschillende query string parameters bevatten en zal een bijbehorende transactie triggeren.

Bijvoorbeeld, een verzoek naar yourdomain.com/wp-cron.php?arg=1&arg2=2 zou een /wp-cron.php transactie triggeren.

Transactie

Een transactie verwijst naar de backend activiteit die plaatsvindt om een verzoek naar je WordPress site te sturen. De transactie voor een verzoek naar /wp-login.php bevat bijvoorbeeld de individuele PHP processen die de inlogpagina van je WordPress site genereren.

Span

Een span verwijst naar een individueel proces in een transactie. Een enkele transactie kan bestaan uit honderden spans die hiërarchisch zijn gerangschikt.

Bijvoorbeeld, een transactie die een accountpagina genereert voor een WooCommerce klant kan bestaan uit een bereik dat uiteenvalt in meerdere database query spans.

Transactie sample

Een transactie sample verwijst naar een geselecteerde instantie uit vele verzoeken naar een specifiek transactie endpoint (bijv. /single.php, /wp-cron.php, enz.). In de APM tool heb je drie voorbeelden om uit te kiezen.

De APM tool kan bijvoorbeeld tientallen /wp-cron.php transacties registreren. In dat geval zal de APM tool de langzaamste transactie eruit pikken en dat een transactie sample noemen.

Transactie trace

Een transactie trace is een complete tijdlijn van alle processen die plaatsvonden in een transactie sample. In onze APM tool wordt een transactie trace weergegeven door een lijst van spans met de bijbehorende duur en tijdstempelinformatie.

Transactietrace tijdlijn voor een transactie sample.
Transactietrace tijdlijn voor een transactie sample.

Stack trace

Een stack trace is een gedetailleerde uitsplitsing van het proces voor een individuele span. Stack traces zijn handig voor diepgaande debugging. Ze bevatten zeer gedetailleerde informatie over de PHP code die werd uitgevoerd, tot aan een specifiek PHP bestand en regelnummer van de code.

Een stack trace voor een span.
Een stack trace voor een span.

De APM tool van Kinsta inschakelen

Standaard is de APM tool uitgeschakeld. Omdat de APM tool extra serverresources vereist, raden we aan om het alleen in te schakelen als je actief bezig bent met het oplossen van een prestatieprobleem op je WordPress site.

Om de APM tool in te schakelen log je in op MyKinsta, kies je de site die je wilt monitoren, navigeer je naar het APM tabblad van je site en klik je op de knop APM inschakelen.

Klik op de knop APM inschakelen om de prestatiemonitoring van applicaties in MyKinsta in te schakelen.
Klik op de knop APM inschakelen om de prestatiemonitoring van applicaties in MyKinsta in te schakelen.

Selecteer vervolgens een monitoringsduur voor de APM. Je kunt kiezen uit 2 uur, 4 uur, 12 uur en 24 uur. Omdat de APM de prestaties van je site kan verminderen, raden we het niet aan om het voor een langere periode ingeschakeld te laten. Zodra je een monitoringsduur hebt gekozen, klik je op Monitoring tijd inschakelen om de APM te starten.

Selecteer APM monitoringstijd en schakel deze in.
Selecteer APM monitoringstijd en schakel deze in.

Geef de tool 5-10 minuten om te beginnen met het verzamelen van gegevens en dan kun je die gegevens bekijken op het APM tabblad.

Nadat de monitoringsduur is verstreken, wordt APM automatisch uitgeschakeld. Als je het monitoren eerder wilt uitschakelen, klik dan op het kebab (drie-punt) menu en selecteer Uitschakelen in het dropdown menu.

Applicatieprestatiemonitoring uitschakelen in MyKinsta.
Applicatieprestatiemonitoring uitschakelen in MyKinsta.

Selecteer een tijdframe voor de monitoringgegevens

Standaard toont de APM tool monitoringgegevens van de afgelopen 60 minuten. Het tijdsbestek voor de gegevens is echter aanpasbaar en je kunt kiezen uit de onderstaande opties.

  • 30 minuten
  • 60 minuten
  • 2 uur
  • 4 uur
  • 12 uur
  • 24 uur

Om deze instelling te wijzigen klik je op de knop Tijdskader rechtsboven op de APM pagina en selecteer je een optie in de modal/pop-up die verschijnt. Klik op de knop Monitoring tijd aanpassen om het nieuwe tijdskader in te stellen.

Wijzig het tijdframe van de APM monitoringgegevens.
Wijzig het tijdframe van de APM monitoringgegevens.

De monitoringgegevens verversen

Kinsta’s APM tool toont prestatiemonitoringsgegevens gebaseerd op het ingestelde tijdsbestek (bijv. afgelopen 30 minuten, afgelopen 60 minuten, etc.). Om verwarring te voorkomen ververst de APM tool de gegevens niet automatisch. Om de APM tool te verversen en de laatste gegevens van het geselecteerde tijdsbestek weer te geven, klik je op het ververs (redo) pictogram naast de tijdbestek knop.

Klik op het ververs pictogram om de Kinsta APM monitoringgegevens bij te werken.
Klik op het ververs pictogram om de Kinsta APM monitoringgegevens bij te werken.

APM tool inzichten lezen

Omdat het loggen van gegevens pas begint nadat de APM tool is ingeschakeld, moet je het wat tijd geven om prestatiegegevens voor je site te verzamelen. We raden aan om 5-10 minuten te wachten voordat je de monitoringgegevens inspecteert.

Daarna kun je de belangrijkste inzichten vinden op de tabbladen Transacties, WordPress, Database en Extern, die we hieronder in meer detail zullen bespreken.

Kinsta APM gegevens: Transacties, WordPress, Database en Extern.
Kinsta APM gegevens: Transacties, WordPress, Database en Extern.

Er zijn een aantal algemene kolommen die je op elk tabblad ziet:

  1. Totale Duur (%): Het percentage van de tijd, ten opzichte van de Totale Duur, dat is verbruikt door alle verzoeken naar een transactie-endpoint binnen het geselecteerde tijdsbestek. Het duurpercentage wordt berekend met de Totale Duur waarden (de som van de duur van alle verzoeken naar een bepaald eindpunt), dus het vertegenwoordigt niet de duur van een individueel transactie sample.
  2. Totale Duur: De totale hoeveelheid tijd die een transactie-eindpunt verbruikt binnen het geselecteerde tijdsbestek. Merk op dat de duur verwijst naar de som van de duur van alle verzoeken aan een bepaald eindpunt en niet de duur van een individueel transactiemonster weergeeft.
  3. Max. Duur: De traagste duur van een transactiesample uit het geselecteerde tijdsbestek.
  4. Gem. Duur: Het gemiddelde van alle duur van transactiesamples uit het geselecteerde tijdsframe.
  5. Rate Per Min: Het aantal keren dat een transactie gemiddeld per minuut is uitgevoerd in het geselecteerde tijdsbestek.

Terwijl je door de gegevens navigeert, zie je ook deze algemene gegevensdetails:

Transactie samples

Als je op een transactie klikt, krijg je een venster te zien met maximaal drie transactie samples uit het geselecteerde tijdsbestek.

  1. Langzaamste sample: Het langzaamste transactie sample.
  2. 95e percentiel: Een transactie in het 95e percentiel (95% van de transacties zijn sneller dan deze sample).
  3. 50e percentiel: Een transactie in het 50e percentiel (50% van de transacties zijn sneller dan deze sample), ook wel de mediaan genoemd. Je kunt dit zien als de typische duur, omdat er precies evenveel langzamere als snellere steekproeven zijn.
Het modale transactie sample in de APM tool.
Het modale transactie sample in de APM tool.

Je kunt één, twee of drie samples zien. Dezelfde transactie kan bijvoorbeeld het langzaamste sample en de 95e percentiel transactie zijn.

De modal/popup Transactie samples toont ook nuttige informatie over elk transactie sample, waaronder de tijdstempel, het eindpunt van de transactie, de URL van het verzoek en de duur.

Individueel transactievoorbeeld

Als je op een transactievoorbeeld in het venster klikt, kom je op een speciale pagina voor het geselecteerde sample . Deze pagina met transactie samples bevat de tijdstempel van het voorbeeld, het transactie-eindpunt, de URL, de duur, de HTTP-statuscode en een volledige tijdlijn van de transactie trace.

Transactie samples met trace tijdlijn in Kinsta's APM.
Transactie samples met trace tijdlijn in Kinsta’s APM.
  1. Tijdstempel: De datum en tijd van het transactie sample.
  2. Transactie: Het PHP eindpunt van het transactie sample (bijv. /wp-cron.php, /single.php, enz.).
  3. URL: De specifieke URL van het transactievoorbeeld.
  4. Duur: De duur van het transactievoorbeeld in milliseconden.
  5. Resultaat: De HTTP-statuscode van de transactie. Als je een “HTTP 200” resultaat ziet, betekent dit dat de transactie langzaam verliep, maar uiteindelijk succesvol was. Als je echter een “HTTP 503” resultaat ziet, kan dat betekenen dat de transactie is uitgetimed.

Elk transactie sample heeft zijn eigen permalink of unieke URL. Dit maakt het gemakkelijk om te verwijzen naar een specifiek transactie sample en dit te delen met je collega’s, een developer of het Kinsta Support team. Opmerking: Je collega of developer moet toegang hebben tot de site in MyKinsta om het transactie sample te kunnen bekijken.

Transactie tample permalink.
Transactie tample permalink.

Transactie trace tijdlijn

Naast de basisinformatie over transacties geeft de APM tool je ook een meer gedetailleerde tijdlijn voor het traceren van transacties. Binnen de tijdlijn van de transactie trace kun je een stapsgewijze presentatie zien van de spans – PHP processen, MySQL database queries en externe calls voor een bepaald transactie sample.

Je kunt de spans sorteren op Duur (tijd) of Duur (%) in oplopende of aflopende volgorde door op de kolomnaam te klikken. Dit is handig om snel de langstlopende transacties te identificeren.

Elke span heeft ook de bijbehorende duur en relatieve tijdstempel, zodat je snel het langste en meest problematische deel van het verzoek kunt identificeren.

Relatief aan de totale duur van het transactie sample:

  • Spans met een duur van meer dan 5% worden oranje weergegeven
  • Spans met een duur van meer dan 25% worden rood weergegeven

Deze highlights verwijzen altijd naar de relatieve duur van de periode in de context van de eigen sample. Dus als je iets roods ziet, houd er dan rekening mee dat het altijd vergeleken wordt met dat gegeven voorbeeld (en dat je site of webapp misschien niet traag is als geheel).

Merk op dat we voor MySQL en Redis queries geen spans opnemen die korter zijn dan 0,001 ms. Voor niet-database-gerelateerde spans is de drempel 1 ms. We sluiten met opzet korte spans uit, omdat het registreren van een groot aantal snelle elementen de prestaties van je site kan beïnvloeden en weinig bruikbare gegevens oplevert.

Transactietrace tijdlijn voor een transactie sample.
Transactietrace tijdlijn voor een transactie sample.

Deze gedetailleerde trace tijdlijn is erg handig voor het oplossen van prestatieproblemen, omdat het je helpt precies vast te stellen waar het knelpunt zit.

Je kunt bijvoorbeeld merken dat de traagheid wanneer /wp-admin/admin-ajax.php wordt opgevraagd, wordt veroorzaakt door lange API verzoeken aan sociale netwerk API’s. Gewapend met deze kennis kun je dan je site blijven testen met je sociale plugin uitgeschakeld om te zien of dat verschil maakt.

Op dezelfde manier, als je een langzame transactie naar /wp-cron.php ziet met herhalende HTTP verzoeken geïnitieerd door een cache preloading plugin, kun je snel handelen op basis van die informatie en de cache preloading functionaliteit uitschakelen.

Details van de span

Als je op een bereik in de tijdlijn van de transactietrace klikt, kun je een gedetailleerd overzicht zien met een complete stack trace en bijbehorende informatie.

Als je bijvoorbeeld op een MySQL query span klikt, dan zie je de database query die is uitgevoerd samen met de stack trace. Door de details van de span te inspecteren, kun je meer inzicht krijgen in PHP transacties op je WordPress site.

Details van de span in de tijdlijn van de transactie trace.
Details van de span in de tijdlijn van de transactie trace.

Voor meer specifieke voorbeelden van hoe je de gegevens van de APM tool kunt lezen en gebruiken, bekijk je onze uitleg hieronder over het gebruik van de APM tool van Kinsta voor het diagnosticeren van prestatieproblemen.

Resultaten controleren

Op elk van de tabbladen op de APM pagina kun je specifieke gegevens bekijken voor Transacties, WordPress, Database en Externe verzoeken.

Transacties

Op dit tabblad vind je gegevens over de totale transactietijd en de langzaamste transacties.

Totale transactietijd

Het staafdiagram van de Totale transactietijd geeft je een visuele weergave van de transactietijdgegevens van het geselecteerde tijdsbestek. Elke balk bestaat uit een uitsplitsing in meerdere kleuren van de transactietijden van PHP, MySQL, Redis en Extern. De grafiek van de Totale transactietijd toont ook de gemiddelde transactietijd van het geselecteerde tijdsbestek in de rechterbovenhoek.

APM Totale Transactietijd staafdiagram.
APM Totale Transactietijd staafdiagram.

Langzaamste transacties

De top tien van langzaamste PHP transacties verschijnt in het gedeelte Langzaamste transacties onder het staafdiagram Totale transactietijd. Naast de gebruikelijke kolommen is de eerste kolom van deze gegevens de kolom Transactie, die het transactie eindpunt weergeeft van de langzame verzoeken die de meeste PHP tijd verbruikten (bijv. /wp-cron.php, /wp-json, etc.).

Langzaamste transacties in de APM tool.
Langzaamste transacties in de APM tool.

Je kunt op elk transactie-eindpunt klikken om de transactie samples te bekijken en verder te navigeren in elk individueel transactie sampl, trace tijdlijn, span details en stack trace.

WordPress

Op het tabblad WordPress vind je gegevens die specifiek zijn voor WordPress plugins en hooks.

Langzaamste WordPress plugins

De langzaamste opgenomen plugins staan bovenaan met de slug (map/directory naam) van de plugin in de eerste kolom en daarna de rest van de algemene gegevenskolommen. Je kunt op elke plugin slug klikken om de transactievoorbeelden te bekijken en verder te navigeren in elk individueel transactievoorbeeld, traceer tijdlijn, span details en stack trace.

Langzaamste WordPress hooks

Onder de Langzaamste WordPress plugins lijst zie je de lijst met langzaamste WordPress hooks. WordPress hooks zijn functies in thema’s of plugins waarmee je WordPress op specifieke plekken in de verwerking van de code kunt aanpassen.

Een hook is of een actie of een filter, en de hooks in deze lijst worden voorafgegaan door hun type (actie of filter), gevolgd door de functienaam. Als je op een hook klikt, zie je de transactievoorbeelden, waar je verder kunt navigeren in elk individueel transactievoorbeeld, de trace tijdlijn, de details van de overspanning en de stack trace.

Database

Dit tabblad toont gegevens voor de langzaamste database queries en de langzaamste Redis cache transacties (als Redis is ingeschakeld).

Langzaamste database queries

De top 10 van langzaamste databasequery’s wordt getoond in het gedeelte Langzaamste databasequery’s. Door op een query te klikken worden de transactie samples getoond, waar je verder kunt navigeren in elk individueel transactievoorbeeld, trace tijdlijn, span details en stack trace.

Traagste Redis cache

Voor sites met de Redis add-on kun je in deze sectie details vinden over de Redis cache. Als de Redis add-on niet op je site is geïnstalleerd, worden er geen gegevens getoond. Als je op een cache-item klikt, worden de transactie samples getoond, waar je verder kunt navigeren in elk individueel transactie sample, de tijdlijn van de trace, de details van het bereik en de stack trace.

Extern

Gegevens over alle externe verzoeken die je site doet kun je vinden op het tabblad Extern. Externe verzoeken zijn HTTP verzoeken die je site doet naar een andere site of server. Deze verzoeken worden meestal gedaan door plugins of thema’s voor het ophalen of verzenden van gegevens of voor communicatie met een API.

Elke URL in de eerste kolom van de lijst wordt gevolgd door de HTTP methode die wordt gebruikt voor het verzoek (GET, POST, PUT, etc.). Als je op een verzoek URL klikt, worden de transactie samples getoond, waar je verder kunt navigeren in elke individuele transactie sample, de tijdlijn van de trace, de details van de span en de track trace.

Prestatieproblemen diagnosticeren

De APM tools van Kinsta is een krachtig hulpmiddel voor het oplossen van problemen met je website. Dit artikel neemt je mee door een paar verschillende scenario’s voor het oplossen van prestatieproblemen op een site met behulp van de APM tool om de problemen te onderzoeken en analyseren.

Aan de slag

Voordat je dieper ingaat op het gebruik van de APM tool om een probleem op te lossen, zijn er een paar stappen die je moet nemen, ongeacht het probleem:

  1. Zorg ervoor dat je het probleem kunt reproduceren als het zich op dit moment niet voordoet. Zoek naar patronen in wanneer het probleem optreedt of als specifieke acties het probleem lijken te veroorzaken (bijvoorbeeld het bewerken van een pagina, het toevoegen van een product aan een e-commerce winkelwagen, het uploaden van afbeeldingen, enz.)
  2. Schakel de APM tool in MyKinsta in en geef het een paar minuten de tijd om te beginnen met het verzamelen van gegevens. De APM tool kan alleen gegevens opnemen en analyseren als het is ingeschakeld.
  3. Zodra de APM tool begint met het verzamelen van gegevens, maak je het probleem opnieuw om de benodigde informatie vast te leggen.
  4. Als Redis is ingeschakeld op je site, zorg er dan voor dat je de WP Redis of Redis Object Cache plugin gebruikt (maar niet allebei). Het is mogelijk dat we Redis-gegevens van andere plugins niet kunnen verzamelen en weergeven in Kinsta’s APM-tool.

Langzaam ladende pagina’s of acties analyseren

In dit voorbeeld worden pagina’s snel geladen, maar alles wordt traag als je een product toevoegt aan de winkelwagen, of het nu een eenvoudig of een variabel product is.

Nadat we een paar producten aan het winkelwagentje hebben toegevoegd, bekijken we de resultaten in APM (WordPress sites > sitenaam > APM) en zien dat de /single-product transactie bovenaan de lijst van traagste transacties staat, met een maximale duur van meer dan 5 seconden en een gemiddelde duur van meer dan 2 seconden.

Selecteer de transactie met één product bovenaan de lijst met langzaamste transacties in APM.
Selecteer de transactie met één product bovenaan de lijst met langzaamste transacties in APM.

Als je op die transactie klikt, wordt het venster Transactie samples geopend waarin we de langzaamste transactie (de eerste in de lijst) kunnen selecteren om meer details te zien.

Selecteer het langzaamste voorbeeld in de lijst met transactie samples.
Selecteer het langzaamste voorbeeld in de lijst met transactie samples.

Dit brengt ons naar de Tijdlijn Transactie trace, waar we de transacties kunnen sorteren op Duur (tijd) om te zien welke processen in dit transactie sample het langzaamst zijn. Hier zien we dat de update_card_payment span het langzaamste proces in de tijdlijn is, dat 5.002,21 ms van een 5.535,61 ms transactie in beslag neemt.

De update_card_payment span neemt 5.002,21 ms van de transactie in beslag.
De update_card_payment span neemt 5.002,21 ms van de transactie in beslag.

Als je op die span klikt, wordt het modal/popupvenster Span details geopend en wordt de stack trace van de span weergegeven.

Bekijk de details van de span, inclusief de stack trace.
Bekijk de details van de span, inclusief de stack trace.

We kunnen zien dat de WordPress hook action:woocommerce_add_to_cart is gekoppeld aan deze span in de span details.

Er zijn een paar manieren om te achterhalen met welke plugin of thema dit is geassocieerd.

Als je vertrouwd bent met de command-line, kun je het commando grep gebruiken om te zoeken naar de functie update_card_payment en te zien welke plugin- of themabestanden die functie bevatten.

Je kunt ook kijken op het WordPress tabblad onder Monitoring resultaten en zoeken naar een plugin met een vergelijkbare Totale Duuren Max Duur. Deze zal waarschijnlijk bovenaan de lijst staan.

Bekijk de traagste WordPress plugins op het WordPress tabblad onder Monitoring resultaten.
Bekijk de traagste WordPress plugins op het WordPress tabblad onder Monitoring resultaten.

Je kunt de overeenkomst bevestigen door de plugin te selecteren in de lijst met traagste WordPress plugins. Als de plugin niet voorkomt in de WordPress plugin kolom in de Transactie samples modal/popup, selecteer dan het langzaamste transactie sample om de Transactie trace tijdlijn te bekijken.

Selecteer het langzaamste transactievoorbeeld om de Transactie trace tijdlijn te bekijken.
Selecteer het langzaamste transactievoorbeeld om de Transactie trace tijdlijn te bekijken.

Sorteer de tijdlijn op Duur en kijk of dezelfde functienaam (bijv. update_card_payment) bovenaan of bijna bovenaan de lijst staat als je gesorteerd bent.

Sorteer de tijdlijn op Duur en zoek naar de functienaam in de kolom Span.
Sorteer de tijdlijn op Duur en zoek naar de functienaam in de kolom Span.

Algehele traagheid onderzoeken

Algehele traagheid op een site wordt vaak veroorzaakt door een plugin en is een van de eerste plaatsen die je wilt controleren. Als een plugin de oorzaak is van de traagheid van je site, kan dit meestal worden vastgesteld door het tabblad WordPress te bekijken (WordPress sites > sitenaam > APM > WordPress). In de schermafbeelding hieronder zie je dat het totale duurpercentage van de gemarkeerde plugin meer dan 98% is en dat de maximale en gemiddelde duur behoorlijk hoog zijn.

Bekijk het totale duurpercentage, de maximale duur en de gemiddelde duur van een plugin.
Bekijk het totale duurpercentage, de maximale duur en de gemiddelde duur van een plugin.

Dit geeft aan dat deze plugin de meest waarschijnlijke bron is van algehele traagheid op de site. Om dit te bevestigen kunnen we de plugin deactiveren, de prestaties van de site observeren en de resultaten in de APM tool opnieuw controleren nadat er voldoende gegevens zijn verzameld. Als je zeker weet dat de plugin correct is geconfigureerd, maar traagheid blijft veroorzaken op je site, raden we je aan contact op te nemen met de developer van de plugin om samen het probleem op te lossen.

Storende externe problemen oplossen

Externe verzoeken zijn HTTP verzoeken die door de site aan een andere (externe) server worden gedaan. Plugins of thema’s doen deze verzoeken meestal om scripts of stylesheets te laden of om te communiceren met een API.

Bij het oplossen van een mogelijk extern probleem is het belangrijk om te weten dat de APM tool langzame externe transacties op de server registreert. Er kunnen veel externe verzoeken worden gedaan vanaf een site aan de client-kant, die niet worden geregistreerd in de APM tool. Voor het onderzoeken van externe verzoeken aan de client-zijde moet je een tool als GTmetrix of de dev tools van je browser gebruiken.

Om langzame externe verzoeken te bekijken, ga je naar het tabblad Extern onder Monitoring resultaten om de Langzaamste externe verzoeken te bekijken. In dit voorbeeld hebben we wat traagheid opgemerkt bij het uploaden van afbeeldingen in de mediabibliotheek, waarbij sommige uploads 5 minuten of meer in beslag namen.

We beginnen met te kijken hoe de externe verzoeken eruit zien als we niets anders doen dan inloggen op het WordPress dashboard. Voor het uploaden van afbeeldingen naar de Mediabibliotheek zijn POST verzoeken naar wp-cron de langzaamste verzoeken, met 273,78 ms maximale duur en 1.957,81 ms totale duur.

Traagste externe verzoeken in APM.
Traagste externe verzoeken in APM.

Als we verschillende afbeeldingen uploaden, variërend in grootte van 3MB-17MB, duurt het enkele minuten voordat het uploaden is voltooid. Als we opnieuw kijken naar Externe verzoeken, zien we dat POST verzoeken naar smushpro.wpmudev.com de langzaamste externe verzoeken zijn, met een maximale duur van 1.703,14 ms en een totale duur van 82.710,85 ms.

Bijgewerkte traagste externe verzoeken na het uploaden en optimaliseren van afbeeldingen.
Bijgewerkte traagste externe verzoeken na het uploaden en optimaliseren van afbeeldingen.

Als we op die transactie klikken, wordt het venster Transactie samples geopend waarin we de langzaamste transactie (de eerste in de lijst) kunnen selecteren om meer details te zien.

Selecteer het langzaamste transactievoorbeeld in externe verzoeken.
Selecteer het langzaamste transactievoorbeeld in externe verzoeken.

Dit brengt ons naar de tijdlijn van de Transactie trace, waar we de transacties kunnen sorteren op Duur (tijd) om te zien welke spans het langzaamst zijn. Hier zien we dat verschillende POST verzoeken naar smushpro.wpmudev.com het langzaamst zijn in deze steekproef, waarbij het totaal van die POST verzoeken 6.712,64 ms van een 7.168,58 ms transactie in beslag neemt.

Het bekijken van alle verzoeken aan smushpro.wpmudev.com in een tijdlijn met transactie trace.
Het bekijken van alle verzoeken aan smushpro.wpmudev.com in een tijdlijn met transactie trace.

We kunnen ook zien dat de duur van elk verzoek aanzienlijk varieert, waarbij het kortste verzoek slechts 138,2 ms in beslag neemt en het langste verzoek 1.703,14 ms. Dus terwijl de Smush plugin onze afbeeldingen optimaliseert, leidt elk van die afbeeldingen tot een extern verzoek, wat bij elkaar optelt en de site kan vertragen.

In dit geval zou het optimaliseren van onze afbeeldingen vóór het uploaden in plaats van te vertrouwen op een plugin voor beeldoptimalisatie onze externe verzoeken aanzienlijk verminderen. Dit is een van die gevallen waarin we moeten beslissen wat belangrijker is, gemak of site performance. We kunnen de plugin houden als we de nodige traagheid, veroorzaakt door de externe verzoeken, niet erg vinden. Als we liever de prestaties van onze site willen of moeten verbeteren, dan is het verwijderen van de plugin en het optimaliseren van onze afbeeldingen voor het uploaden onze beste optie.

Veelgestelde vragen APM

We hebben een aantal populaire vragen over APM verzameld en hieronder beantwoord.

Hoe kan ik Kinsta’s APM inschakelen?

Kinsta’s APM is beschikbaar zonder extra kosten bij alle pakketten. Om het in te schakelen, moet je:

  1. Inloggen op MyKinsta.
  2. De website die je wilt debuggen selecteren.
  3. Klikken op het tabblad Monitoring.
  4. Klikken op de knop APM inschakelen om de APM tool te starten.

Zal de APM mijn WordPress site vertragen?

Net als bij andere APM tools, kan de Kinsta APM agent extra belasting toevoegen aan de CPU en RAM resources van je server en mogelijk je WordPress site voor een beperkte tijd vertragen.

We raden je daarom sterk aan om de APM alleen in te schakelen als je actief bezig bent met het diagnosticeren van een prestatieprobleem op je site.

Ondersteunt Kinsta nog steeds persoonlijke New Relic monitoring voor klanten met persoonlijke New Relic licenties?

Ja, Kinsta sites ondersteunen nog steeds New Relic monitoring voor klanten met persoonlijke licenties.

Is het mogelijk om Kinsta’s APM en New Relic tegelijkertijd te gebruiken?

We raden niet aan om Kinsta’s APM en New Relic tegelijkertijd te gebruiken voor monitoring. Het is echter goed om te wisselen tussen de APM en New Relic zolang beide tools niet tegelijkertijd actief zijn.

Is de APM compatibel met andere CMS platforms en frameworks? Is het APM compatibel met andere CMS platforms en frameworks?

Op dit moment is de APM alleen volledig compatibel met WordPress.

Werkt de APM met Bedrock (of andere sites die Composer gebruiken)?

Ja, maar als WP-CLI een dependency is in het composer.json bestand van je site, dan moet je een configuratie toevoegen zodat Kinsta’s autoloader kan samenwerken met de WP-CLI autoloader:

"prepend-autoloader": false

Hier is een voorbeeld configuratie array van een Bedrock site na het toevoegen van de prepend configuratie:

"config": {
"optimize-autoloader": true,
"preferred-install": "dist",
"prepend-autoloader": false
},

Wat als ik onverwacht gedrag op mijn site zie nadat ik de APM heb ingeschakeld?

We hebben al uitgebreid getest met verschillende WordPress versies en een lange lijst met plugins. Er kunnen echter nog steeds onbekende problemen zijn, zoals een pluginversie of een custom development die niet compatibel is met onze monitoringoplossing.

Daarom moet je, als je de functie inschakelt, altijd dubbel controleren of je site goed werkt. Als je onbedoeld gedrag ziet, schakel de functie dan uit en laat het ons weten zodat we het probleem kunnen onderzoeken en oplossen.

Hoe lang zijn de gegevens van de APM tool beschikbaar?

APM gegevens worden 14 dagen bewaard. Om gegevens ouder dan 24 uur te bekijken, klik je op de tijdframe knop rechtsboven op de APM pagina, ga je naar de Absoluute tab in het Tijdframe selecteren modal/pop-up, selecteer je een tijdframe van 24 uur binnen de afgelopen 14 dagen en klik je op de Tijdframe toepassen knop.

Samenvatting

De APM tool van Kinsta geeft context aan prestatieproblemen op je WordPress site. In plaats van algemene HTTP 502 fouten of time-outs, geeft de APM tool gedetailleerde uitsplitsingen van trage verzoeken.

Met de APM tool van Kinsta kun je prestatieproblemen opsporen zonder een plugin zoals Query Monitor te installeren of een service van derden zoals New Relic te activeren.

Als je samenwerkt met een developer om problemen op je WordPress site aan te pakken, kan de APM tool van Kinsta je ook helpen tijd en geld te besparen door je een startpunt te bieden.

Was dit artikel nuttig?