quickwit
Cloud-native OSS search engine for observability
Quickwit is an open-source search engine for logs and traces that stores its index on cheap cloud object storage like S3 instead of expensive attached disks, returning results in under a second.
Quickwit is a search engine built for teams that need to search through large volumes of logs, traces, and similar operational data. Unlike traditional search tools that store their index on fast local disks, Quickwit stores everything on cloud object storage such as Amazon S3, Azure Blob Storage, or Google Cloud Storage, and still returns results in under a second. It positions itself as an open-source alternative to paid observability tools like Datadog, Elasticsearch, Loki, and Tempo.
The core design keeps compute and storage separate. The programs that index incoming data and those that handle searches run independently and can scale without touching the stored data. This means you pay for storage at cloud-storage rates rather than for disk-attached servers, and the project claims costs can run up to ten times lower than Elasticsearch.
Quickwit supports full-text search and aggregations, and it exposes a large portion of the Elasticsearch query API. Existing log shippers and clients that already talk to Elasticsearch, such as Vector or Fluent Bit, can often connect to Quickwit with minimal changes. It also connects natively to Kafka, Kinesis, and Pulsar for streaming data ingestion, supports Grafana for dashboards, and works with Jaeger for distributed tracing queries.
The two main use cases covered in the documentation are log management and distributed tracing. Metrics support is listed as coming in a future release. Teams running on Kubernetes will find a Helm chart provided, and there are delete tasks and retention policies available for data management and compliance needs.
The code is written in Rust and released under the Apache 2.0 license. Anyone can contribute via GitHub, and the project maintains a Discord community for questions and discussion.
Where it fits
- Replace Elasticsearch or Datadog for log search at a fraction of the storage cost using S3.
- Ingest streaming logs from Kafka or Kinesis and search them in near real time.
- Set up distributed tracing search with Jaeger connected to Quickwit as the backend.
- Deploy Quickwit on Kubernetes using the provided Helm chart and connect Grafana dashboards.