Langsung ke konten utama
Anda dapat mengirim 2 jenis data Supabase ke LogBrew:
  • Log drain mengirim log platform dari proyek Supabase Anda, seperti log Postgres, Auth, Storage, dan Edge Functions.
  • SDK JavaScript LogBrew mengirim log dan error yang direkam oleh kode Edge Function Anda sendiri.
Anda dapat memakai salah satunya atau keduanya. Keduanya memerlukan kunci ingest proyek. Buat kunci server untuk setiap penggunaan. Jenis kunci dijelaskan di Jenis kunci proyek.

Kirim log platform dengan log drain

Log drain Supabase tersedia di paket Pro, Team, dan Enterprise Supabase. Supabase mengenakan biaya untuk setiap drain dan untuk peristiwa yang dikirimnya. Baca harga Supabase sebelum menambahkan drain.
1

Buka pengaturan log drain

Di dasbor Supabase, buka proyek Anda. Buka Project Settings, lalu Log Drains.
2

Tambahkan tujuan OpenTelemetry

Tambahkan tujuan dengan jenis OpenTelemetry (OTLP). Atur nilai berikut:Sebagai pengganti x-logbrew-key, Anda dapat memakai header Authorization dengan nilai Bearer lbw_ingest_....
3

Simpan tujuan

Simpan tujuan. Supabase mulai mengirim log ke LogBrew.Titik periksa: log Supabase baru muncul di log proyek LogBrew Anda. Untuk membacanya dari CLI, ikuti Baca kembali peristiwa uji Anda.
LogBrew membaca drain sebagai log OTLP. Atribut resource service.name menentukan layanan setiap log. Atribut resource lain tetap tersimpan di metadata log. LogBrew menghapus kredensial dari URL dan dari atribut seperti authorization sebelum menyimpan log. Pemetaan lengkapnya ada di OpenTelemetry (OTLP). Jika tidak ada log yang sampai, periksa endpoint, protokol, dan header. Kunci ingest harus milik proyek LogBrew yang Anda baca.

Rekam log dan error di Edge Functions

Supabase Edge Functions berjalan di Deno. Gunakan @logbrew/node dari npm. Penyiapan ini berfungsi dengan Deno 2.9, @logbrew/node 0.1.20, dan @logbrew/sdk 0.1.35.
1

Simpan kunci ingest sebagai rahasia fungsi

Gunakan Supabase CLI. Ganti placeholder dengan kunci Anda:
2

Buat klien dan lakukan flush sebelum mengembalikan respons

Buat klien satu kali, di luar handler permintaan. Rekam peristiwa di handler. Panggil flush() sebelum mengembalikan respons, karena fungsi bisa berhenti setelah respons dikembalikan.
captureRuntimeContext: false dan konteks runtime membuat LogBrew menampilkan Deno sebagai runtime. Tanpa keduanya, SDK melaporkan versi Node.js yang diemulasikan Deno.Jika pengiriman gagal, flush() melempar SdkError, misalnya dengan kode network_failure. Contoh ini hanya menulis kode error ke log fungsi, dan fungsi tetap mengembalikan responsnya.
3

Deploy dan panggil fungsi

Deploy fungsi dengan supabase functions deploy checkout. Panggil fungsi itu satu kali.Titik periksa: log checkout request muncul di proyek LogBrew Anda.
Jangan masukkan kredensial, body permintaan, atau data pelanggan ke metadata peristiwa.