Polyglot Observability Stack with ClickHouse storage
npm install qryn
!CodeQL
!GitHub Repo stars
:rocket: _lighweight, multi-standard, polyglot observability stack for Logs, Metrics, Traces and Profiling_
> ... it's pronounced /ˈkwɪr..ɪŋ/ or just _querying_
* Polyglot: All-in-one, Drop-in compatible with Loki, Prometheus, Tempo, Pyroscope
* Lightweight: Powered by Bun - the fast, all-in-one JavaScript runtime + ClickHouse OLAP Engine
* Familiar: Use stable & popular LogQL, PromQL, TempoQL languages to _query and visualize data_
* Voracious: Ingest using Opentelemetry, Loki, Prometheus, Tempo, Influx, Datadog, Elastic _+ more_
* Versatile: Explore data with qryn's built-in Explorer and CLI or native Grafana datasource compatibility
* Secure: Retain total control of data, using ClickHouse, DuckDB or InfluxDB IOx with S3 object storage
* Indepentent: Opensource, Community powered, Anti lock-in alternative to Vendor controlled stacks
* Setup & Deploy qryn _OSS_ using the documentation and get help in our Matrix room :octocat:
* Looking for a minimal setup for a quick test? Start with qryn-minimal
💡 _qryn independently implements popular observability standards, protocols and query languages_
qryn ships with view - our zero dependency, lightweight data explorer for Logs, Metrics and Traces
> 💡 _No modifications required to your opentelemetry instrumentation!_
> 💡 _No opentelemetry or any other middlewayre/proxy required!_
> Any Loki compatible client or application can be used with qryn out of the box
⚡ qryn implements the Loki API for transparent compatibility with LogQL clients
The Grafana Loki datasource can be used to natively browse and query _logs_ and display extracted _timeseries_
> :tada: _No plugins needed_
> :eye: _No Grafana? No problem! Use View_
> Any Prometheus compatible client or application can be used with qryn out of the box
⚡ qryn implements the Prometheus API for transparent PromQL compatibility using WASM 🏆
The Grafana Prometheus datasource can be used to natively to query _metrics_ and display _timeseries_
> :tada: _No plugins needed_
> :eye: _No Grafana? No problem! Use View_
⚡ qryn implements the Tempo API for transparent compatibility with TraceQL clients.
> Any Tempo/Opentelemetry compatible client or application can be used with qryn out of the box
The Tempo datasource can be used to natively query _traces_ including _TraceQL_ and supporting _service graphs_
> :tada: _No plugins needed_
> :eye: _No Grafana? No problem! Use View_
> Any Pyroscope SDK client or Pyroscope compatible agent can be used with qryn out of the box for continuous profiling
qryn can ingest data using formats from Grafana, InfluxDB, DataDog, Elastic and other vendors.
With qryn and grafana everything _just works_ right out of the box:
- Native datasource support without any plugin or extension
- Advanced Correlation between Logs, Metrics and Traces
- Service Graphs and Service Status Panels, and all the cool features
------------
📚 Follow our team _behind the scenes_ on the qryn blog
------------
#### Contributions
Whether it's code, documentation or grammar, we ❤️ all contributions. Not sure where to get started?
- Join our Matrix Channel, and ask us any questions.
- Have a PR or idea? Request a session / code walkthrough with our team for guidance.
#### Contributors



#### License
![]()
©️ QXIP BV, released under the GNU Affero General Public License v3.0. See LICENSE for details.
[^1]: qryn is not affiliated or endorsed by Grafana Labs or ClickHouse Inc. All rights belong to their respective owners.
[^2]: qryn is a 100% clear-room api implementation and does not fork, use or derivate from Grafana Loki code or concepts.
[^3]: Grafana®, Loki™ and Tempo® are a Trademark of Raintank, Grafana Labs. ClickHouse® is a trademark of ClickHouse Inc. Prometheus is a trademark of The Linux Foundation.