Zum Hauptinhalt springen
Das AppSignal-für-Elixir-Paket integriert sich mit Phoenix. Um die Integration einzurichten, folgen Sie bitte unserem Installationsleitfaden. Diese Seite beschreibt weitere Möglichkeiten zur Konfiguration von AppSignal für das Phoenix- Framework. Um Ihrer Phoenix-Anwendung weitere benutzerdefinierte Instrumentierung hinzuzufügen, lesen Sie die Elixir- Instrumentierungs-Dokumentation. Weitere Informationen finden Sie in der AppSignal-Hex-Paket- Dokumentation.

Installation

  1. Die AppSignal-Instrumentierung für Phoenix ist Teil eines separaten Pakets, das vom primären appsignal-Paket abhängt. Fügen Sie das Paket appsignal_phoenix zu Ihrer mix.exs-Datei hinzu.
  1. Führen Sie dann mix deps.get aus.
  2. Führen Sie dann mix appsignal.install YOUR_PUSH_API_KEY aus.
Nach der Installation und Konfiguration startet das AppSignal-für-Phoenix-Paket automatisch mit der Instrumentierung von HTTP-Anfragen, was bedeutet, dass keine weitere Einrichtung erforderlich ist. Um tiefere Einblicke zu erhalten, kann AppSignal so eingerichtet werden, dass es Channels und Live-Views instrumentiert.

Channels

Channel-Instrumentierung mit dem Handle eines Channels

Eingehende Channel-Anfragen können instrumentiert werden, indem der Code in Ihren handle_in/3-Funktionen mit Appsignal.Phoenix.Channel.instrument/5 umschlossen wird:
Alternativ können Sie Funktions-Decoratoren verwenden, um Channels zu instrumentieren. Obwohl weniger flexibel als die Instrumentierungsfunktion, minimieren Decoratoren die Menge an Code, die Sie zu den Channels Ihrer Anwendung hinzufügen müssen.
Channel-Events werden unter dem Tab „Background jobs“ angezeigt und zeigen das Channel-Modul und das Action-Argument, das Sie eingegeben haben.

LiveView

Es gibt zwei verschiedene Möglichkeiten, Live-Views zu instrumentieren. Sie können entweder unsere automatischen Telemetry-Handler verwenden oder Sie können Ihre Live-View-Handler manuell mit unseren Helferfunktionen instrumentieren.

Automatische Telemetry-Handler

Hinweis: Die LiveView-Telemetry-Integration ist ab AppSignal-für- Phoenix-Version 2.1.0 verfügbar.
Die LiveView-Telemetry-Integration von AppSignal instrumentiert automatisch LiveView-Events. Um sie einzurichten, rufen Sie Appsignal.Phoenix.LiveView.attach/0 auf, um die LiveView-Telemetry-Handler anzuhängen. Wir empfehlen, diese Funktion in der application.ex Ihrer App aufzurufen:
AppSignal instrumentiert nun automatisch alle mount-, handle_event- und handle_param-Events unter dem live_view-Namespace, was bedeutet, dass Sie sowohl Performance- als auch Fehlereinblicke in Ihre Live-Views erhalten.

Manuelle Helferfunktionen

Wenn Sie die automatische Telemetry-Instrumentierung oben bereits konfiguriert haben, müssen Sie Ihre Live-View-Handler nicht manuell instrumentieren.
Hinweis: Die LiveView-Helferfunktionen sind ab AppSignal-für- Elixir-Version 1.13.0 verfügbar.
Eine LiveView-Action kann auch manuell instrumentiert werden, indem ihr Inhalt in einen Appsignal.Phoenix.LiveView.instrument/4-Block eingewickelt wird. Bei einer Live-View, die ihren eigenen Zustand jede Sekunde aktualisiert, können wir AppSignal-Instrumentierung hinzufügen, indem wir sowohl die Funktionen mount/2 als auch handle_info/2 mit einem Appsignal.Phoenix.LiveView.instrument/4-Aufruf umschließen:
Der Aufruf einer dieser Funktionen in Ihrer App erstellt jetzt automatisch ein Sample, das an AppSignal gesendet wird. Diese werden unter dem :live_view-Namespace angezeigt.

Instrumentierung für eingebundene Plugs

Ausnahmen in eingebundenen Plugs werden automatisch von AppSignal abgefangen, aber Performance-Samples müssen manuell mit den benutzerdefinierten Instrumentierungs- Helfern oder Decoratoren eingerichtet werden. Weitere Informationen finden Sie in der Plug- Dokumentation.

Benutzerdefinierte Instrumentierung

Fügen Sie benutzerdefinierte Instrumentierung hinzu, um komplexeren Code zu verfolgen und vollständigere Aufschlüsselungen langsamer Anfragen zu erhalten.