Saltar al contenido principal
Puedes enviar 2 tipos de datos de Supabase a LogBrew:
  • 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.
Puedes usar uno o los dos. Ambos necesitan una clave de ingesta del proyecto. Crea una clave 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.
LogBrew lee el drain como logs OTLP. El atributo de recurso 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 flush() antes de devolver la respuesta, porque la función puede detenerse después de devolverla.
Con 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.
No pongas credenciales, cuerpos de solicitud ni datos de clientes en los metadatos de los eventos.