Integrations
Integration

Monitor Supabase with Sazabi

By Sazabi Team

Last verified on Nov 8, 2026.

A Supabase project is a Postgres database, an auth service, an API gateway and a set of Edge Functions behind one dashboard. When an app misbehaves, the cause is rarely in only one of them. A failing sign-in might be an Auth rule, a database error or a function that crashed after the user got through.

Sazabi is AI-native observability and security. It takes Supabase's log drain as OpenTelemetry log records, and its agent can also connect to Supabase itself to look at schemas and run queries.

What Sazabi reads from Supabase

The log source is an OTLP log drain in Project Settings > Log Drains. It forwards Postgres, Auth and Edge Function logs. Supabase supports one OTLP transport, http/protobuf, and Sazabi's setup also asks for gzip. Supabase batches HTTP deliveries at up to 250 logs or one second, whichever comes first (Supabase: Log Drains). It requires the Pro, Team or Enterprise plan.

Supabase organizes its logs as tables in the Logs Explorer: auth_logs for the authentication service, edge_logs for request and response metadata at the edge, function_edge_logs for the network side of each Edge Function execution, and function_logs for anything the function wrote with console. Every source has the base columns id, timestamp, event_message, severity_text and source (Supabase: Logging). Check the Intake page to see how those fields appear on your own records.

The agent side has two parts. The Supabase MCP connector can manage projects, browse schemas, execute SQL and migrations, and deploy Edge Functions. The Supabase CLI connection puts the supabase command in the sandbox.

Questions it answers

  • Did the sign-in failures come from Auth, or from a database error behind it?
  • Which Edge Function returned errors, and did it log anything while it ran?
  • Is a slow API request a slow query or a slow function?
  • Which table or role is behind a Postgres error?
  • What does the schema look like for the table the error mentions?

A worked example: a function that fails without a message

Edge Functions leave two different traces. function_edge_logs describes the request that invoked the function. function_logs holds the console output from inside it. Supabase also truncates an Edge Function log message at 10,000 characters. A function that crashes before it logs anything leaves a request record and nothing else, which is easy to misread as "no logs".

In a Sazabi thread, ask for both halves at once:

sazabi logs ask "For Supabase Edge Function logs in the last hour, show requests with severity_text error and any function console output with the same time window"

If you see error-level request records and no console lines around them, the function died before its first log call. That points at startup: an import, an environment secret or a top-level await. If you see console lines with an error just before each failed request, the cause is in your own handler. Either way the next step is concrete.

Now ask the agent to look at the database side. With the MCP connector it can run a read-only query for the table the function touches, or inspect its schema, and report whether a recent migration changed it. Use --read-only on the connector when you only want it to look.

Access and cost notes

The connector can modify schemas and run migrations. Scope it to a single project with a project-scoped server URL, and prefer read-only mode for investigation. Log retention inside Supabase depends on your plan, which is one reason to keep a copy of the logs outside the dashboard. The Supabase docs link its logging usage pricing separately, so check it before you turn on very chatty log sources.

How it fits with other integrations

Supabase API traffic passes through Cloudflare's edge, so Supabase documents Cloudflare metadata under metadata.request.cf.* on API logs. If you run your own front end, Vercel or Netlify logs show the other side of the same request. For a different hosted Postgres see Neon. The integrations page lists the rest, and the OpenTelemetry integration covers the protocol the log drain speaks.

Ways to connect

  • Supabase (MCP connector): Give the Sazabi agent tools to manage organizations, projects, and databases, and to run SQL queries.

Log sources

  • Supabase (manual log source, databases): Add an OpenTelemetry log drain in the Supabase dashboard pointed at your Sazabi intake URL to forward Postgres, Auth, and Edge Function logs.

Frequently Asked Questions

Can I send Supabase logs to Sazabi on the Free plan?

No. Supabase Log Drains need a Pro, Team or Enterprise plan, and the Free plan does not include them. The Supabase MCP connector and the Supabase CLI connection for the Sazabi agent work on any plan.

Which settings does the Supabase log drain need?

Set the type to OpenTelemetry Protocol (OTLP), paste your Sazabi intake URL as the endpoint, choose HTTP/Protobuf and turn on gzip compression. If no logs arrive, check the protocol and compression first.

Which Supabase logs does Sazabi receive?

Postgres, Auth and Edge Function logs, as the Sazabi docs describe the source. Supabase sends the logs of its stack to the log drain, and you can confirm what arrives on the Intake page.

Can the Sazabi agent run SQL against my Supabase project?

Yes, through the MCP connector, which can execute SQL queries and migrations and browse schemas. The agent has broad access to your Supabase account, so scope the connection to one project and use the read-only option if you only want it to inspect.

Sources

  1. OTLP log drain with HTTP/Protobuf and gzip, forwards Postgres, Auth and Edge Function logs, needs the Pro, Team or Enterprise plan (accessed Nov 8, 2026)
  2. Supabase MCP connector tools: manage projects, browse schemas, execute SQL and migrations, manage Edge Functions, optional project-scoped server URL and read-only mode (accessed Nov 8, 2026)
  3. Supabase CLI in the agent sandbox with SUPABASE_ACCESS_TOKEN (accessed Nov 8, 2026)
  4. Log drains need Pro, Team or Enterprise; HTTP requests batched at 250 logs or 1 second; OTLP drains use http/protobuf to a /v1/logs endpoint with optional headers (accessed Nov 8, 2026)
  5. Logs Explorer tables auth_logs, edge_logs, function_edge_logs and function_logs, base columns, Edge Function message limit of 10,000 characters, Cloudflare metadata on API logs (accessed Nov 8, 2026)