Logs from every service, together.
Functions, auth, and queues stream their stdout and stderr to one place you tail straight from the CLI.
Functions, auth, and jobs all log to the same place — no hunting across services.
Run one command and read what just happened, live as it streams.
You never touch a server to see what your backend is doing.
Every service in one stream
Functions, auth, and jobs all write to the same place, so you stop hunting across services to piece together what happened.
One place to look — No jumping between services to piece it together.
Live as it happens — Watch the lines stream in as they're written.
Read it without touching a server
Run one command and read what just happened — no SSH, no console to dig through, no server to log into.
One command — Tail the logs from the CLI and read them live.
Never touch a box — You never log into a server to see what's going on.
What you'd build with it
The kind of problem Logs is there to solve.
A user reports a payment that didn’t go through; tail the logs and there’s the Stripe timeout, right when it happened.
Ship a change and read what your backend does with real traffic, live as the lines stream in.
See what auth, functions, and jobs are doing from one command — no SSH, no console to dig through.
No log drain to configure, no observability vendor to wire up. Every service's logs are already here.
Compare shovelbase →