fix: timzone issue
This commit is contained in:
@@ -77,9 +77,11 @@ type DatabaseClient struct {
|
|||||||
|
|
||||||
var DbClient DatabaseClient
|
var DbClient DatabaseClient
|
||||||
|
|
||||||
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) error {
|
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam string) error {
|
||||||
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
// DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
||||||
dbUser, dbPassword, dbHost, dbPort, dbName)
|
// dbUser, dbPassword, dbHost, dbPort, dbName)
|
||||||
|
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||||
|
dbUser, dbPassword, dbHost, dbPort, dbName, dbParam)
|
||||||
DbClient.dbType = dbType
|
DbClient.dbType = dbType
|
||||||
DbClient.dbConnMaxLifetime = 0
|
DbClient.dbConnMaxLifetime = 0
|
||||||
DbClient.dbMaxIdleConns = 0
|
DbClient.dbMaxIdleConns = 0
|
||||||
@@ -87,8 +89,7 @@ func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) err
|
|||||||
if log.GetLevel() == log.LOG_TRACE {
|
if log.GetLevel() == log.LOG_TRACE {
|
||||||
DbClient.IsShowSQL = true
|
DbClient.IsShowSQL = true
|
||||||
}
|
}
|
||||||
log.Debugf("dbType:%s dbUrl:%s:******@tcp(%s:%s)/%s??charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
log.Debugf("dbType:%s dbUrl:%s:", dbType, DbClient.dbUrl)
|
||||||
dbType, dbUser, dbHost, dbPort, dbName)
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
||||||
|
|||||||
@@ -151,9 +151,9 @@ type DatabaseClient struct {
|
|||||||
|
|
||||||
var DbClient DatabaseClient
|
var DbClient DatabaseClient
|
||||||
|
|
||||||
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) error {
|
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam string) error {
|
||||||
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||||
dbUser, dbPassword, dbHost, dbPort, dbName)
|
dbUser, dbPassword, dbHost, dbPort, dbName, dbParam)
|
||||||
DbClient.dbType = dbType
|
DbClient.dbType = dbType
|
||||||
DbClient.dbConnMaxLifetime = 0
|
DbClient.dbConnMaxLifetime = 0
|
||||||
DbClient.dbMaxIdleConns = 0
|
DbClient.dbMaxIdleConns = 0
|
||||||
@@ -161,8 +161,7 @@ func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) err
|
|||||||
if log.GetLevel() == log.LOG_TRACE {
|
if log.GetLevel() == log.LOG_TRACE {
|
||||||
DbClient.IsShowSQL = true
|
DbClient.IsShowSQL = true
|
||||||
}
|
}
|
||||||
log.Debugf("dbType:%s dbUrl:%s:******@tcp(%s:%s)/%s??charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
log.Debugf("dbType:%s dbUrl:%s:", dbType, DbClient.dbUrl)
|
||||||
dbType, dbUser, dbHost, dbPort, dbName)
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
||||||
|
|||||||
@@ -50,9 +50,9 @@ var DbClient DatabaseClient
|
|||||||
// conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
// conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
||||||
// }
|
// }
|
||||||
|
|
||||||
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) error {
|
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam string) error {
|
||||||
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||||
dbUser, dbPassword, dbHost, dbPort, dbName)
|
dbUser, dbPassword, dbHost, dbPort, dbName, dbParam)
|
||||||
DbClient.dbType = dbType
|
DbClient.dbType = dbType
|
||||||
DbClient.dbConnMaxLifetime = 0
|
DbClient.dbConnMaxLifetime = 0
|
||||||
DbClient.dbMaxIdleConns = 0
|
DbClient.dbMaxIdleConns = 0
|
||||||
@@ -60,8 +60,7 @@ func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) err
|
|||||||
if log.GetLevel() == log.LOG_TRACE {
|
if log.GetLevel() == log.LOG_TRACE {
|
||||||
DbClient.IsShowSQL = true
|
DbClient.IsShowSQL = true
|
||||||
}
|
}
|
||||||
log.Debugf("dbType:%s dbUrl:%s:******@tcp(%s:%s)/%s??charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
log.Debugf("dbType:%s dbUrl:%s:", dbType, DbClient.dbUrl)
|
||||||
dbType, dbUser, dbHost, dbPort, dbName)
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
||||||
|
|||||||
@@ -96,9 +96,9 @@ type DatabaseClient struct {
|
|||||||
|
|
||||||
var DbClient DatabaseClient
|
var DbClient DatabaseClient
|
||||||
|
|
||||||
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) error {
|
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam string) error {
|
||||||
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||||
dbUser, dbPassword, dbHost, dbPort, dbName)
|
dbUser, dbPassword, dbHost, dbPort, dbName, dbParam)
|
||||||
DbClient.dbType = dbType
|
DbClient.dbType = dbType
|
||||||
DbClient.dbConnMaxLifetime = 0
|
DbClient.dbConnMaxLifetime = 0
|
||||||
DbClient.dbMaxIdleConns = 0
|
DbClient.dbMaxIdleConns = 0
|
||||||
@@ -106,8 +106,7 @@ func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) err
|
|||||||
if log.GetLevel() == log.LOG_TRACE {
|
if log.GetLevel() == log.LOG_TRACE {
|
||||||
DbClient.IsShowSQL = true
|
DbClient.IsShowSQL = true
|
||||||
}
|
}
|
||||||
log.Debugf("dbType:%s dbUrl:%s:******@tcp(%s:%s)/%s??charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
log.Debugf("dbType:%s dbUrl:%s:", dbType, DbClient.dbUrl)
|
||||||
dbType, dbUser, dbHost, dbPort, dbName)
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
||||||
|
|||||||
@@ -45,9 +45,9 @@ type DatabaseClient struct {
|
|||||||
|
|
||||||
var DbClient DatabaseClient
|
var DbClient DatabaseClient
|
||||||
|
|
||||||
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) error {
|
func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam string) error {
|
||||||
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
DbClient.dbUrl = fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||||
dbUser, dbPassword, dbHost, dbPort, dbName)
|
dbUser, dbPassword, dbHost, dbPort, dbName, dbParam)
|
||||||
DbClient.dbType = dbType
|
DbClient.dbType = dbType
|
||||||
DbClient.dbConnMaxLifetime = 0
|
DbClient.dbConnMaxLifetime = 0
|
||||||
DbClient.dbMaxIdleConns = 0
|
DbClient.dbMaxIdleConns = 0
|
||||||
@@ -55,8 +55,7 @@ func InitDbClient(dbType, dbUser, dbPassword, dbHost, dbPort, dbName string) err
|
|||||||
if log.GetLevel() == log.LOG_TRACE {
|
if log.GetLevel() == log.LOG_TRACE {
|
||||||
DbClient.IsShowSQL = true
|
DbClient.IsShowSQL = true
|
||||||
}
|
}
|
||||||
log.Debugf("dbType:%s dbUrl:%s:******@tcp(%s:%s)/%s??charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=true&loc=Local",
|
log.Debugf("dbType:%s dbUrl:%s:", dbType, DbClient.dbUrl)
|
||||||
dbType, dbUser, dbHost, dbPort, dbName)
|
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
DbClient.XEngine, err = xorm.NewEngine(DbClient.dbType, DbClient.dbUrl)
|
||||||
|
|||||||
@@ -12,13 +12,14 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type DbConfig struct {
|
type DbConfig struct {
|
||||||
Type string `yaml:"type"`
|
Type string `yaml:"type"`
|
||||||
User string `yaml:"user"`
|
User string `yaml:"user"`
|
||||||
Password string `yaml:"password"`
|
Password string `yaml:"password"`
|
||||||
Host string `yaml:"host"`
|
Host string `yaml:"host"`
|
||||||
Port string `yaml:"port"`
|
Port string `yaml:"port"`
|
||||||
Name string `yaml:"name"`
|
Name string `yaml:"name"`
|
||||||
Backup string `yaml:"backup"`
|
ConnParam string `yaml:"connParam,omitempty"`
|
||||||
|
Backup string `yaml:"backup"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// Yaml struct of config
|
// Yaml struct of config
|
||||||
@@ -30,16 +31,18 @@ type YamlConfig struct {
|
|||||||
Count int `yaml:"count"`
|
Count int `yaml:"count"`
|
||||||
} `yaml:"logger"`
|
} `yaml:"logger"`
|
||||||
|
|
||||||
Rest []struct {
|
// Rest []struct {
|
||||||
IPv4 string `yaml:"ipv4"`
|
// IPv4 string `yaml:"ipv4"`
|
||||||
IPv6 string `yaml:"ipv6"`
|
// IPv6 string `yaml:"ipv6"`
|
||||||
Port uint16 `yaml:"port"`
|
// Port uint16 `yaml:"port"`
|
||||||
Scheme string `yaml:"scheme"`
|
// Scheme string `yaml:"scheme"`
|
||||||
ClientAuthType int `yaml:"clientAuthType"`
|
// ClientAuthType int `yaml:"clientAuthType"`
|
||||||
CaFile string `yaml:"caFile"`
|
// CaFile string `yaml:"caFile"`
|
||||||
CertFile string `yaml:"certFile"`
|
// CertFile string `yaml:"certFile"`
|
||||||
KeyFile string `yaml:"keyFile"`
|
// KeyFile string `yaml:"keyFile"`
|
||||||
} `yaml:"rest"`
|
// } `yaml:"rest"`
|
||||||
|
|
||||||
|
Rest []RestParam
|
||||||
|
|
||||||
WebServer struct {
|
WebServer struct {
|
||||||
Enabled bool `yaml:"enabled"`
|
Enabled bool `yaml:"enabled"`
|
||||||
@@ -157,6 +160,17 @@ type YamlConfig struct {
|
|||||||
} `yaml:"testConfig"`
|
} `yaml:"testConfig"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type RestParam struct {
|
||||||
|
IPv4 string `yaml:"ipv4"`
|
||||||
|
IPv6 string `yaml:"ipv6"`
|
||||||
|
Port uint16 `yaml:"port"`
|
||||||
|
Scheme string `yaml:"scheme,omitempty" default:"http"`
|
||||||
|
ClientAuthType int `yaml:"clientAuthType"`
|
||||||
|
CaFile string `yaml:"caFile"`
|
||||||
|
CertFile string `yaml:"certFile"`
|
||||||
|
KeyFile string `yaml:"keyFile"`
|
||||||
|
}
|
||||||
|
|
||||||
type TestDatas struct {
|
type TestDatas struct {
|
||||||
UDM struct {
|
UDM struct {
|
||||||
CapUsed uint32 `yaml:"capUsed"`
|
CapUsed uint32 `yaml:"capUsed"`
|
||||||
@@ -188,7 +202,17 @@ type TestDataMap struct {
|
|||||||
NeTestDatas []map[string]NeTestData
|
NeTestDatas []map[string]NeTestData
|
||||||
}
|
}
|
||||||
|
|
||||||
var yamlConfig YamlConfig
|
var yamlConfig YamlConfig = NewYamlConfig()
|
||||||
|
|
||||||
|
// set default value for yaml config
|
||||||
|
func NewYamlConfig() YamlConfig {
|
||||||
|
return YamlConfig{
|
||||||
|
Database: DbConfig{
|
||||||
|
Type: "mysql",
|
||||||
|
ConnParam: "charset=utf8mb4&collation=utf8mb4_general_ci&loc=Local",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func ReadConfig(configFile string) {
|
func ReadConfig(configFile string) {
|
||||||
yamlFile, err := os.ReadFile(configFile)
|
yamlFile, err := os.ReadFile(configFile)
|
||||||
@@ -327,6 +351,23 @@ func GetDefaultUserAgent() string {
|
|||||||
return "OMC-restagent/" + global.Version
|
return "OMC-restagent/" + global.Version
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetOMCHostUrl() string {
|
||||||
|
var omcip string = "127.0.0.1"
|
||||||
|
var rest RestParam = yamlConfig.Rest[0]
|
||||||
|
var port uint16 = rest.Port
|
||||||
|
if rest.IPv4 != "0.0.0.0" && rest.IPv4 != "" {
|
||||||
|
omcip = rest.IPv4
|
||||||
|
} else if rest.IPv6 != "::" && rest.IPv6 != "" {
|
||||||
|
omcip = "[" + rest.IPv6 + "]"
|
||||||
|
}
|
||||||
|
var scheme string = "http"
|
||||||
|
if rest.Scheme != "" {
|
||||||
|
scheme = rest.Scheme
|
||||||
|
}
|
||||||
|
|
||||||
|
return fmt.Sprintf("%s://%s:%d", scheme, omcip, port)
|
||||||
|
}
|
||||||
|
|
||||||
// const defaultConfigFile = "./etc/restconf.yaml"
|
// const defaultConfigFile = "./etc/restconf.yaml"
|
||||||
|
|
||||||
// func init() {
|
// func init() {
|
||||||
|
|||||||
@@ -197,31 +197,31 @@ func main() {
|
|||||||
log.Infof("OMC restagent version: %s %s %s", global.Version, global.BuildTime, global.GoVer)
|
log.Infof("OMC restagent version: %s %s %s", global.Version, global.BuildTime, global.GoVer)
|
||||||
|
|
||||||
err := dborm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
err := dborm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
||||||
conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("dborm.initDbClient err:", err)
|
fmt.Println("dborm.initDbClient err:", err)
|
||||||
os.Exit(4)
|
os.Exit(4)
|
||||||
}
|
}
|
||||||
err = fm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
err = fm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
||||||
conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("dborm.initDbClient err:", err)
|
fmt.Println("dborm.initDbClient err:", err)
|
||||||
os.Exit(4)
|
os.Exit(4)
|
||||||
}
|
}
|
||||||
err = pm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
err = pm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
||||||
conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("dborm.initDbClient err:", err)
|
fmt.Println("dborm.initDbClient err:", err)
|
||||||
os.Exit(4)
|
os.Exit(4)
|
||||||
}
|
}
|
||||||
err = dbrest.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
err = dbrest.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
||||||
conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("dbrest.initDbClient err:", err)
|
fmt.Println("dbrest.initDbClient err:", err)
|
||||||
os.Exit(4)
|
os.Exit(4)
|
||||||
}
|
}
|
||||||
err = lm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
err = lm.InitDbClient(conf.Database.Type, conf.Database.User, conf.Database.Password,
|
||||||
conf.Database.Host, conf.Database.Port, conf.Database.Name)
|
conf.Database.Host, conf.Database.Port, conf.Database.Name, conf.Database.ConnParam)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("lm.initDbClient err:", err)
|
fmt.Println("lm.initDbClient err:", err)
|
||||||
os.Exit(4)
|
os.Exit(4)
|
||||||
@@ -244,6 +244,7 @@ func main() {
|
|||||||
// 开启监控采集
|
// 开启监控采集
|
||||||
// monitor.StartMonitor(false, "")
|
// monitor.StartMonitor(false, "")
|
||||||
|
|
||||||
|
var listenLocalhost bool = false
|
||||||
for _, rest := range conf.Rest {
|
for _, rest := range conf.Rest {
|
||||||
// ipv4 goroutines
|
// ipv4 goroutines
|
||||||
if rest.IPv4 != "" {
|
if rest.IPv4 != "" {
|
||||||
@@ -254,7 +255,8 @@ func main() {
|
|||||||
go HttpListen(listen, app)
|
go HttpListen(listen, app)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if rest.IPv4 != "0.0.0.0" {
|
if rest.IPv4 != "0.0.0.0" && !listenLocalhost {
|
||||||
|
listenLocalhost = true
|
||||||
// 默认启动localhost侦听
|
// 默认启动localhost侦听
|
||||||
listenLocal := "127.0.0.1" + ":" + strconv.Itoa(int(rest.Port))
|
listenLocal := "127.0.0.1" + ":" + strconv.Itoa(int(rest.Port))
|
||||||
if strings.ToLower(rest.Scheme) == "https" {
|
if strings.ToLower(rest.Scheme) == "https" {
|
||||||
|
|||||||
Reference in New Issue
Block a user