1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- package config
- import (
- "log"
- "github.com/rotisserie/eris"
- "github.com/spf13/viper"
- "sikey.com/websocket/utils/configx"
- "sikey.com/websocket/utils/zlog"
- )
- var (
- Config configx.Config
- Kafka kafka
- Redis redis
- )
- func loadRestfulConfig() error {
- return viper.Unmarshal(&Config)
- }
- func loadKafkaConfig() error {
- return viper.UnmarshalKey("kafka", &Kafka)
- }
- func loadRedisConfig() error {
- return viper.UnmarshalKey("redis", &Redis)
- }
- // MustLoadConfig 加载配置
- func MustLoadConfig(file string) {
- err := configx.LoadConfig(file,
- loadRestfulConfig,
- loadKafkaConfig,
- loadRedisConfig,
- )
- if err != nil {
- log.Fatalln(eris.Wrap(err, "无法映射配置"))
- }
- log.Printf("Load configs [ toml ] from path [%s] \n", file)
- }
- // MustLoadLogger 初始化日志
- func MustLoadLogger() zlog.Writer {
- var (
- name = Config.Name
- env = Config.Environment
- path = viper.GetString("log.path")
- )
- writer, err := zlog.NewZeroWriter(name, path, env)
- if err != nil {
- panic(err)
- }
- return writer
- }
|