Skip to main content
Faraday ist eine HTTP-Client-Bibliothek, die eine einheitliche Schnittstelle über viele HTTP-Adapter bereitstellt. AppSignal instrumentiert Faraday-Requests automatisch, wenn das Faraday-gem beim Start erkannt wird. Es ist keine manuelle Einrichtung erforderlich. Faraday sendet Requests über einen zugrunde liegenden Adapter, standardmäßig Net::HTTP. AppSignal instrumentiert auch einige dieser Adapter, etwa Net::HTTP und Excon. Um zu vermeiden, dass derselbe Request doppelt aufgezeichnet wird, zeichnet AppSignal jeden Faraday-Request einmal als Faraday-event auf und instrumentiert den Adapter für diesen Request nicht.

Performance-Monitoring

Mit Faraday ausgeführte Requests erscheinen in der Event-Timeline der Performance-Actions Ihrer Anwendung als request.faraday-events, wobei die Request-Methode und der Host angezeigt werden. Sie erscheinen außerdem im Performance-Panel „Slow API requests”, in dem Sie die Requests überprüfen können, die Ihre Anwendung an andere Dienste stellt, sowie deren Auswirkungen auf die Performance.

Deaktivieren der Integration

Um die Faraday-Integration zu deaktivieren, setzen Sie die Konfigurationsoption instrument_faraday auf false.

Span-Attribute

Nur im Collector-Modus: Dies gilt, wenn AppSignal für Ruby im Collector-Modus läuft. Andernfalls hat es keine Auswirkung.
Der Span des Requests enthält:
  • http.request.method — die Request-Methode.
  • server.address und server.port — der aufgerufene Host.
  • url.full — die vollständige Request-URL.
  • http.response.status_code — der Status, mit dem der andere Dienst geantwortet hat.

Distributed tracing

Nur im Collector-Modus: Dies gilt, wenn AppSignal für Ruby im Collector-Modus läuft. Andernfalls hat es keine Auswirkung.
Anfragen, die mit dieser Bibliothek gestellt werden, tragen den aktuellen Trace über einen traceparent-Request-Header an den aufgerufenen Service weiter. Wenn dieser Service ebenfalls an AppSignal berichtet, wird seine Arbeit Teil desselben Trace. Sie können eine langsame ausgehende Anfrage öffnen und sehen, womit der andere Service seine Zeit verbracht hat. Die von AppSignal unterstützten HTTP-Server setzen den Trace fort. Jeder andere Service startet einen eigenen.