EZLogs for Next.js
Activity logs for Next.js — App Router, Server Actions, Postgres.
EZLogs is a Next.js activity log that auto-captures every HTTP route, every Server Action, and every Postgres change, then correlates them into one plain-English card per customer (or agent) action. Anyone on your team can read it — no log files, no grepping, no engineers needed.
What gets captured automatically
- HTTP routes (App Router + Pages Router) — method, path, status, duration, requesting user if your app exposes one.
- Server Actions — the action name, arguments, return value, success/failure.
- Postgres changes via lightweight database triggers — table, primary key, operation, redacted before/after column values. Works with Prisma, Drizzle, supabase-js, Kysely, raw SQL.
- Background jobs via instrumentation hooks for BullMQ, Inngest, Trigger.dev, Upstash QStash, Supabase Queues.
Install in 60 seconds
npm install ezlogs-nextjs
// next.config.ts
import { withEzlogsConfig } from "ezlogs-nextjs/plugin";
export default withEzlogsConfig({});
That’s it. Restart your dev server, deploy to prod — HTTP routes, Server Actions, and DB changes start streaming into EZLogs immediately. Works with Turbopack and Webpack, App Router and Pages Router.
Works with your stack
- ORMs / DB clients: Prisma, Drizzle, supabase-js, Kysely, raw
pg. - Background-job runners: BullMQ, Inngest, Trigger.dev, Upstash QStash, Supabase Queues.
- Auth: NextAuth / Auth.js (we read
session.user.id), Clerk, Supabase Auth, custom JWT. - Hosting: Vercel, Netlify, AWS, Cloudflare Workers, self-hosted Node.
How is this different from Sentry or Datadog?
Those tools answer “is the system healthy?” with errors, traces, and metrics aimed at engineers debugging. EZLogs answers “what happened to my customer?” with business-level actions aimed at the whole company. They monitor the infrastructure. We explain the work.
Performance and safety
- Edge-compatible: works in Edge runtime + Node runtime.
- Out-of-band: events buffered in memory, shipped asynchronously. Average overhead under 1 ms per request.
- Fails open: if EZLogs is unreachable, the agent buffers and retries. The agent never throws into your request path.
- Field-level redaction on by default for credentials, tokens, and sensitive columns.
- Open source at github.com/dezsirazvan/ez_logs_agent_nextjs.
Supported versions
Next.js 13.4+ (App Router + Server Actions), Next.js 12+ (Pages Router). Node 18+. Postgres 13+ for trigger-based DB capture.
No card required · Read-only by design