Heim >PHP-Framework >Laravel >Wie überwache ich das Laravel-Programm mit Scout APM?
Scout APM ist ein Laravel-Tool zur Überwachung der Anwendungsleistung, das Leistungsausnahmen direkt mit Endpunkten verknüpft und so Entwicklern Stunden bei der Fehlerbehebung und beim Debuggen erspart.
Scout hat kürzlich sein Serviceangebot um Microservices und Managed Service Monitoring für PHP-Anwendungen erweitert und bietet Ihnen damit zusammenhängendere und umsetzbarere Beobachtbarkeitsmetriken. Erfahren Sie im Folgenden mehr darüber, wie Sie Laravel-Anwendungen mit Scout APM überwachen.
Um mit der Überwachung Ihrer Laravel-Anwendung zu beginnen, benötigen Sie zunächst ein Scout-Konto. Wenn Sie es noch nicht getan haben, können Sie sich hier für eine 14-tägige kostenlose Testversion anmelden (keine Kreditkarte erforderlich).
Als nächstes müssen Sie den Überwachungsagenten mit geringem Overhead zu den Abhängigkeiten des Projekts hinzufügen. Dies kann mit einem Befehl in der Shell erfolgen:composer require scoutapp/scout-apm-laravelDieser Befehl installiert zwei Pakete: scout-apm-laravel und scout -apm-php. Der nächste Schritt besteht darin, einige Konfigurationen zu definieren, um den Proxy mit Ihrem Konto zu verknüpfen. Öffnen Sie dazu die
-Datei Ihres Projekts in Ihrem Texteditor und fügen Sie der Datei die folgenden drei Konfigurationszeilen hinzu: .env
SCOUT_MONITOR=true SCOUT_KEY=”enter your Agent Key here” SCOUT_NAME=”enter the name of you application here”Sie finden das Proxy-Geheimnis Ihres Kontos auf der Wo soll ich anfangen? Jetzt haben Sie ein Scout-Konto erstellt und Ihren Überwachungsagenten verbunden, aber wo beginnen Sie mit der Diagnose von Leistungsproblemen bei Ihrer Anwendung? Werfen wir einen Blick auf die wichtigsten Funktionen von Scout, die Ihnen helfen können, Leistungsprobleme schnell zu verstehen. HauptübersichtsseiteWenn Sie sich bei Scout anmelden, ist die erste Seite, die Sie sehen, die Übersichtsseite (siehe unten), die Ihnen auf einen Blick einen klaren, übersichtlichen Überblick über den Zustand und die Leistung Ihrer Anwendung bietet. Das Diagramm ist hochgradig konfigurierbar, sodass Sie den Zeitraum ändern und wechseln können, welche Metriken Sie anzeigen möchten. Es verfügt außerdem über ein praktisches Drag-and-Drop-Tool (siehe unten), mit dem Sie einen Rahmen um den Bereich ziehen können, den Sie genauer erkunden möchten. Wenn Sie diese Kästchen zeichnen, wird dynamisch ein Popup geladen, das alle in diesem Zeitraum besuchten Endpunkte anzeigt. Diese Funktion ist besonders nützlich, wenn Sie in einem Diagramm eine Leistungsspitze sehen und deren Ursache verstehen möchten. Registerkarte „Einblicke“ Wenn Sie Scout zum ersten Mal ausprobieren, ist die Registerkarte „Einblicke“ ein guter Ausgangspunkt. Hier verfügen wir über eine Reihe von Algorithmen, die Ihr Projekt analysieren, um potenzielle
n+1-Abfragen und langsame Abfragen zu identifizieren. Diese bieten Ihnen „Low-Hanging Fruit“-Leistungskorrekturen, die die Leistung Ihrer Anwendung oft sofort verbessern können.
Endpunkte und TracingScout bietet hauptsächlich zwei Ebenen von Anwendungsleistungsmetriken. Betrachten Sie es zunächst aus der Endpunktperspektive. Wie lange dauert es beispielsweise im Durchschnitt, auf diesen Endpunkt zuzugreifen? Wo wird die Zeit verbracht? Wenn Sie sich den Screenshot unten ansehen, können Sie deutlich erkennen, dass von der durchschnittlichen Anforderungszeit von 2.371 ms für die drei Besuche dieses ForgetPasswordController-Endpunkts 78 % auf der Controller-Ebene verbracht werden, was darauf hindeutet, dass dies die erste Untersuchung sein wird, wenn wir Ich möchte versuchen, diesen langsamen Endpunkt zu verbessern. Der zweite Winkel, in dem Scout hauptsächlich Indikatoren anzeigt, ist die Trace-Ebene. Zum Beispiel, wann jemand diese bestimmte Webanfrage gestellt hat, wie lange es gedauert hat, sie abzuschließen, welche Ebenen der Anfrage die meiste Zeit in Anspruch genommen haben usw. Wenn wir uns unten die Ablaufverfolgung des Aktualisierungsvorgangs des UserControllers ansehen, können wir sehen, dass in diesem Fall 98 % der Zeit auf der SQL-Ebene aufgewendet wird und die meiste Zeit auf die beiden Aufrufe der übergeordneten Abfrage der ersten Zeile entfällt . Wenn wir auf diese SQL-Schaltfläche klicken, können wir einen Traceback sehen, um zu sehen, ob wir die Abfrage verbessern können. Auf diesen Seiten verbringen Sie die meiste Zeit in Scout und sie bieten Ihnen die nötige Sichtbarkeit, wenn Sie versuchen, Ihre Leistungsprobleme zu verstehen. Sie können direkt über die Hauptübersichtsseite und die Registerkarte „Einblicke“ auf die Seiten „Endpunkt“ und „Trace“ zugreifen oder indem Sie oben auf der Seite auf den Link „Web-Endpunkte“ klicken (siehe unten).Nachdem wir uns nun mit den Grundlagen von Scout befasst und Ihnen die Hauptbereiche des Systems gezeigt haben, die Sie normalerweise tagein, tagaus verwenden, richten wir unsere Aufmerksamkeit auf einige der fortgeschritteneren Bereiche Diese Funktionen zeichnen Scout in der APM-Welt aus. Ganz gleich, ob Sie Sentry, Honeybadger, Bugsnag oder Rollbar zur Fehlerüberwachung verwenden, wir sind für Sie da! Scout lässt sich nahtlos in diese beliebten Dienste integrieren, sodass Sie alles an einem Ort auf der Hauptübersichtsseite überwachen können. Egal welchen Dienst Sie nutzen, der Einrichtungsprozess ist ähnlich und Sie müssen lediglich das API-Token auf dem Einrichtungsbildschirm von Scout hinzufügen. Warum tritt dieses Leistungsproblem nur dienstagabends um 2:00 Uhr von einer brasilianischen IP-Adresse aus auf? Diese schwierigen (aber häufigen) Leistungsprobleme können mit einer der leistungsstärksten Funktionen von Scout gelöst werden: dem Trace Explorer, der in Verbindung mit benutzerdefinierten benutzerdefinierten Kontexten verwendet wird. Durch die Verwendung eines definierten benutzerdefinierten Kontexts können Sie uns mitteilen, was Sie sehen möchten. Die Investition in die relativ kurze Einrichtungszeit, um Überwachungs-Superkräfte zu erlangen, lohnt sich! Standardmäßig sind die einzigen Kontextfelder, die Sie sehen, der URI und der Hostname, wie unten gezeigt, aber diese können nach Ihren Wünschen angepasst werden. Mit dem Multifilterdiagramm des Trace Explorer (siehe oben) können Sie nach Endpunkten suchen, die den von Ihnen definierten Kriterien entsprechen. Anschließend können Sie diejenigen, die diesen Filtern entsprechen, im Abschnitt „Transaktionsspuren“ anzeigen Bildschirm Alle Tracking. Beispielsweise möchten Sie möglicherweise Webanfragen für einen bestimmten Benutzer, für alle Benutzer eines Plans oder aus einer bestimmten Region der Welt anzeigen. Diese Vorgänge lassen sich im Trace Explorer mit benutzerdefiniertem Kontext einfach durchführen und können Ihnen dabei helfen, Einblicke in diese schwer zu diagnostizierenden, zeitaufwändigen Leistungsprobleme zu gewinnen. Sehen Sie, ob dieses Leistungsproblem plötzlich nach der letzten Bereitstellung auftrat? Wie war die Benutzererfahrung während Ihrer Bereitstellung? Dies sind Antworten, die mit der Funktion „Einsatzverfolgung“ beantwortet werden können, die ein Raketensymbol auf der Hauptübersichtskarte platziert, um anzuzeigen, wann ein Einsatz stattgefunden hat. Mit der Bereitstellungsverfolgung können Sie auch Details anzeigen, z. B. die Anzahl der an der Bereitstellung beteiligten Commits und den Zweig, aus dem die Commits stammen. Wir können alle diese Informationen sammeln, wenn Sie den SHA oder Ihre Bereitstellung zur Umgebungsvariablen Wie alle guten Überwachungslösungen bietet Ihnen Scout ein ausgeklügeltes Warnsystem, das so konfiguriert werden kann, dass es Warnungen an bestimmte Personen sendet, wenn die Endpunkt-Reaktionszeit oder die Speichernutzungsmetriken einen bestimmten Schwellenwert überschreiten. Diese Warnungen werden als Warnsymbol auf der Hauptübersichtskarte angezeigt und eine Benachrichtigung ausgegeben. Standardmäßig senden Systemwarnungen Benachrichtigungen per E-Mail an Benutzer in der Benachrichtigungsgruppe. Sie können jedoch auch über unsere Webhook-Funktion für die Zusammenarbeit mit Diensten von Drittanbietern wie Slack, VictorOps, PagerDuty usw. konfiguriert werden. Verwenden Sie eine Bibliothek außerhalb von Laravel, die wir derzeit nicht erkennen? Wenn ja, dann informieren Sie zunächst unser Support-Team und wir werden versuchen, Support für Sie bereitzustellen. In der Zwischenzeit können Sie selbst einige benutzerdefinierte Tools hinzufügen. Der Einstieg ist sehr einfach und stellt sicher, dass Sie einen vollständigen Einblick in die gesamte Anwendung haben. Wie Sie sehen können, bringt Scout APM eine sehr ausgereifte APM-Überwachungslösung für die PHP- und Laravel-Communitys. Unsere übersichtliche Benutzeroberfläche und die umfassenden Tools helfen Ihnen, schnell zum Kern Ihres Problems zu gelangen und bleiben dank einer flexiblen, transaktionsbasierten Preisstruktur erschwinglich. Originaladresse: https://laravel-news.com/scout-apm-for-monitoring-a-laravel-application Übersetzungsadresse: https://learnku.com/laravel/t/68744 [Verwandte Empfehlungen: Laravel-Video-Tutorial]Das ist aber noch nicht alles
Fehlerüberwachung
Benutzerdefinierter Kontext- und Trace-Explorer
Bereitstellungsverfolgung
SCOUT_REVISON_SHA
hinzufügen. Warnungen
Benutzerdefinierte Instrumente
Was kommt als nächstes?
Das obige ist der detaillierte Inhalt vonWie überwache ich das Laravel-Programm mit Scout APM?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!