MCPcopy
hub / github.com/grafana/tempo / NewRateLimitedLogger

Function NewRateLimitedLogger

pkg/util/log/rate_limited_logger.go:25–30  ·  view source on GitHub ↗

NewRateLimitedLogger returns a new RateLimitedLogger that logs at most logsPerSecond messages per second. TODO: migrate to the dskit rate limited logger

(logsPerSecond int, logger gkLog.Logger)

Source from the content-addressed store, hash-verified

23// NewRateLimitedLogger returns a new RateLimitedLogger that logs at most logsPerSecond messages per second.
24// TODO: migrate to the dskit rate limited logger
25func NewRateLimitedLogger(logsPerSecond int, logger gkLog.Logger) *RateLimitedLogger {
26 return &RateLimitedLogger{
27 limiter: rate.NewLimiter(rate.Limit(logsPerSecond), 1),
28 logger: logger,
29 }
30}
31
32func (l *RateLimitedLogger) Log(keyvals ...interface{}) {
33 if !l.limiter.AllowN(time.Now(), 1) {

Callers 3

NewFunction · 0.92
NewFunction · 0.92
TestRateLimitedLoggerFunction · 0.85

Calls 1

LimitMethod · 0.65

Tested by 1

TestRateLimitedLoggerFunction · 0.68