- Un log drain envía los logs de la plataforma de tu proyecto de Supabase, como los logs de Postgres, Auth, Storage y Edge Functions.
- El SDK de JavaScript de LogBrew envía los logs y errores que captura el código de tus propias Edge Functions.
server para cada uso. Consulta los tipos de clave en
Tipos de clave de proyecto.
Envía los logs de la plataforma con un log drain
Los log drains de Supabase están disponibles en los planes Pro, Team y Enterprise de Supabase. Supabase cobra por cada drain y por los eventos que envía. Lee los precios de Supabase antes de añadir un drain.1
Abre los ajustes del log drain
En el panel de Supabase, abre tu proyecto. Ve a Project Settings y
después a Log Drains.
2
Añade un destino de OpenTelemetry
Añade un destino del tipo OpenTelemetry (OTLP). Define estos valores:
En lugar de
x-logbrew-key, puedes usar el encabezado Authorization con
el valor Bearer lbw_ingest_....3
Guarda el destino
Guarda el destino. Supabase empieza a enviar logs a LogBrew.Punto de control: los nuevos logs de Supabase aparecen en los logs de
tu proyecto de LogBrew. Para leerlos desde la CLI, sigue
Lee de vuelta tu evento de prueba.
service.name
define el servicio de cada log. Los demás atributos de recurso quedan en los
metadatos del log. LogBrew elimina las credenciales de las URL y de atributos
como authorization antes de guardar el log. Consulta la correspondencia
completa en OpenTelemetry (OTLP).
Si no llega ningún log, revisa el endpoint, el protocolo y el encabezado. La
clave de ingesta debe pertenecer al proyecto de LogBrew que lees.
Captura logs y errores en Edge Functions
Las Supabase Edge Functions se ejecutan en Deno. Usa@logbrew/node desde npm.
Esta configuración funciona con Deno 2.9, @logbrew/node 0.1.20 y
@logbrew/sdk 0.1.35.
1
Guarda la clave de ingesta como secreto de la función
Usa la CLI de Supabase. Sustituye el marcador de posición por tu clave:
2
Crea el cliente y haz flush antes de responder
Crea el cliente una sola vez, fuera del handler de la solicitud. Captura
los eventos en el handler. Llama a Con
flush() antes de devolver la
respuesta, porque la función puede detenerse después de devolverla.captureRuntimeContext: false y el contexto runtime, LogBrew
muestra Deno como runtime. Sin ellos, el SDK informa la versión de Node.js
que Deno emula.Si la entrega falla, flush() lanza un SdkError, por ejemplo con el
código network_failure. El ejemplo solo escribe el código de error en el
log de la función, y la función devuelve igualmente su respuesta.3
Despliega y llama a la función
Despliega la función con
supabase functions deploy checkout. Llámala una
vez.Punto de control: el log checkout request aparece en tu proyecto de
LogBrew.