bitdriftlabs / pulse

bitdrift observability proxy
Other
68 stars 2 forks source link

tcp inflow: add pre-buffering #13

Closed mattklein123 closed 2 weeks ago

mattklein123 commented 2 weeks ago

This commit adds the ability apply a pre-buffer duration where metrics will be buffered for up to some period of time, and then flushed through the rest of the pipeline. This is useful in cases where k8s informer lag may lead to no metadata being available for new pods that send metrics right away without any external synchronization. This is only useful for TCP as it keys off of new streams. Theoretically it could be made to work for UDP by keeping track of newly seen IPs but this is deferred for now. UDP IP tracking would also not help with on-host IP recycling cases whereas TCP streams account for that.

Fixes BIT-3985