oteldb

package module
v0.0.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2023 License: Apache-2.0 Imports: 0 Imported by: 0

README

oteldb svg logo

oteldb codecov experimental

The OpenTelemetry-compatible telemetry aggregation, storage and processing.

Work in progress.

Storage

The oteldb is stateless and uses external storage systems for data persistence, processing and aggregation.

YTsaurus

The YTsaurus is a primary storage for telemetry data. An open source big data platform for distributed storage and processing.

  • Hierarchical multi-tenancy with secure resource isolation
  • OLAP and OLTP
  • MapReduce, ACID
  • ClickHouse protocol compatible
  • Exabyte scale, up to 1M CPU, 10K+ nodes
ClickHouse

The oteldb also supports ClickHouse storage.

Query

Supported query languages:

  • LogQL (loki) for logs
  • TraceQL (Tempo) for traces

Local development

Setups Grafana, oteldb, storage and trace generator.

YTSaurus storage
docker compose -f dev/local/ytsaurus/docker-compose.yml up -d
Clickhouse storage
docker compose -f dev/local/clickhouse/docker-compose.yml up -d

Documentation

Overview

Package oteldb is OpenTelemetry-compatible storage.

Directories

Path Synopsis
cmd
oteldb command
otelfaker command
otelproxy command
Command otelproxy is a Grafana datasource proxy.
Command otelproxy is a Grafana datasource proxy.
ytlocal command
Binary ytlocal runs local ytsaurus clusters.
Binary ytlocal runs local ytsaurus clusters.
integration
lokie2e
Package lokie2e provides scripts for E2E testing Loki API implementation.
Package lokie2e provides scripts for E2E testing Loki API implementation.
tempoe2e
Package tempoe2e provides scripts for E2E testing Tempo API implementation.
Package tempoe2e provides scripts for E2E testing Tempo API implementation.
Package internal contains go:generate annotations.
Package internal contains go:generate annotations.
autozpages
Package autozpages setups zPages handler.
Package autozpages setups zPages handler.
chstorage
Package chstorage provides Clickhouse-based storage.
Package chstorage provides Clickhouse-based storage.
faker
Package faker implement a fake telemetry generator.
Package faker implement a fake telemetry generator.
httpmiddleware
Package httpmiddleware contains HTTP middlewares.
Package httpmiddleware contains HTTP middlewares.
iterators
Package iterators define storage iterator interfaces and some utilities.
Package iterators define storage iterator interfaces and some utilities.
lexerql
Package lexerql provides utilities for lexing in *QL languages.
Package lexerql provides utilities for lexing in *QL languages.
logql
Package logql contains LogQL parser and AST definitions.
Package logql contains LogQL parser and AST definitions.
logql/lexer
Package lexer contains LogQL lexer.
Package lexer contains LogQL lexer.
logql/logqlengine
Package logqlengine implements LogQL evaluation engine.
Package logqlengine implements LogQL evaluation engine.
logql/logqlengine/jsonexpr
Package jsonexpr provides JSON extractor expression parser.
Package jsonexpr provides JSON extractor expression parser.
logql/logqlengine/logqlmetric
Package logqlmetric provides metric queries implementation.
Package logqlmetric provides metric queries implementation.
logstorage
Package logstorage defines storage structure for logs storage.
Package logstorage defines storage structure for logs storage.
lokiapi
Code generated by ogen, DO NOT EDIT.
Code generated by ogen, DO NOT EDIT.
lokihandler
Package lokihandler provides Loki API implementation.
Package lokihandler provides Loki API implementation.
lokiproxy
Package lokiproxy provides Loki proxy for observability and research.
Package lokiproxy provides Loki proxy for observability and research.
otelreceiver
Package otelreceiver provides simple wrapper to setup trace receiver.
Package otelreceiver provides simple wrapper to setup trace receiver.
otelstorage
Package otelstorage contains common types and utilities for storing OpenTelemetry data.
Package otelstorage contains common types and utilities for storing OpenTelemetry data.
promapi
Package promapi contains generated code for OpenAPI specification.
Package promapi contains generated code for OpenAPI specification.
promproxy
Package promproxy provides Prometheus proxy for observability and research.
Package promproxy provides Prometheus proxy for observability and research.
pyroproxy
Package pyroproxy provides Pyroscope proxy for observability and research.
Package pyroproxy provides Pyroscope proxy for observability and research.
tempoapi
Code generated by ogen, DO NOT EDIT.
Code generated by ogen, DO NOT EDIT.
tempohandler
Package tempohandler provides Tempo API implementation.
Package tempohandler provides Tempo API implementation.
tempoproxy
Package tempoproxy provides Tempo proxy for observability and research.
Package tempoproxy provides Tempo proxy for observability and research.
traceql
Package traceql contains TraceQL parser and AST definitions.
Package traceql contains TraceQL parser and AST definitions.
traceql/lexer
Package lexer contains TraceQL lexer.
Package lexer contains TraceQL lexer.
traceql/traceqlengine
Package traceqlengine implements TraceQL evaluation engine.
Package traceqlengine implements TraceQL evaluation engine.
tracestorage
Package tracestorage defines storage structure for trace storage.
Package tracestorage defines storage structure for trace storage.
yqlclient
Package yqlclient provides YTSaurus YQL client.
Package yqlclient provides YTSaurus YQL client.
ytlocal
Package ytlocal provides a way to run ytsaurus locally.
Package ytlocal provides a way to run ytsaurus locally.
ytstorage
Package ytstorage provides YTSaurus-based storage.
Package ytstorage provides YTSaurus-based storage.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL