forked from all_user/stat_center
Initial commit
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
package pubtest
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"stat/common/config"
|
||||
"stat/common/genId"
|
||||
"stat/common/log"
|
||||
"stat/common/mongos"
|
||||
"stat/common/redis"
|
||||
"stat/models"
|
||||
"stat/service/cacheSer"
|
||||
"stat/statg"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestInit(workPath string) error {
|
||||
// 设置时区
|
||||
time.Local, _ = time.LoadLocation("Asia/Shanghai")
|
||||
|
||||
// 更换工作目录
|
||||
pwd, _ := os.Getwd()
|
||||
fmt.Println("开始工作目录", pwd)
|
||||
if err := os.Chdir(workPath); err != nil {
|
||||
return err
|
||||
}
|
||||
// 初始化配置文件
|
||||
if err := initConfig(); err != nil {
|
||||
return err
|
||||
}
|
||||
// 恢复工作目录
|
||||
if err := os.Chdir(pwd); err != nil {
|
||||
return err
|
||||
}
|
||||
// 初始化数据库
|
||||
if err := initMongoDB(); err != nil {
|
||||
return err
|
||||
}
|
||||
// 初始化redis
|
||||
if err := initRedis(); err != nil {
|
||||
return err
|
||||
}
|
||||
// 初始化缓存
|
||||
cacheSer.Init()
|
||||
// 自增id
|
||||
genId.Start()
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func initConfig() error {
|
||||
err := config.LoadJSON("conf/server.json", &statg.Conf)
|
||||
if err != nil {
|
||||
log.Fatal("加载本地配置失败", log.E(err))
|
||||
return err
|
||||
}
|
||||
// set default value
|
||||
if statg.Conf.Limit.Ip.Capacity <= 0 {
|
||||
statg.Conf.Limit.Ip.Capacity = 300
|
||||
}
|
||||
if statg.Conf.Limit.Ip.Rate <= 0 {
|
||||
statg.Conf.Limit.Ip.Rate = 5
|
||||
}
|
||||
statg.Tgbotsend = statg.Conf.TgbotSend
|
||||
return nil
|
||||
}
|
||||
|
||||
func initMongoDB() error {
|
||||
mgoDB := mongos.NewManager(statg.Conf.Mongo.Url)
|
||||
if err := mgoDB.Connect(); err != nil {
|
||||
log.Error("mgoDB connect err", log.E(err))
|
||||
return err
|
||||
}
|
||||
|
||||
mongos.MgoManager = mgoDB
|
||||
|
||||
// 初始化数据库索引
|
||||
models.InitIndex()
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func initRedis() error {
|
||||
rds, err := redis.NewManagerWithUrl(statg.Conf.Redis.Url, nil)
|
||||
if err != nil {
|
||||
log.Error("rds init err", log.E(err))
|
||||
return err
|
||||
}
|
||||
|
||||
redis.StatRds = rds
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user