23 lines
713 B
Go
23 lines
713 B
Go
package config
|
|
|
|
import (
|
|
"github.com/spf13/viper"
|
|
"time"
|
|
)
|
|
|
|
type IngesterRateLimitConfig struct {
|
|
RateLimiterConfig map[string]string
|
|
RateLimiterConfigGlobalPeriod time.Duration
|
|
RateLimiterConfigGlobalLimit int64
|
|
RateLimiterCleanUpInterval time.Duration
|
|
}
|
|
|
|
func NewIngesterRateLimitConfig() *IngesterRateLimitConfig {
|
|
return &IngesterRateLimitConfig{
|
|
RateLimiterConfig: viper.GetStringMapString("rate.limit.config"),
|
|
RateLimiterConfigGlobalPeriod: viper.GetDuration("rate.limit.global.config.period"),
|
|
RateLimiterConfigGlobalLimit: viper.GetInt64("rate.limit.global.config.limit"),
|
|
RateLimiterCleanUpInterval: viper.GetDuration("rate.limit.clean.up.interval"),
|
|
}
|
|
}
|