Installation
Die AppSignal-Instrumentierung für Plug ist Teil eines separaten Pakets, das vom primärenappsignal-Paket abhängt. Fügen Sie das Paket appsignal_plug zu Ihrer mix.exs-Datei hinzu.
appsignal_phoenix-Paket verwenden, ist es nicht notwendig, das appsignal_plug-Paket hinzuzufügen, da es bereits eine Abhängigkeit des appsignal_phoenix-Pakets ist. Siehe auch unsere Phoenix-Integrationsanleitung.
Eingehende HTTP-Anfragen
Wir beginnen mit einer kleinen Plug-App, dieGET-Anfragen an / annimmt und
eine Willkommensnachricht zurückgibt. Um in dieser App mit dem Protokollieren von HTTP-Anfragen zu beginnen, verwenden wir
das Modul Appsignal.Plug.
Benutzerdefinierte Instrumentierung
ObwohlAppsignal.Plug Transaktionen für Sie startet, instrumentiert es noch keine
Events in Ihrer App. Dafür müssen wir etwas benutzerdefinierte
Instrumentierung hinzufügen.
Diese Beispiel-App sieht aus wie die, die wir zuvor verwendet haben, aber sie hat eine langsame Funktion
(passenderweise slow/0 genannt), für die wir Instrumentierung hinzufügen möchten. Dazu müssen wir
den Helfer Appsignal.instrument/2-3 in unserer aufgerufenen Funktion verwenden:
slow/0 hinzu,
wann immer sie aufgerufen wird. Weitere Informationen zur benutzerdefinierten Instrumentierung finden Sie in
der Elixir-Instrumentierungs-Dokumentation.
Instrumentierung für eingebundene Plugs
Ausnahmen in eingebundenen Plugs werden automatisch von AppSignal abgefangen, aber Performance-Traces müssen manuell mit den benutzerdefinierten Instrumentierungs- Helfern oder Decoratoren eingerichtet werden.Plug-Instrumentierung mit Decoratoren
Um Plugs Instrumentierung hinzuzufügen, verwenden Sie die FunktionAppsignal.instrument/2: