package config type AppConfig struct { Name string `yaml:"name"` } type LogConfig struct { Debug bool `yaml:"debug"` MaxSize int `yaml:"maxSize"` MaxBackups int `yaml:"maxBackups"` MaxAge int `yaml:"maxAge"` Level string `yaml:"level"` } type MonitorConfig struct { Prometheus *struct { Address string `yaml:"address"` Port int `yaml:"port"` } `yaml:"prometheus"` } type DBConfig struct { Etcd *struct { Address []string `yaml:"address"` } `yaml:"etcd"` } type ServeConfig struct { Grpc *struct { Address string `yaml:"address"` Port int `yaml:"port"` TTL int64 `yaml:"ttl"` } `yaml:"grpc"` Socket *struct { Web *AddressConfig `yaml:"web"` Raw *AddressConfig `yaml:"raw"` } `yaml:"socket"` Http *AddressConfig `yaml:"http"` } type AddressConfig struct { Address string `yaml:"address"` Port int `yaml:"port"` }