Files
proxy/edge/env/env.go

54 lines
1.0 KiB
Go

package env
import (
"errors"
"flag"
"log/slog"
)
var Mode = "dev"
var Name = "dev-edge"
var EndpointOnline = "https://api.lanhuip.com/api/edge/online"
var EndpointOffline = "https://api.lanhuip.com/api/edge/offline"
func Init() error {
var env = flag.String("e", "dev", "环境变量,可选值 dev 或 prod")
var name = flag.String("n", "", "节点唯一标识")
var online = flag.String("online", "", "服务注册地址")
var offline = flag.String("offline", "", "服务注销地址")
flag.Parse()
if env != nil && *env != "" {
if *env == "dev" || *env == "prod" {
Mode = *env
} else {
return errors.New("环境变量只能为 dev 或 prod")
}
}
if name != nil && *name != "" {
Name = *name
} else {
return errors.New("节点唯一标识不能为空")
}
if online != nil && *online != "" {
EndpointOnline = *online
}
if offline != nil && *offline != "" {
EndpointOffline = *offline
}
if Mode == "dev" {
slog.SetLogLoggerLevel(slog.LevelDebug)
} else {
slog.SetLogLoggerLevel(slog.LevelWarn)
}
return nil
}