Trust starts with knowing what's under the hood. Here's the stack that runs your logs, the choices we made, and where we're going. We'd rather over-share than oversell.
Boring, well-understood components. No magic.
Ingest
GCP · Amsterdam (NL)
OTLP HTTP plus a generic JSON endpoint. Bearer-auth with bcrypt-hashed API keys. Rate-limited per key.
Queue
GCP · Amsterdam (NL)
Batches 100–1000 records before each insert. Retries on transient ClickHouse failures.
Log storage
GCP · Amsterdam (NL)
Columnar, partitioned by tenant_id and date. Order key (tenant_id, namespace, timestamp, log_id) makes tenant-scoped queries hit the right partitions first. Typical 8–12× compression on text logs.
Metadata
GCP · Amsterdam (NL)
Users, organisations, API keys, dashboards, alerts, pipelines. No log content stored here.
Frontend
Cloudflare Pages
TanStack Query for server state, Zustand for UI state, Tailwind + shadcn/ui. Strict TypeScript everywhere.
AI
US-based subprocessor
Powers natural-language → LPQL translation and the AI Investigator. Listed in our subprocessors. Logs only flow to the LLM when you trigger an AI query.
From your apps to ClickHouse and back to you.
Your apps ──OTLP HTTP──▶ Fastify ingest ──▶ BullMQ (Redis)
│ │
auth + quota batch
│ ▼
│ ClickHouse (GCP · Amsterdam)
│ │
▼ │
PostgreSQL │
(metadata) │
▼
Web UI ◀── LPQL / AI ── Fastify query ──▶ ClickHouse (tenant-scoped)Push-based ingest: agents and SDKs send logs over OTLP HTTP. The API authenticates and enqueues; a worker batches and writes to ClickHouse. Queries flow the other direction: the UI hits the API, the API runs LPQL on ClickHouse with tenant scoping enforced at the boundary.
Separation enforced in the database, not just the app.
Flat pricing means you don't pay extra when you log more than you predicted.
Every query the AI runs is shown. You can verify, edit, and save it.
We'd rather be honest about what's built and what's still in progress.
DPA + SCCs available on paid plans. EU-only data path. Encryption at rest and in transit.
Trust Services Criteria controls in place. Audit underway.
Aligned controls; not yet certified.
Status page with historical uptime per service.
Reproducible ingest-throughput and query-latency posts.
We'd rather over-share than oversell. Mail [email protected] with questions about the stack, isolation, or anything we haven't covered here.
We use cookies to analyze site traffic and improve your experience. No cookies are placed without your consent. Privacy Policy