- Een log drain verzendt de platformlogs van je Supabase-project, zoals logs van Postgres, Auth, Storage en Edge Functions.
- De JavaScript-SDK van LogBrew verzendt de logs en fouten die je eigen code in Edge Functions vastlegt.
server-sleutel. De soorten sleutels staan in
Soorten projectsleutels.
Platformlogs verzenden met een log drain
Log drains zijn beschikbaar in de abonnementen Pro, Team en Enterprise van Supabase. Supabase rekent kosten per drain en voor de events die de drain verzendt. Bekijk de prijzen van Supabase voordat je een drain toevoegt.1
Open de instellingen voor log drains
Open je project in het Supabase-dashboard. Ga naar Project Settings
en daarna naar Log Drains.
2
Voeg een OpenTelemetry-bestemming toe
Voeg een bestemming van het type OpenTelemetry (OTLP) toe. Stel deze
waarden in:
In plaats van
x-logbrew-key kun je de header Authorization gebruiken
met de waarde Bearer lbw_ingest_....3
Sla de bestemming op
Sla de bestemming op. Supabase begint logs naar LogBrew te verzenden.Controlepunt: nieuwe Supabase-logs verschijnen in de logs van je
LogBrew-project. Volg
Je testevent teruglezen
om ze met de CLI te lezen.
service.name
bepaalt de service van elke log. De andere resource-attributen blijven in de
metadata van de log. LogBrew verwijdert toegangsgegevens uit URL’s en uit
attributen zoals authorization voordat het de log opslaat. Hoe elk veld
wordt omgezet, staat in
OpenTelemetry (OTLP).
Komen er geen logs aan? Controleer dan het endpoint, het protocol en de
header. De ingest-sleutel moet horen bij het LogBrew-project dat je leest.
Logs en fouten vastleggen in Edge Functions
Supabase Edge Functions draaien op Deno. Gebruik@logbrew/node van npm.
Deze installatie werkt met Deno 2.9, @logbrew/node 0.1.20 en
@logbrew/sdk 0.1.35.
1
Sla de ingest-sleutel op als secret van de functie
Gebruik de Supabase CLI. Vervang de placeholder door je sleutel:
2
Maak de client en flush vóór de return
Maak de client één keer, buiten de request-handler. Leg events vast in de
handler. Roep Met
flush() aan voordat je de response teruggeeft, want de
functie kan stoppen zodra ze iets heeft teruggegeven.captureRuntimeContext: false en de runtime-context toont LogBrew
Deno als runtime. Zonder die twee meldt de SDK de Node.js-versie die Deno
emuleert.Mislukt de aflevering, dan gooit flush() een SdkError, bijvoorbeeld
met de code network_failure. Het voorbeeld schrijft alleen de foutcode
naar de log van de functie, en de functie geeft toch haar response terug.3
Deploy de functie en roep haar aan
Deploy de functie met
supabase functions deploy checkout. Roep haar één
keer aan.Controlepunt: de log checkout request verschijnt in je
LogBrew-project.