5 minutes
Quick Start
Five minutes to your first query.
Prerequisites
- docker
Docker + Docker Compose 2.x
- helm
Kubernetes 1.27+ and Helm 3.x with read/write S3 credentials
- binary
Linux x86_64 + writable workdir + 4 GB RAM
Install
terminal · standalone sandbox
# Postgres + MinIO + molesignal standalone, 1 command
docker compose -f deploy/docker/docker-compose.yaml --profile standalone up
# UI: http://localhost:5080
# S3 admin: http://localhost:9001 (minioadmin / minioadmin)Send your first data
An OTLP HTTP POST. Any OpenTelemetry SDK, Vector, or Fluent Bit will produce the same shape.
terminal · OTLP ingest
curl -X POST http://localhost:5080/api/v1/ingest/logs/app \
-H 'content-type: application/json' \
-H 'authorization: Bearer <jwt>' \
-d '[{"_timestamp":1700000000000000,"level":"error","msg":"db pool exhausted","trace_id":"abc123"}]'Run your first query
SQL against the stream. PromQL and VRL also work — same engine, same Parquet.
terminal · SQL query
curl -X POST http://localhost:5080/api/v1/query \
-H 'authorization: Bearer <jwt>' \
-H 'content-type: application/json' \
-d '{"org_id":"<from-login>","language":"sql",
"statement":"SELECT * FROM app WHERE trace_id = '\''abc123'\''",
"time_range":{"start":0,"end":2000000000000000},
"stream":{"name":"app","stream_type":"logs"}}'Troubleshooting
Port 5080 is already in use
Set MOLE_HTTP_PORT in your env or change the host port mapping in docker-compose.yaml.I get 'no such org' on the first query
The standalone profile creates a default org on first login. Visit http://localhost:5080 first and complete the bootstrap.MinIO admin says I can't write to the bucket
Default creds are minioadmin/minioadmin. Check the bucket was created — molesignal creates it on first ingest, so send a single OTLP request first.Cargo build fails when running from source
Rust 1.74+ required. Use rustup update stable. If you're on Apple Silicon, install Xcode CLT first.Real-time alerts don't fire
kind: realtime requires an alert source on a write path stream. Check the alert is bound to the same stream you're writing to.