Platform Control Plane
logger
Structured logging with pino + Sentry transport. One log object per request, breadcrumbs forwarded, PII-stripper plugged into the standard sink.
Sentry connected
logs.stream
[INFO]user.signupuserId=usr_8c41 tenantId=org_abc
[WARN]cache.misskey=user:abc 3ms
[ERROR]payment.failedorderId=ord_5a18 code=card_declined
[DEBUG]tenant.resolvetenantId=org_xyz 1ms
trace-id propagated · 4 sinks
In code
logger.ts
1import { logger } from "@nebutra/logger";
2
3logger.info("user.signup", {
4 userId: user.id,
5 tenantId: org.id,
6 source: "marketing-site",
7});
8
9const requestLogger = logger.child({ requestId, traceId });
10requestLogger.error("payment.failed", { orderId, code });More in nebutra.com
- alertingAlert rules + delivery on top of @nebutra/metering. Threshold/anomaly detection, route to PagerDuty, Discord, or in-product banners.
- analyticsFirst-party product analytics on ClickHouse — event ingest, funnel queries, no third-party loader on the marketing site.
- browser-utilsSmall browser helpers every app needs: storage that survives private mode and blocked site data, and fetch with a timeout.
- capability-kitComposable capability primitives — pricing tier ↔ feature flag ↔ quota ↔ UI gating wired into one declarative manifest.
- configTyped environment + runtime config — Zod schemas at boot, no scattered process.env reads, fail-fast on missing keys.
- dbTyped Prisma client wrapper — extension-aware, RLS-friendly, with per-tenant connection pinning when the deployment splits writes from reads.