44 lines
866 B
Go
44 lines
866 B
Go
package config
|
|
|
|
type Config struct {
|
|
App *AppConfig `yaml:"app"`
|
|
Log *LogConfig `yaml:"log"`
|
|
DB *DBConfig `yaml:"db"`
|
|
Serve *ServeConfig `yaml:"serve"`
|
|
}
|
|
|
|
type AppConfig struct {
|
|
Name string `yaml:"name"`
|
|
}
|
|
|
|
type LogConfig struct {
|
|
Debug bool `yaml:"debug"`
|
|
MaxSize int `yaml:"max_size"`
|
|
MaxBackups int `yaml:"max_backups"`
|
|
MaxAge int `yaml:"max_age"`
|
|
Level string `yaml:"level"`
|
|
}
|
|
|
|
type DBConfig struct {
|
|
Etcd *struct {
|
|
Address []string `yaml:"address"`
|
|
} `yaml:"etcd"`
|
|
}
|
|
|
|
type ServeConfig struct {
|
|
Grpc *struct {
|
|
AddressConfig
|
|
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"`
|
|
}
|