How to Install the Extension
Install the DuckDB OpenTelemetry Extension to start querying OpenTelemetry data with SQL.
Install from Community
Section titled “Install from Community”Install from DuckDB’s community extension repository:
-- Install from DuckDB community extensionsINSTALL otlp FROM community;LOAD otlp;DuckDB downloads the pre-built extension for your platform.
Requirements
Section titled “Requirements”- DuckDB 0.10.0 or later
- Supported platforms:
- Linux (x86_64, arm64)
- macOS (Intel, Apple Silicon)
- Windows (x86_64)
Use in Browser (DuckDB-WASM)
Section titled “Use in Browser (DuckDB-WASM)”Try the extension in your browser without installation:
The WASM demo supports:
- JSON, JSONL, and protobuf file reads
- Loading sample OTLP data
- Running SQL queries in-browser
- Uploading your own files
Native builds include the live ingest server.
Build from Source
Section titled “Build from Source”For development or custom builds, see CONTRIBUTING.md.
Quick Build
Section titled “Quick Build”# Clone repositorygit clone https://github.com/smithclay/duckdb-otlp.gitcd duckdb-otlp
# Install vcpkg dependenciesexport VCPKG_TOOLCHAIN_PATH=`pwd`/vcpkg/scripts/buildsystems/vcpkg.cmake
# Build with ninjaGEN=ninja make
# DuckDB shell with extension loaded./build/release/duckdbWASM Build
Section titled “WASM Build”# Build for browsermake wasm_eh
Note: The live ingest server is not available in WASM builds.
Verify Installation
Section titled “Verify Installation”Check that DuckDB loaded the extension:
-- List installed extensionsSELECT * FROM duckdb_extensions() WHERE extension_name = 'otlp';
-- Test with sample dataSELECT count(*) FROM read_otlp_logs('test/data/logs_simple.jsonl');Next Steps
Section titled “Next Steps”- Get Started - install, load, and run first queries.
- OpenTelemetry Collector - export OTLP files from the collector.
- OpenTelemetry Demo - stream demo traces, logs, and metrics into local DuckLake.
- How-to Guides - query and export telemetry.
Troubleshooting
Section titled “Troubleshooting”Extension Not Found
Section titled “Extension Not Found”Error: Extension "otlp" not foundEnsure you’re using DuckDB 0.10+ and run:
INSTALL otlp FROM community;LOAD otlp;Platform Not Supported
Section titled “Platform Not Supported”If pre-built binaries aren’t available for your platform, build from source.
Live Ingest in WASM
Section titled “Live Ingest in WASM”Error: otlp_serve is not implemented for the wasm platformUse a native DuckDB build for the HTTP ingest functions: otlp_serve, otlp_flush, otlp_stop, and otlp_server_list.
See Also
Section titled “See Also”- How to Configure the OpenTelemetry Collector - export OTLP files
- CONTRIBUTING.md - build instructions
- Get Started - first queries and one HTTP ingest request