Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type SlidingWindowCounter ¶
type SlidingWindowCounter struct { Interval time.Duration SlotGranularity time.Duration // contains filtered or unexported fields }
SlidingWindowCounter is used to count the number of events happened in the last X duration (in terms of a sliding window). Interval defines how big the time window is and SlotGranularity defines how fine grained the counter is.
func NewSlidingWindowCounter ¶
func NewSlidingWindowCounter(i time.Duration, sg time.Duration) *SlidingWindowCounter
NewSlidingWindowCounter creates an instance of SlidingWindowCounter
func NewSlidingWindowCounterWithSecondSlot ¶
func NewSlidingWindowCounterWithSecondSlot(i time.Duration) *SlidingWindowCounter
NewSlidingWindowCounterWithSecondSlot creates an instance of SlidingWindowCounter with the second level slot
func (*SlidingWindowCounter) Count ¶
func (c *SlidingWindowCounter) Count() uint64
Count reads the current gauge. It's a blocking operation.
func (*SlidingWindowCounter) Increment ¶
func (c *SlidingWindowCounter) Increment()
Increment increase the counter by 1. It's a blocking operation.
Click to show internal directories.
Click to hide internal directories.