parsing limiter config
This commit is contained in:
parent
180214a124
commit
a7f4d3e63e
@ -273,6 +273,22 @@ func buildConfigFromCmd(services, nodes stringList) (*config.Config, error) {
|
||||
cfg.Hosts = append(cfg.Hosts, hostsCfg)
|
||||
delete(mh, "hosts")
|
||||
}
|
||||
|
||||
input := metadata.GetString(md, "limiter.input")
|
||||
output := metadata.GetString(md, "limiter.output")
|
||||
if input != "" || output != "" {
|
||||
limiter := &config.LimiterConfig{
|
||||
Name: fmt.Sprintf("limiter-%d", len(cfg.Limiters)),
|
||||
RateLimit: &config.RateLimitConfig{
|
||||
Input: input,
|
||||
Output: output,
|
||||
},
|
||||
}
|
||||
service.Limiter = limiter.Name
|
||||
cfg.Limiters = append(cfg.Limiters, limiter)
|
||||
delete(mh, "limiter.input")
|
||||
delete(mh, "limiter.output")
|
||||
}
|
||||
}
|
||||
|
||||
return cfg, nil
|
||||
|
@ -62,6 +62,7 @@ func buildService(cfg *config.Config) (services []service.Service) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for _, recorderCfg := range cfg.Recorders {
|
||||
if h := parsing.ParseRecorder(recorderCfg); h != nil {
|
||||
if err := registry.RecorderRegistry().Register(recorderCfg.Name, h); err != nil {
|
||||
@ -70,6 +71,14 @@ func buildService(cfg *config.Config) (services []service.Service) {
|
||||
}
|
||||
}
|
||||
|
||||
for _, rlimiterCfg := range cfg.Limiters {
|
||||
if h := parsing.ParseRateLimiter(rlimiterCfg); h != nil {
|
||||
if err := registry.RateLimiterRegistry().Register(rlimiterCfg.Name, h); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for _, chainCfg := range cfg.Chains {
|
||||
c, err := parsing.ParseChain(chainCfg)
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user