Why your app needs logs (and how AI changes the math)
I avoided setting up real logging for a decade. Here's the case for doing it now, and the math that just changed.
For years I shipped side projects with no logging beyond console.log and
a Sentry account I forgot to renew. Most bugs got reported by the only
user who hit them: me. The rest got reported by people who emailed me to
ask if the site was broken.
I’m not proud of this, but I’m probably not alone.
What logs are actually for
Three things, mostly.
Knowing what happened. When a user hits an error, you want a record of what they did, what your code returned, and what the third-party APIs you depend on said back. Without that, debugging is guessing.
Watching for trends you didn’t predict. Error rates spiking after a deploy. A particular endpoint quietly returning 500s for one user agent. Payments failing in only one country. Logs are how you notice these.
Audit and accountability. “Did this user actually click the button at 2am, or are they making it up?” The truthful answer lives in a log line, not in a support ticket.
A logger is the boring foundation under every other observability tool: error tracking, alerts, dashboards, traces, replays. You can have logs without those things. You cannot have those things without logs.
Why most devs skip them anyway
Three reasons I see, and have personally used, to put off setting up logging:
-
Setup pain. Pick a vendor, sign up, find the SDK for your stack, configure it, redeploy, decide what to log, decide what not to log, find out you accidentally logged a password, redeploy again. By the tenth log line you’ve spent half a day on something that isn’t shipping the feature.
-
Cost. Logging vendors charge by volume. You add
log.infoon every request and three months later you have a Datadog bill in the hundreds for data you never query. -
It’s boring. Logs by themselves don’t ship features. They feel like the thing you do after something breaks, not before.
The result: most small projects have terrible observability until they cross some user threshold and an outage forces the issue.
What AI changes
Logs were worth setting up before AI. They’re how you find out a deploy broke checkout for Safari users in Germany, with or without an agent reading them.
But the math is shifting. If you set up logs in 2018, you used them to debug production incidents yourself. You’d grep through them when the alert fired. The cost-benefit was: pay for vendor, pay for setup, pay for storage, in exchange for being able to do detective work faster at 2am.
With an AI agent that can read your logs directly, the same log line becomes context for a tool that does the detective work for you. The AI reads the error, finds the related log lines, pulls the relevant source file, and either tells you what to fix or opens a PR with the fix.
A few days ago, an overnight PR fixed a magic-link bug on a side project of mine before I woke up. +13 / −1, on a real bug, while I was asleep. That’s the new shape.
The cost stays roughly the same. The benefit goes from “I can debug faster” to “I can not be the one debugging at all.” For a solo developer who used to skip logging because the payoff didn’t justify the work, an AI on-call layered on top tilts the math the other way.
What good looks like
The minimum I’d recommend for a serious side project, in order of importance:
- Structured logs, not free-form strings. Every log entry should be JSON or equivalent so it’s queryable later.
- A few levels (at minimum info, warn, error) so you can filter noise.
- Environment tags (dev, staging, prod) so dev noise doesn’t drown your prod signal.
- Metadata on every entry: user ID, trace ID, request ID, anything that helps you reconstruct what happened.
- Search and filter that doesn’t require learning a query language.
- An alert when error volume spikes, even if no one’s watching.
If you build this yourself, you’re spending a weekend wiring up a database, a query layer, an ingest pipeline, a retention policy, and a dashboard. Most people don’t, which is why most side projects don’t have logs.
What we built
Auralogs is the version of this I wanted for my own side projects.
You drop in our SDK with two lines of code. You get the structured logs, the environments, the timeseries dashboard, the search, and the alerts. Optionally, you connect your repo on GitHub and we run an AI agent against your logs that can analyze incidents, find the root cause, and open a fix PR while you’re asleep.
The free tier covers 10,000 logs a month, which is enough for most side projects. There’s no credit card to start. Bring your own Anthropic or OpenAI key if you want the AI parts, so you only pay the model provider for what you use.
If you’ve been putting off observability because the math didn’t work, the math just changed.