linkedin / linkedin/Burrow

Support time based lag monitoring

Open
#452 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
4k
Forks
818
Avg merge
1h 14m
Merged PRs (30d)
1

Description

Hi! First wanted to say thanks for all the great work done here! Made our lives as operators worlds easier. Unfortunately, success has breed more requirements.

Our users are interested in understanding consumer lag not from the offset behind, but actually how much real time the consumer is behind. This could be formulated two ways:
* if the message entered the topic at T1, how long until the consumer processes that message
* if the current offset of a partition was T1, what is the delta to the most recent committed message by the consumer.

Understandably, this is something that is somewhat dependent on setting timestamps appropriately (or rather, allowing Kafka to set the timestamps).

Burrow already has a recent history of the partition from the broker (in fact, it has the offset and timestamp), so it should be able to figure out either case above. The former is probably more interesting, but the latter is easier to compute; you almost always know the most recent broker offset, but might not have an offset that covers the consumers' commit in the case of new consumers reading the beginning of the topic history.

Is this something you all would be interested in?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing Burrow’s existing partition history and consumer lag monitoring, then review how Kafka offsets and timestamps are represented. Define and test a time-based lag metric for the proposed cases before implementing it; the issue does not name files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
observability, stream-processing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.