Search Logs and Traces Without Learning a New Query Language
Intro
If you've ever had to dig through logs or traces in ClickHouse, you know the pain. The raw query language is powerful, but it's not exactly friendly when you're trying to quickly find an error or correlate events. You end up writing long SQL, debugging syntax, and losing context.
HyperDX is an open source tool that tries to fix that. It lets you search logs and traces across ClickHouse using plain text or simple filters, without needing to learn a complex query language. That means less context switching, faster debugging, and less time staring at error messages about missing commas.
What It Does
HyperDX is a self-hosted observability platform that ingests logs, traces, and metrics into ClickHouse. It gives you a clean UI to search and explore that data, with built-in support for common patterns like:
- Searching logs by text or regex
- Filtering by service, span ID, or custom attributes
- Viewing traces as flame graphs or spans
- Combining logs and traces in a single view
The key idea is that you don't need to know how to query ClickHouse directly. HyperDX translates your natural language search and filters into the right queries behind the scenes. So you can type something like error status:500 duration>1s and it just works.
Why It's Cool
A few things stand out:
No query language to learn. Most observability tools make you write PromQL, LogQL, or raw SQL. HyperDX uses a simple key:value filter syntax that feels like searching in Google or your logs viewer. Want to find all errors from the auth service? Just type service:auth error. It's refreshingly straightforward.
Traces and logs in one place. Many tools separate logs from traces, forcing you to switch between views. HyperDX shows both in the same interface, with links between them. You can click a trace span and see the related logs, or search logs and jump to the trace. This makes debugging hard problems faster.
Self-hosted and open source. You own your data. No vendor lock in, no data egress fees, no limits on retention. If you're already running ClickHouse (maybe for analytics or other workloads), HyperDX can reuse your existing cluster.
ClickHouse is fast. Under the hood, it uses ClickHouse's columnar storage and vectorized query execution. Searches that might take seconds in Elasticsearch or Loki are often sub-second in HyperDX. That matters when you're trying to trace a production issue.
How to Try It
You can spin up HyperDX locally in a few minutes using Docker. The repo has a docker-compose.yml file that includes everything you need: ClickHouse, the backend, and the frontend.
git clone https://github.com/hyperdxio/hyperdx.git
cd hyperdx
docker compose up
Once it's running, open http://localhost:8080 and configure a source to send logs or traces. There are integrations for OpenTelemetry, Fluentd, Logstash, and direct HTTP ingestion.
If you want to see it in action without installing anything, the HyperDX website has a live demo with sample data. You can play around with searching, filtering, and exploring traces.
Final Thoughts
HyperDX is one of those tools that solves a real pain point without adding unnecessary complexity. It doesn't try to be everything to everyone. Instead, it focuses on making ClickHouse accessible for debugging, and that's a win.
If you're already using ClickHouse for observability, or you're tired of writing complex queries in your existing tool, give it a shot. It's free, it's open source, and it might save you a headache next time you're chasing a bug at 2 AM.
Follow @githubprojects for more open source tools and projects like this.