Support time based lag monitoring
Nobody has claimed this yet.
- 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
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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