Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Otelite
Lightweight OpenTelemetry receiver and dashboard for local development
Otelite is a single-binary observability tool that receives OpenTelemetry data (logs, traces, metrics) and provides a web dashboard and terminal UI for viewing it. Designed for local LLM development with minimal resource usage (<100MB memory, <5% CPU), it starts in seconds and requires no external dependencies.
Personal project — developed and maintained on a best-efforts basis by @planetf1. Not an official or supported product. Contributions and feedback welcome via GitHub issues and pull requests.
Quick Start
That's it. otelite serve starts three services:
- OTLP gRPC receiver on
localhost:4317 - OTLP HTTP receiver on
localhost:4318 - Web dashboard and REST API on
http://localhost:3000
Open http://localhost:3000 in your browser to view telemetry.
Features
- Fast: Starts in <3s, <100MB memory, <5% CPU idle
- Full OTLP Support: Metrics, logs, and traces via gRPC (4317) and HTTP (4318)
- Embedded Storage: SQLite-based, no external database required
- Web Dashboard: View and filter telemetry data at
http://localhost:3000 - Terminal UI: Full-featured TUI with
otelite tui - CLI: Query and export data with
otelite logs,otelite traces,otelite metrics,otelite usage - Single Binary: Zero runtime dependencies
- GenAI/LLM support: First-class OTel GenAI semconv — token counts, cache hits, tool calls, model routing
Screenshots
Logs — search, filter by severity, and inspect structured attributes

Traces — waterfall view with span-level timing and GenAI attributes (token counts, cache hits, TTFT)

Metrics — time-series counters and histogram bucket distribution

Usage — GenAI/LLM token and request summary by model and provider

Setup — live endpoint display and copy-paste configuration snippets for every SDK

The web dashboard isn't the only interface — don't miss the Terminal UI (
otelite tui) and the CLI (otelite logs,otelite traces,otelite metrics). See the TUI guide and CLI reference for full documentation with examples.
Sending Data
Using otel-cli (easiest for testing)
# Install otel-cli
# Send a test trace
Python
=
=
# Your code here
pass
Rust
use WithExportConfig;
let tracer = new_pipeline
.tracing
.with_exporter
.install_batch?;
JavaScript/Node.js
const = require;
const = require;
const sdk = ;
sdk.;
Go
import (
"go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
"go.opentelemetry.io/otel/sdk/trace"
)
exporter, _ := otlptracegrpc.New(ctx,
otlptracegrpc.WithEndpoint("localhost:4317"),
otlptracegrpc.WithInsecure(),
)
tp := trace.NewTracerProvider(trace.WithBatcher(exporter))
CLI Usage
# Start the server (foreground)
# Start as background daemon
# Stop daemon
# Restart daemon (picks up recompiled binary)
# Check daemon status
# List recent logs
# Search logs
# List traces with duration filter
# Show trace details
# List metrics
# Token usage summary (GenAI/LLM)
# JSON output for scripting
|
See docs/cli-reference.md for the full reference with real example output.
Terminal UI
# Start TUI (connects to localhost:3000 by default)
# Connect to custom API URL
Keyboard shortcuts:
l/t/m— switch to Logs / Traces / Metrics viewTab/Shift+Tab— cycle between views↑/↓orj/k— navigate itemsPgDn/PgUp— page through list / scroll detail panelsEnter— open detail / span waterfall/— searchf— filter?— helpq— quit
See docs/tui-quickstart.md for the full guide with ASCII mockups of each view.
REST API
# List logs
# List traces
# Get trace with spans
# List metrics
# Token usage (GenAI/LLM)
# Health check
Development
Issues and feature requests are tracked on GitHub Issues.
# Clone and build
# Run directly from source
# Run tests
# Run quality gates
See CONTRIBUTING.md for development workflow and docs/testing.md for testing guide.
Architecture
┌─────────────────────────────────────────────┐
│ Web Dashboard (port 3000) │
│ + REST API (otelite-api) │
└─────────────────┬───────────────────────────┘
│
┌─────────────────▼───────────────────────────┐
│ SQLite Storage (otelite-storage) │
│ with FTS5 search │
└─────────────────▲───────────────────────────┘
│
┌─────────────────┴───────────────────────────┐
│ OTLP Receivers (otelite-receiver) │
│ gRPC (4317) + HTTP (4318) │
└─────────────────────────────────────────────┘
Crate structure:
otelite-core— Domain types (LogRecord, Span, Metric, Resource, GenAiSpanInfo)otelite-storage— SQLite backend with async traitotelite-receiver— OTLP gRPC and HTTP ingestotelite-api— REST API and web dashboardotelite-client— HTTP client for the REST APIotelite-tui— Terminal user interfaceotelite— CLI binary (serve,logs,traces,metrics,usage,tui)
See docs/architecture.md for detailed design.
Performance
| Metric | Target | Typical |
|---|---|---|
| Memory (idle) | <100MB | ~50MB |
| CPU (idle) | <5% | ~2% |
| Startup time | <3s | ~1.5s |
| Throughput | 1000 events/s | 2000+ events/s |
Project Status
Current version: 0.1.0 — early release, core features stable. REST API may evolve.
License
Apache License 2.0 — see LICENSE