Verwendet Ihre Anwendung eine Kombination aus Rails, Grape, Hanami, Padrino oder Sinatra? Folgen Sie unserem Leitfaden zum Instrumentieren mehrerer Rack-Anwendungen.
Installation
Nachdem Sie das AppSignal-Gem installiert haben, fügen Sie die AppSignal-Integration nach dem Require vonsinatra (oder sinatra/base) hinzu.
Fehler ignorieren
Um einen bestimmten Sinatra-Fehler zu ignorieren, setzen Sie das FlagSinatra.skip_appsignal_error in der Request-Umgebung. Dieses Flag weist AppSignal an, den während der Anfrage auftretenden Fehler zu ignorieren und nicht an AppSignal zu melden.
Ignorieren Sie Fehler auf diese Weise nur, wenn Sie Fehler aus einer Sinatra-App per Code ignorieren müssen. Verwenden Sie die Option ignore_errors, um sie für die gesamte App zu ignorieren. Um nicht über einen Fehler benachrichtigt zu werden, sehen Sie sich unsere Benachrichtigungseinstellungen an.
Span-Attribute
Nur im Collector-Modus: Dies gilt, wenn AppSignal für Ruby im Collector-Modus läuft. Andernfalls hat es keine Auswirkung.
http.request.method— die Request-Methode.url.scheme,url.pathundurl.query— die angefragte Adresse.http.response.status_code— der Status, mit dem Ihre Anwendung geantwortet hat.
error.type, die Klasse des Fehlers.
Verteiltes Tracing
Nur im Collector-Modus: Dies gilt, wenn AppSignal für Ruby im Collector-Modus läuft. Andernfalls hat es keine Auswirkung.
traceparent-Request-Header eintrifft, setzt den darin benannten Trace fort.
Die Anfrage erscheint innerhalb des Trace des aufrufenden Service, unter der Anfrage, die sie ausgelöst hat. Sie können eine langsame Anfrage von diesem Service aus in diese Anwendung hinein verfolgen, ohne den Trace zu wechseln.
Die HTTP-Clients, die AppSignal unterstützt, starten den Trace. Eine Anfrage ohne den Header startet einen neuen.