- Ein Log-Drain sendet die Plattform-Logs Ihres Supabase-Projekts, zum Beispiel Logs von Postgres, Auth, Storage und Edge Functions.
- Das LogBrew-JavaScript-SDK sendet die Logs und Fehler, die Ihr eigener Code in Edge Functions erfasst.
server-Schlüssel. Die Schlüsselarten finden Sie unter
Arten von Projektschlüsseln.
Plattform-Logs per Log-Drain senden
Supabase bietet Log-Drains in den Supabase-Tarifen Pro, Team und Enterprise an. Supabase stellt jeden Drain und die Ereignisse, die er sendet, in Rechnung. Lesen Sie die Supabase-Preise, bevor Sie einen Drain hinzufügen.1
Log-Drain-Einstellungen öffnen
Öffnen Sie im Supabase-Dashboard Ihr Projekt. Gehen Sie zu
Project Settings und dann zu Log Drains.
2
OpenTelemetry-Ziel hinzufügen
Fügen Sie ein Ziel vom Typ OpenTelemetry (OTLP) hinzu. Setzen Sie
diese Werte:
Statt
x-logbrew-key können Sie auch den Header Authorization mit dem
Wert Bearer lbw_ingest_... verwenden.3
Ziel speichern
Speichern Sie das Ziel. Supabase beginnt, Logs an LogBrew zu senden.Kontrollpunkt: Neue Supabase-Logs erscheinen in den Logs Ihres
LogBrew-Projekts. Um sie mit der CLI zu lesen, folgen Sie
Testereignis zurücklesen.
service.name
bestimmt den Dienst jedes Logs. Die anderen Ressourcenattribute bleiben in den
Metadaten des Logs. LogBrew entfernt Zugangsdaten aus URLs und aus Attributen
wie authorization, bevor es das Log speichert. Die vollständige Zuordnung
finden Sie unter OpenTelemetry (OTLP).
Wenn keine Logs ankommen, prüfen Sie den Endpunkt, das Protokoll und den
Header. Der Ingest-Schlüssel muss zu dem LogBrew-Projekt gehören, das Sie
lesen.
Logs und Fehler in Edge Functions erfassen
Supabase Edge Functions laufen auf Deno. Verwenden Sie@logbrew/node aus
npm. Diese Einrichtung funktioniert mit Deno 2.9, @logbrew/node 0.1.20 und
@logbrew/sdk 0.1.35.
1
Ingest-Schlüssel als Funktions-Secret speichern
Verwenden Sie die Supabase-CLI. Ersetzen Sie den Platzhalter durch Ihren
Schlüssel:
2
Client erstellen und vor der Antwort flushen
Erstellen Sie den Client einmal, außerhalb des Anfrage-Handlers. Erfassen
Sie Ereignisse im Handler. Rufen Sie Mit
flush() auf, bevor Sie die Antwort
zurückgeben. Die Funktion kann nach der Rückgabe beendet werden.captureRuntimeContext: false und dem runtime-Kontext zeigt LogBrew
Deno als Laufzeit an. Ohne diese Angaben meldet das SDK die
Node.js-Version, die Deno emuliert.Wenn die Zustellung fehlschlägt, wirft flush() einen SdkError, zum
Beispiel mit dem Code network_failure. Das Beispiel schreibt nur den
Fehlercode in das Log der Funktion. Die Funktion gibt ihre Antwort
trotzdem zurück.3
Funktion bereitstellen und aufrufen
Stellen Sie die Funktion mit
supabase functions deploy checkout bereit.
Rufen Sie sie einmal auf.Kontrollpunkt: Das Log checkout request erscheint in Ihrem
LogBrew-Projekt.