Hi HN! I built Timberlogs because I was tired of console.log in production and existing logging solutions requiring too much setup.
Timberlogs is a drop-in structured logging library for TypeScript:
npm install timberlogs-client
import { createTimberlogs } from "timberlogs-client";
const timber = createTimberlogs({
source: "my-app",
environment: "production",
apiKey: process.env.TIMBER_API_KEY,
});
timber.info("User signed in", { userId: "123" });
timber.error("Payment failed", error);
Features:
- Auto-batching with retries
- Automatic redaction of sensitive data (passwords, tokens)
- Full-text search across all your logs
- Real-time dashboard
- Flow tracking to link related logs
It's currently in beta and free to use. Would love feedback from the HN community.
Site: https://timberlogs.dev
Docs: https://docs.timberlogs.dev
npm: https://npmjs.com/package/timberlogs-client
GitHub: https://github.com/enaboapps/timberlogs-typescript-sdk
Not only that, libs like pino don't even support spanning, something that's pretty important for how I use logging. Winston has been my favorite so far.
Anyway, this is just a SaaS that claims they offer a "drop-in" library, which it does not. The repo is also Claude-generated, so I'm out.
Website is also very broken, and the docs require a log-in.