Files
nbi_alarm/conf/global.go
2023-08-24 19:10:46 +08:00

78 lines
1.6 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package conf
import (
"encoding/json"
"errors"
"fmt"
"os"
"strings"
"github.com/aceld/zinx/zconf"
"github.com/aceld/zinx/zlog"
)
type Channel struct {
TCPPort int `json:"tcp_port"` //当前通道的TCP监听端口
BindFlag string `json:"bind_flag"` //当前通道bind 的网元信息
Province string `json:"province"` //网元所在省份
DeviceCode string `json:"device_code"` //主机编码 四位每1位可用0-9、A-Z编码
}
type Config struct {
// 网元通道
Channel []Channel `json:"channel"`
// 数据库连接
Mysql string `json:"mysql"`
//以下是zinx 的配置
Name string `json:"name"`
MaxConn int `json:"max_conn"`
WorkerPoolSize int `json:"worker_pool_size"`
HeartbeatMax int `json:"heartbeat_max"`
HbcheckInterval int `json:"hbcheck_interval"`
LogDir string `json:"log_dir"`
LogFile string `json:"log_file"`
// FTP文件服务
FTPRoot string `json:"ftp_root"`
}
var OmcConf Config
func Reload(path string) error {
confFileExists, _ := zconf.PathExists(path)
if !confFileExists {
zlog.Ins().ErrorF("Config File %s is not exist!!", path)
return errors.New("config file is not exist")
}
data, err := os.ReadFile(path)
if err != nil {
return err
}
err = json.Unmarshal(data, &OmcConf)
if err != nil {
return err
}
return nil
}
func Init(path string) {
if path == "" || strings.HasSuffix(path, "zinx.json") {
pwd, err := os.Getwd()
if err != nil {
pwd = "."
}
path = pwd + "/conf/nbi_alarm.json"
fmt.Println("path", path)
}
if err := Reload(path); err != nil {
zlog.Ins().ErrorF("Config File %s error, ", err)
panic(err)
}
}