Traceway
★ 1.7kA self-hosted alternative to Hotjar
MIT LicenseOpen Source — No Paywall3 Containers — 3 containers — light hosting footprintDocker · SourceNeeds Postgres9+ active committers (12mo)
About
Traceway is an observability platform built around OpenTelemetry for teams that want to capture and analyze application telemetry without stitching together multiple tools. It brings together logs,...
Community Ratings
No ratings yetNew this week
Read recap →Weekly Recap — Oct 9, 2026 – Oct 16, 2026Oct 16, 2026
Features
- logs
- traces
- metrics
- session replay
- RUM
- exceptions
- AI tracing
- on-call paging
- fleet overview
- background-task monitoring
Details
- Last Updated
- Oct 20, 2026
- Created
- Dec 18, 2025
- Install Methods
- dockersource
- Requirements
- OpenTelemetry SDK/OTLP exporterGo (for embedded mode)Docker Compose
- Authentication
- local
- API
- REST
- Backup & Export
- file-backup
- Privacy & Independence
- Cloud: Optional
- User Model
- Multi-UserMulti-Tenant
- Deployment
Deployment: Docker Compose ✓3 Containers — light hosting footprintRuns as 3 containers
Run Traceway with Docker Compose
Compose file from the Traceway project repository.
3 services · database: postgres · infra: postgres · 1 unclassified (clickhouse-server)
no resource limits declared
needs persistent storage (2 volumes)
docker-compose.yml · @ bf4112b · scanned Jun 6, 2026
services:
traceway:
build:
context: .
dockerfile: Dockerfile.minimal
ports:
- "80:80"
environment:
CLICKHOUSE_SERVER: "clickhouse:9000"
CLICKHOUSE_DATABASE: "traceway"
CLICKHOUSE_USERNAME: "default"
CLICKHOUSE_PASSWORD: "clickhouse"
CLICKHOUSE_TLS: "false"
POSTGRES_HOST: "postgres"
POSTGRES_PORT: "5432"
POSTGRES_DATABASE: "traceway"
POSTGRES_USERNAME: "traceway"
POSTGRES_PASSWORD: "traceway"
POSTGRES_SSLMODE: "disable"
JWT_SECRET: "change-this-to-a-secure-secret-at-least-32-chars"
# Optional. Days to keep on-disk session recordings under STORAGE_PATH/recordings/.
# Worker runs hourly and on startup; 0 disables; no effect when STORAGE_TYPE=s3.
# SESSION_RECORDING_RETENTION_DAYS: "30"
depends_on:
clickhouse:
condition: service_healthy
postgres:
condition: service_healthy
restart: unless-stopped
clickhouse:
image: clickhouse/clickhouse-server:24.8-alpine
environment:
CLICKHOUSE_DB: traceway
CLICKHOUSE_PASSWORD: clickhouse
volumes:
- clickhouse-data:/var/lib/clickhouse
healthcheck:
test: ["CMD", "clickhouse-client", "--password", "clickhouse", "--query", "SELECT 1"]
interval: 5s
timeout: 3s
start_period: 10s
retries: 10
restart: unless-stopped
postgres:
image: postgres:17
environment:
POSTGRES_USER: traceway
POSTGRES_PASSWORD: traceway
POSTGRES_DB: traceway
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U traceway"]
interval: 5s
timeout: 3s
start_period: 10s
retries: 10
restart: unless-stopped
volumes:
clickhouse-data:
postgres-data:
This file may be out of date. Check the Traceway documentation for current setup steps.
Track your self-hosted stack
Bookmark software to try, rate tools you've used, and keep your collection in one place.
Metadata extracted from README on Sep 3, 2026
