Trailscope documentation
Trailscope is open-source, self-hosted API request logging. Your services send every request they handle (method, route, status, timing, headers, bodies if you allow it, the error and its stack) to your own Trailscope server, where you can watch them live, filter them with a SQL WHERE expression, open any one of them, and follow one customer’s journey across services and background jobs.
Start here
Section titled “Start here”- Run it. One
docker compose up -dstarts Trailscope with ClickHouse and Postgres; the setup wizard creates your account, your first project and its ingest key. Self-hosting covers sizing, TLS, upgrades and backups, and configuration lists every setting. - Send requests. Add the SDK for your framework, or point an OpenTelemetry exporter at Trailscope (see “Send data” below).
- Use it. Watch the live tail, filter in Explore with the query language, and set up alerts and email on 5xx.
Before you put real traffic through it, read security: it explains what is collected, how redaction works and what to configure.
Send data
Section titled “Send data”| Your stack | Page |
|---|---|
| Express | Express |
| Fastify | Fastify |
| NestJS (with the Logger bridge and BullMQ) | NestJS |
| Any other Node.js code | Node.js core |
| Django, FastAPI, Starlette, Celery, Python logging | Python |
| Spring Boot, Jakarta Servlet apps, Logback | Java |
| Laravel (queues, log channel, Octane), plain PHP, Monolog | PHP and Laravel |
| Anything with OpenTelemetry, or raw HTTP | Ingest protocol and OTLP |
All SDKs behave the same way (batching, redaction, sampling, user and journey keys); SDK behaviour describes it.
Reference
Section titled “Reference”- Query language: filters, quick search and every column.
- Alerts and email notifications: rules, channels and Email on 5xx.
- HTTP API: everything the UI does, with API tokens and an OpenAPI document.
- Architecture: how ingest, storage, queries and alerts fit together.
- Benchmarks: ingest throughput, query latency and SDK overhead, with how they were measured.
- Decisions: why things are the way they are.