I built a CLI tool called LogLens to make querying structured logs (JSON, Logfmt, Nginx) as fast and ergonomic as grep, but with SQL-like capabilities.
To make it easier to try without installing anything, I compiled the core Rust engine to WebAssembly and built a playground.
The Problem: I often found myself needing to filter complex JSON logs over SSH. grep fails at structure ("find errors where latency > 500"), and jq syntax can be hard to type correctly under pressure.
The Solution: LogLens uses a natural query syntax. You can type things like: level is "error" and duration_ms > 500
Key features of the Playground:
100% Client-Side: Your logs are parsed in memory via WASM. No data is ever sent to a server.
Structured Parsing: Automatically detects JSON, Logfmt, and common web server formats.
Range Queries: Just added support for ranges like status between 200..299 or ts between "10m ago".."now".
Unstructured Search: You can treat logs as raw text too: text contains "timeout".
The core engine is open source (MIT) and written in Rust.Playground: https://getloglens.com/playground Repo: https://github.com/Caelrith/loglens-core
I’d love to hear your feedback on the query syntax and performance!