influxdata / influxdata/kapacitor
[Feature Request] Buffer size statistics for buffering nodes
- Dominant language
- Go
- Stars
- 2.4k
- Forks
- 479
- Avg merge
- 4d 16h
- Merged PRs (30d)
- 4
Description
It seems that issues related to excessive buffering (such as #1800) can happen fairly easily and may not be easy to pinpoint, especially in cases where there are many Kapacitor scripts running.
I believe that having better visibility to the individual data buffers would help out a lot in troubleshooting these issues. Adding `buffer_size` gauges into the statistics emitted by buffering nodes would probably be the most sensible way to accomplish this.
The `buffer_size` could simply indicate the number of elements in the buffer(s) associated with a node. This would already provide an indication if a node is buffering things in a problematic way and be cheaper that getting the exact byte count.
Contributor guide
Research direction
Start by locating the buffering node implementations and the code that emits node statistics. Review how each node tracks its buffers, then add buffer_size gauges representing the number of buffered elements and verify the statistics output for buffering nodes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- observability
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100