0.12.0 des AppSignal-für-Elixir-Pakets verfügbar.
Der Diagnosebericht
Dieses Befehlszeilen-Tool ist nützlich, um AppSignal auf einem System zu testen und die lokale Konfiguration zu überprüfen. Es gibt nützliche Informationen zum Debuggen von Problemen aus und prüft, ob der AppSignal-Agent auf der Architektur der Maschine ausgeführt werden und mit den AppSignal-Servern kommunizieren kann. Dieses Diagnose-Tool sammelt und gibt Folgendes aus:- Informationen über das AppSignal-Paket.
- Informationen über das Host-System, Elixir und Erlang.
- ob die AppSignal-Erweiterung und der Agent auf dem Host-System ausgeführt werden können.
- alle konfigurierten Konfigurationsoptionen (einschließlich Standardwerten).
- ob die Konfiguration gültig und aktiv ist.
- ob der Push-API-Key vorhanden und gültig ist (Internetverbindung erforderlich).
- woher die Werte der Konfigurationsoptionen stammen.
- ob die erforderlichen Systempfade existieren, beschreibbar sind und welcher Benutzer und welche Gruppe Eigentümer sind.
- kleine Teile vom Ende der verfügbaren Logdateien.
Bericht einreichen
Seit Paketversion1.3.0 werden Sie aufgefordert, den Bericht an AppSignal zu senden. Wenn Sie zustimmen, wird der Bericht an unsere Server gesendet und Sie erhalten einen Support-Token.
Wenn Sie uns diesen Support-Token zusenden, prüfen wir den Bericht und helfen Ihnen, das Problem zu debuggen. Wir haben festgestellt, dass das Kopieren und Einfügen der Berichtsausgabe in der Regel die Formatierung verliert und das Lesen erschwert, weshalb der Bericht im JSON-Format an unsere Server gesendet wird.
In Paketversion 1.9.0 wurde die Option hinzugefügt, den Bericht selbst auf AppSignal.com anzuzeigen. Ein Link zum Bericht wird in der Diagnose-Ausgabe gedruckt. Diese Web-Ansicht zeigt auch alle Validierungsprobleme und Warnungen an, die unser System erkannt hat.
Verwendung
In der Befehlszeile in Ihrem Projekt:Mit einer Elixir-Release-Binary
Wenn Ihre Elixir-App in einer mitmix release erstellten Elixir-Release-Binary verpackt ist, können Sie die Aufgabe nicht mit mix aufrufen. Verwenden Sie stattdessen den eval-Befehl auf Ihrer Release-Binary, um die AppSignal-Aufgabe diagnose wie folgt aufzurufen:
Mit einer Release-Binary
Wenn Ihre Elixir-App mit einem Tool wie distillery in einer Release-Binary verpackt ist, können Sie die Aufgabe nicht mitmix aufrufen. Verwenden Sie stattdessen den command-Befehl auf Ihrer Release-Binary, um die AppSignal-Aufgabe diagnose wie folgt aufzurufen:
Optionen
| Option | Beschreibung |
|---|---|
| Umgebungsoption | Die im Befehl zu verwendende Umgebung festlegen, z. B. production oder staging. |
--[no-]send-report | Den Bericht automatisch senden oder nicht senden. |
Umgebungsoption
Eine bestimmte Umgebung mit der CLI auswählen.Berichtseinreichungs-Option
Die Optionen zum sofortigen Einreichen des Berichts (oder nicht) wurden in der AppSignal-Paketversion1.9.0 hinzugefügt. Wenn Sie mit diesen Optionen auswählen, ob der Bericht gesendet werden soll oder nicht, wird diese Frage nicht mehr angezeigt, was die Verwendung in nicht-interaktiven Umgebungen erleichtert.
Den Bericht an AppSignal senden:
Format der Konfigurationsausgabe
Format der Werte der Konfigurationsoptionen
Die Konfigurationsoptionen werden auf der CLI als ihre inspizierten Werte ausgegeben. Das heißt, wir geben sie so aus, wie Elixir es in einer Konsole tun würde.- Zeichenkettenwerte werden in doppelte Anführungszeichen gesetzt, z. B.
"My app name". - Boolesche Werte werden als ihre Rohwerte ausgegeben:
trueundfalse. - Listenwerte werden als eine Sammlung von Werten in eckigen Klammern ausgegeben, z. B.
["HTTP_ACCEPT", "HTTP_ACCEPT_CHARSET"].- Leere Listen werden als zwei eckige Klammern ausgegeben:
[].
- Leere Listen werden als zwei eckige Klammern ausgegeben:
- Nil-Werte werden als
nilausgegeben.
Konfigurationsquellen
Der Konfigurationsabschnitt gibt auch aus, woher die Werte der Konfigurationsoptionen stammen. Dies kann helfen, Quellen zu identifizieren, die Werte aus anderen Konfigurationsquellen überschreiben. Welche Konfigurationsquellen verfügbar sind und in welcher Reihenfolge sie geladen werden und damit ihre Priorität, finden Sie auf der Seite Konfigurations-Ladereihenfolge. Die Konfigurationsoptionen werden je nach Herkunft der Konfigurationsoptionswerte und Anzahl der Quellen, die diese Option festlegen, wie unten gezeigt ausgegeben.Shell
Exit-Codes
- Beendet sich mit Statuscode
0, wenn der Befehl erfolgreich abgeschlossen wurde. - Beendet sich mit Statuscode
1, wenn der Befehl mit einem Fehler abgeschlossen wurde.