[](https://github.com/metrico/qryn/actions/workflows/build_release.yml)


#
[qryn: polyglot observability](https://qryn.dev)
: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
## 🚀 [Get Started](https://qryn.metrico.in/#/installation)
* Setup & Deploy **qryn** _OSS_ using the [documentation](https://qryn.metrico.in/#/installation) and get help in our [Matrix room](https://matrix.to/#/#qryn:matrix.org) :octocat:
* Looking for a minimal setup for a quick test? Start with [qryn-minimal](https://github.com/metrico/qryn-minimal)
## Features
💡 _**qryn** independently implements popular observability standards, protocols and query languages_
### :eye: Built-In Explorer
**qryn** ships with **view** - our zero dependency, lightweight data explorer for **Logs, Metrics** and **Traces**
## ➡️ Ingest
### 📚 OpenTelemetry
⚡ **qryn** is officially integrated with [opentelemetry](https://github.com/metrico/otel-collector) supports _any log, trace or metric format_
Ingested data can be queried using any of the avialable qryn APIs _(LogQL, PromQL, TraceQL)_
> 💡 _No modifications required to your opentelemetry instrumentation!_
### 📚 Native
**qryn** supports [native ingestion](https://qryn.metrico.in/#/support) for Loki, Prometheus, Tempo/Zipkin and _[many other protocols](https://qryn.metrico.in/#/support)_
With qryn users can _push data using any combination of supported APIs and formats_
> 💡 _No opentelemetry or any other middleware/proxy required!_
## ⬅️ Query
### 📚 Loki + LogQL
> Any Loki compatible client or application can be used with qryn out of the box
⚡ **qryn** implements the [Loki API](https://github.com/lmangani/qryn/wiki/LogQL-Supported-Queries) for transparent compatibility with **[LogQL](https://grafana.com/docs/loki/latest/query/)** 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_
### 📈 Prometheus + PromQL
> Any Prometheus compatible client or application can be used with qryn out of the box
⚡ **qryn** implements the [Prometheus API](https://prometheus.io/docs/prometheus/latest/querying/api/) for transparent **[PromQL](https://prometheus.io/docs/prometheus/latest/querying/basics/)** 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_
### 🕛 Tempo + TraceQL
⚡ **qryn** implements the [Tempo API](https://github.com/lmangani/qryn/wiki/LogQL-Supported-Queries) for transparent compatibility with **[TraceQL](https://grafana.com/docs/tempo/latest/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_
### 🔥 Pyroscope + Phlare
⚡ **qryn** implements the [Pyroscope/Phlare API](https://qryn.metrico.in/#/profiling/ingestion) for transparent compatibility with **Pyroscope SDK** clients.
> Any Pyroscope SDK client or Pyroscope compatible agent can be used with qryn out of the box for **continuous profiling**
### 📚 Vendors Compatibility
**qryn** can ingest data using formats from [Grafana, InfluxDB, DataDog, Elastic](https://qryn.metrico.in/#/support) 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](https://blog.qryn.dev)
------------
#### Contributions
Whether it's code, documentation or grammar, we ❤️ all contributions. Not sure where to get started?
- Join our [Matrix Channel](https://matrix.to/#/#qryn:matrix.org), and ask us any questions.
- Have a PR or idea? Request a session / code walkthrough with our team for guidance.
#### Contributors
[](https://github.com/metrico/qryn/graphs/contributors)
[](https://github.com/metrico/qryn/stargazers)
[](https://github.com/metrico/qryn/network/members)
#### License
©️ QXIP BV, released under the GNU Affero General Public License v3.0. See [LICENSE](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.