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)
|
cfg.Hosts = append(cfg.Hosts, hostsCfg)
|
||||||
delete(mh, "hosts")
|
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
|
return cfg, nil
|
||||||
|
@ -62,6 +62,7 @@ func buildService(cfg *config.Config) (services []service.Service) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, recorderCfg := range cfg.Recorders {
|
for _, recorderCfg := range cfg.Recorders {
|
||||||
if h := parsing.ParseRecorder(recorderCfg); h != nil {
|
if h := parsing.ParseRecorder(recorderCfg); h != nil {
|
||||||
if err := registry.RecorderRegistry().Register(recorderCfg.Name, h); err != 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 {
|
for _, chainCfg := range cfg.Chains {
|
||||||
c, err := parsing.ParseChain(chainCfg)
|
c, err := parsing.ParseChain(chainCfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
Loading…
Reference in New Issue
Block a user