whatisgithub

What is obsingest?

el10savio/obsingest — explained in plain English

Analysis updated 2026-05-18

0GoAudience · ops devopsComplexity · 5/5Setup · hard

In one sentence

A demo pipeline that generates, queues, and stores logs, metrics, and traces at scale using OpenTelemetry, Kafka, Go, and ClickHouse.

Mindmap

mindmap
  root((repo))
    What it does
      Ingests telemetry data
      Buffers with Kafka
      Stores in ClickHouse
    Tech stack
      Go
      Kafka
      ClickHouse
      OpenTelemetry
    Use cases
      Learn observability pipelines
      Benchmark ingestion at scale
      Explore telemetry dashboards
    Audience
      Developers
      Ops engineers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Study how a real-time observability pipeline is built end to end.

USE CASE 2

Benchmark how a system handles a high volume of logs, metrics, and traces.

USE CASE 3

Explore pre-built Grafana and Superset dashboards for telemetry data.

USE CASE 4

Reference a Kafka-to-ClickHouse ingestion pattern for a monitoring project.

What is it built with?

GoKafkaClickHouseOpenTelemetryGrafana

How does it compare?

el10savio/obsingest42wim/fabio42wim/go-xmpp
Stars0
LanguageGoGoGo
Last pushed2018-02-042020-01-24
MaintenanceDormantDormant
Setup difficultyhardmoderatemoderate
Complexity5/53/53/5
Audienceops devopsops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires Docker with about 4GB RAM, or 8GB if also running the Superset analysis tool.

No license information is stated in the README.

So what is it?

obsIngest is a demonstration of a full pipeline for collecting and storing observability data, meaning the logs, metrics, and traces that show what is happening inside a running software system, at a large scale and in close to real time. It is built to show how professional teams handle a heavy, constantly changing stream of monitoring data rather than being a small single purpose script. The pipeline starts with a load generator that creates fake logs, metrics, and traces so the system has real looking data to process, formatted using an open standard called OpenTelemetry. That data first passes through a collector, then into Kafka, a message queue system that absorbs sudden bursts of data and prevents anything from being lost even if part of the system temporarily fails, since it keeps three copies of everything across three servers. From there, programs written in Go read the queued data, group it together, and insert it in batches into ClickHouse, a database built specifically to handle huge volumes of highly varied monitoring data efficiently. If a batch fails to insert, it is set aside in a separate queue instead of being dropped or crashing the whole pipeline. Once the data is stored, two tools help make sense of it. Grafana shows dashboards about the health of the pipeline itself, such as delays and error rates, while Superset lets you explore and analyze the actual ingested events in more depth. The README also describes an optional extension where the same data is duplicated into a second storage system built on Apache Iceberg and Amazon S3, aimed at longer term, cheaper storage for later analysis. Running the whole thing requires Docker and Docker Compose, with the author recommending around 4 gigabytes of memory, or 8 if you also run the analysis tool. A handful of simple commands bring up the entire stack, seed it with realistic fake traffic across several pretend services, and open the dashboards in a browser. This project is aimed at engineers who want to see a complete, realistic observability pipeline in action, and it does not state a license in the README.

Copy-paste prompts

Prompt 1
Walk me through running obsIngest locally with Docker Compose.
Prompt 2
Explain how obsIngest uses Kafka to avoid losing data during traffic spikes.
Prompt 3
Show me how the Go ingesters batch data into ClickHouse and handle failed inserts.
Prompt 4
Help me understand the optional Flink to Iceberg to S3 lakehouse extension.

Frequently asked questions

What is obsingest?

A demo pipeline that generates, queues, and stores logs, metrics, and traces at scale using OpenTelemetry, Kafka, Go, and ClickHouse.

What language is obsingest written in?

Mainly Go. The stack also includes Go, Kafka, ClickHouse.

What license does obsingest use?

No license information is stated in the README.

How hard is obsingest to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is obsingest for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.