Browse Source

Merge pull request '知行学院开发版1.0初始化完成' (#1) from dev1.0 into master

Reviewed-on: #1
master
秦东 4 years ago
parent
commit
5dc6df72b7
  1. 6
      common/abnormal.go
  2. 15
      common/cpucorenum.go
  3. 20
      common/floataccuracy.go
  4. 13
      common/jsonStruct.go
  5. 44
      common/mapOutput.go
  6. 19
      common/md5Sub.go
  7. 378
      common/timeSub.go
  8. 22
      common/unicodeset.go
  9. 8
      common/waitGroupType.go
  10. 33
      config/appConfig.go
  11. 28
      config/configType.go
  12. 30
      config/dataConfig.go
  13. 30
      config/redisConfig.go
  14. 14
      controller/index.go
  15. BIN
      favicon.ico
  16. 10
      go.mod
  17. 113
      go.sum
  18. 16
      handlecontroller/handleController.go
  19. 12
      iniconfig/appConfig.ini
  20. 153
      iniconfig/mysqlConfig.ini
  21. 153
      iniconfig/mysqlConfig1.ini
  22. 9
      iniconfig/redisConfig.ini
  23. 61
      loges/runlog.go
  24. 24
      main.go
  25. 26
      models/department.go
  26. 30
      models/leaguetable.go
  27. 29
      models/myinfo.go
  28. 33
      models/postmodels.go
  29. 34
      models/statisday.go
  30. 21
      models/teaming.go
  31. 85
      models/userinfo.go
  32. 57
      models/wechatuser.go
  33. 27
      models/worksection.go
  34. 369
      rediscontroll/aggregateredis.go
  35. 118
      rediscontroll/hashredis.go
  36. 124
      rediscontroll/keyredis.go
  37. 147
      rediscontroll/listredis.go
  38. 77
      rediscontroll/redisinit.go
  39. 213
      rediscontroll/stringredis.go
  40. 21
      route/apiRoute.go
  41. 63530
      runtime/log/2021_10/2021_10_04.txt
  42. 234
      runtime/log/2021_10/2021_10_05.txt
  43. 3338
      runtime/log/2021_10/2021_10_11.txt
  44. 972
      runtime/log/2021_10/2021_10_12.txt
  45. 2296
      runtime/log/2021_10/2021_10_17.txt
  46. 3288
      runtime/log/2021_10/2021_10_18.txt
  47. 1878
      runtime/log/2021_10/2021_10_22.txt
  48. 1511
      runtime/log/2021_10/2021_10_25.txt
  49. 16
      service/service.go
  50. 33
      sqlhandle/mysqlhandle.go

6
common/abnormal.go

@ -0,0 +1,6 @@
package common
func ErrorAbnormal(str string) {
println(str)
recover()
}

15
common/cpucorenum.go

@ -0,0 +1,15 @@
package common
import "runtime"
//计算cpu合适数量
func CalculateTheNumberOfCPUCores() (int, bool) {
cpuNumber := runtime.NumCPU() - 3
cpuIsTrue := true
if cpuNumber <= 0 {
cpuNumber = 1
cpuIsTrue = false
}
return cpuNumber, cpuIsTrue
}

20
common/floataccuracy.go

@ -0,0 +1,20 @@
package common
import (
"fmt"
"strconv"
"github.com/shopspring/decimal"
)
//float精度运算
func FloatAccuracyOperation(floatVal float64) (res float64) {
num, _ := strconv.ParseFloat(fmt.Sprintf("%.8f", floatVal), 64)
fmt.Println(num)
decimalValue := decimal.NewFromFloat(num)
decimalValue = decimalValue.Mul(decimal.NewFromInt(100))
res, _ = decimalValue.Float64()
return
}

13
common/jsonStruct.go

@ -0,0 +1,13 @@
package common
type JsonOut struct {
Code int
Msg string
ErrMsg error
Data map[string]interface{}
}
type Setwhere struct {
Equation string
Result interface{}
}

44
common/mapOutput.go

@ -0,0 +1,44 @@
package common
import (
"net/http"
"time"
"github.com/unrolled/render"
)
var timeLayout = "2006-01-02 15:04:05" //转化所需模板
func MapOut() (data map[string]interface{}) {
data = make(map[string]interface{}) //必可不少,分配内存
return data
}
func MapOutint() (data map[int]interface{}) {
data = make(map[int]interface{}) //必可不少,分配内存
return data
}
func MapOutint64() (data map[int64]interface{}) {
data = make(map[int64]interface{}) //必可不少,分配内存
return data
}
func MapOutFloat64() (data map[float64]interface{}) {
data = make(map[float64]interface{}) //必可不少,分配内存
return data
}
func OutPutJson(out_val JsonOut) http.HandlerFunc {
return func(w http.ResponseWriter, req *http.Request) {
formatter := render.New(render.Options{IndentJSON: true})
formatter.JSON(w, http.StatusOK, out_val)
}
}
//时间搓转换成日期
/*
@timestamp 待转换的时间戳
*/
func UnixTimeToDay(timestamp int64) string {
datetime := time.Unix(timestamp, 0).Format(timeLayout)
return datetime
}

19
common/md5Sub.go

@ -0,0 +1,19 @@
package common
import (
"crypto/md5"
"fmt"
"main_exam_server/config"
)
func Md5(str string, key ...string) string {
key_val := config.AppConfig.AppKey
if len(key) > 0 {
key_val = key[0]
}
str = str + key_val
data := []byte(str)
has := md5.Sum(data)
md5str1 := fmt.Sprintf("%x", has) //将[]byte转成16进制
return md5str1
}

378
common/timeSub.go

@ -0,0 +1,378 @@
package common
import (
"fmt"
"math"
"time"
)
//时间相关处理类
var (
timeLayoutMap = map[string]string{
"y": "2006",
"m": "2006-01",
"d": "2006-01-02",
"h": "2006-01-02 15",
"i": "2006-01-02 15:04",
"s": "2006-01-02 15:04:05",
}
weekDay = map[string]int{
"Monday": 1,
"Tuesday": 2,
"Wednesday": 3,
"Thursday": 4,
"Friday": 5,
"Saturday": 6,
"Sunday": 7,
}
)
/**
获取本周周一的日期
*/
func GetDateOfWeek() (weekMonday string) {
now := time.Now()
offset := int(time.Monday - now.Weekday())
if offset > 0 {
offset = -6
}
weekStartDate := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.Local).AddDate(0, 0, offset)
weekMonday = weekStartDate.Format("2006-01-02")
return
}
/**
获取本周周日的日期
*/
func GetLastWeekDate() (weekMonday string) {
thisWeekMonday := GetDateOfWeek()
TimeMonday, _ := time.Parse("2006-01-02", thisWeekMonday)
lastWeekMonday := TimeMonday.AddDate(0, 0, +6)
weekMonday = lastWeekMonday.Format("2006-01-02")
return
}
/**
获取上周的周一日期
*/
func GetFirstWeekDate() (weekMonday string) {
thisWeekMonday := GetDateOfWeek()
TimeMonday, _ := time.Parse("2006-01-02", thisWeekMonday)
lastWeekMonday := TimeMonday.AddDate(0, 0, -7)
weekMonday = lastWeekMonday.Format("2006-01-02")
return
}
/**
获取上周的周日日期
*/
func GetFirstWeekLastDate() (weekMonday string) {
thisWeekMonday := GetFirstWeekDate()
TimeMonday, _ := time.Parse("2006-01-02", thisWeekMonday)
lastWeekMonday := TimeMonday.AddDate(0, 0, +6)
weekMonday = lastWeekMonday.Format("2006-01-02")
return
}
/**
获取指定日期的上周的周一日期
*/
func GetFirstWeekDateSet(thisWeekMonday string) (weekMonday string) {
TimeMonday, _ := time.Parse("2006-01-02", thisWeekMonday)
lastWeekMonday := TimeMonday.AddDate(0, 0, -7)
weekMonday = lastWeekMonday.Format("2006-01-02")
return
}
/*
获取今天时间
*/
func GetToDay() (yesterday string) {
now := time.Now()
yesTime := now.AddDate(0, 0, 0).Format("2006-01-02") // 获取昨天的时间
return yesTime
}
/*
获取昨天时间
*/
func GetYesterDay() (yesterday string) {
now := time.Now()
yesTime := now.AddDate(0, 0, -1).Format("2006-01-02") // 获取昨天的时间
return yesTime
}
/*
日期转时间戳
*/
func DateToTimeStamp(dataStr string) (timeStamp int64) {
tmp := "2006-01-02 15:04:05"
res, _ := time.ParseInLocation(tmp, dataStr, time.Local)
timeStamp = res.Unix()
return
}
/*
时间戳转日期
*/
func TimeStampToDate(timeStamp int64, timeType int) (dateStr string) {
timeTemplate := "2006-01-02 15:04:05" //常规类型
switch timeType {
case 1:
timeTemplate = "2006/01/02 15:04:05"
case 2:
timeTemplate = "2006/01/02 15:04"
case 3:
timeTemplate = "2006/01/02 15"
case 4:
timeTemplate = "2006/01/02"
case 5:
timeTemplate = "15:04:05"
case 6:
timeTemplate = "2006-01-02"
case 7:
timeTemplate = "2006-01-02 15"
case 8:
timeTemplate = "2006-01-02 15:04"
case 9:
timeTemplate = "02"
default:
timeTemplate = "2006-01-02 15:04:05" //常规类型
}
dateStr = time.Unix(timeStamp, 0).Format(timeTemplate)
return
}
/*
指定日期起止时间戳
@startTime
@endTime
*/
func GetStartAndEndTimeStamp(startTime, endTime string) (startTimeStamp, endTimeStamp int64) {
startTimeStr := startTime + " 00:00:00"
endTimeStr := endTime + " 23:59:59"
startTimeStamp = DateToTimeStamp(startTimeStr)
endTimeStamp = DateToTimeStamp(endTimeStr)
return
}
// 获取两个时间相差的天数,0表同一天,正数表t1>t2,负数表t1<t2
func GetDiffDays(t1, t2 time.Time) int64 {
t1 = time.Date(t1.Year(), t1.Month(), t1.Day(), 0, 0, 0, 0, time.Local)
t2 = time.Date(t2.Year(), t2.Month(), t2.Day(), 0, 0, 0, 0, time.Local)
return int64(t1.Sub(t2).Hours() / 24)
}
// 获取t1和t2的相差天数,单位:秒,0表同一天,正数表t1>t2,负数表t1<t2
func GetDiffDaysBySecond(t1, t2 int64) int64 {
time1 := time.Unix(t1, 0)
time2 := time.Unix(t2, 0)
// 调用上面的函数
return GetDiffDays(time1, time2)
}
//获取时间段内每天的开始结束时间
func StartAndEndTimeOREveryDay(startTime, endTime int64) []map[string]interface{} {
tianshu := GetDiffDaysBySecond(endTime, startTime)
var i int64
timeMapAry := []map[string]interface{}{}
for i = 0; i <= tianshu; i++ {
timeStampVal := startTime + (86400 * i)
dateVal := TimeStampToDate(timeStampVal, 6)
beginTimg, endDateTime := GetStartAndEndTimeStamp(dateVal, dateVal)
var timeMap = make(map[string]interface{})
timeMap["starttime"] = beginTimg
timeMap["endtime"] = endDateTime
timeMapAry = append(timeMapAry, timeMap)
}
return timeMapAry
}
//日期字符串转换成time格式
func StringToTimeIng(unit, str string) (res time.Time) {
loc, _ := time.LoadLocation("Local")
// str := t.ToString()
layout, ok := timeLayoutMap[unit]
if !ok {
layout = timeLayoutMap["s"]
}
res, _ = time.ParseInLocation(layout, str, loc)
return
}
//获取传入的时间所在月份的第一天,即某月第一天的0点。如传入time.Now(), 返回当前月份的第一天0点时间。
func GetFirstDateOfMonth(d time.Time) time.Time {
d = d.AddDate(0, 0, -d.Day()+1)
return GetZeroTime(d)
}
//获取传入的时间所在月份的第一天,即某月第一天的0点。如传入time.Now(), 返回当前月份的第一天0点时间戳。
func GetFirstDateOfMonthStamp(d time.Time) (monthStartTimeShamp int64) {
monthStartTimeShamp = GetFirstDateOfMonth(d).Unix()
return
}
//获取传入的时间所在月份的最后一天,即某月最后一天的0点。如传入time.Now(), 返回当前月份的最后一天0点时间。
func GetLastDateOfMonth(d time.Time) time.Time {
return GetFirstDateOfMonth(d).AddDate(0, 1, -1)
}
//获取传入的时间所在月份的最后一天,即某月最后一天的23点59分59秒。如传入time.Now(), 返回当前月份的最后一天23点59分59秒的时间戳。
func GetLastDateMonthAll(d time.Time) (monthEndTimeShamp int64) {
monthEndTimeShamp = GetLastDateOfMonth(d).Unix() + 86399
return
}
//获取某一天的0点时间
func GetZeroTime(d time.Time) time.Time {
return time.Date(d.Year(), d.Month(), d.Day(), 0, 0, 0, 0, d.Location())
}
//指定日期月起止时间戳
func GetMonthStartOrEndTime(d time.Time) (monthStartTimgStamp, monthEndTimeStamp int64) {
monthStartTimgStamp = GetFirstDateOfMonthStamp(d)
monthEndTimeStamp = GetLastDateMonthAll(d)
return
}
//获取一周开始结束时间
/*
@t 时间
callback
@strarTime 指定周开始时间
@endTime 指定周结束时间
@weekInt 本月第几周
*/
func WeekStartAdnEndTime(t time.Time) (strarTime, endTime int64, weekInt int) {
endStr := t.Weekday().String() //周几
firstInt := (weekDay[endStr] - 1) //前边有几天
lastInt := 7 - weekDay[endStr] //后边有几天
plus := int64(86400 * lastInt) //计算结束时间加量
owe := int64(86400 * firstInt) //计算开始时间加量
endDay := time.Unix(t.Unix()+plus+86399, 0) //结束时间
startDay := time.Unix(t.Unix()-owe, 0) //开始时间
//开始与结束时间转换时间戳
strarTime = startDay.Unix()
endTime = endDay.Unix()
monthStartTimgStamp, monthEndTimeStamp := GetMonthStartOrEndTime(t) //计算本月开始与结束时间(时间戳)
//判断指定日期所在月周的开始与结束日期
if monthStartTimgStamp-strarTime > 0 {
strarTime = monthStartTimgStamp
}
if monthEndTimeStamp-endTime < 0 {
endTime = monthEndTimeStamp
}
monthFirstDay := time.Unix(monthStartTimgStamp, 0).Weekday().String() //指定日期所在月第一天是周几
todayInt := t.Local().Day() //今天几号
currentWeek := weekDay[monthFirstDay] //指定日期所在月第一天是周几(转换成int定量)
daySet := todayInt - (8 - currentWeek) //日期差量
if daySet <= 0 {
weekInt = 1
} else {
weekInt = int(math.Ceil(float64(daySet)/7.0)) + 1 //计算周
}
return
}
//计算指定日期周一
func SetDateWeekFirstTime(t time.Time) (weekInt string) {
offset := int(time.Monday - t.Weekday())
if offset > 0 {
offset = -6
}
weekStartDate := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, time.Local).AddDate(0, 0, offset)
weekInt = weekStartDate.Format("2006-01-02")
return
}
/*
获取上周起止时间
*/
func FirstWeekStartAdnEndTime(t time.Time) (strarTime, endTime int64, weekInt int) {
//计算周一
firstWeekDay := SetDateWeekFirstTime(t) //指定日期所在周的周一日期
firstWeekDayStringToTime := StringToTimeIng("d", firstWeekDay)
monthFirst := int64(firstWeekDayStringToTime.Month()) //获取周一所在月
monthSet := int64(t.Month()) //当前日期所在月
// fmt.Printf("%v=>%v=>%v\n", firstWeekDay, int(t.Month()), t)
strarTime = monthFirst
endTime = monthSet
weekInt = 250
//判断是否在同一个月
if monthFirst == monthSet {
firstWeekDay = firstWeekDay + " 00:00:00"
weekFirstDayTime := DateToTimeStamp(firstWeekDay) - 43200
weekFirstDayTimeToStr := TimeStampToDate(weekFirstDayTime, 6)
weekDayStrToTime := StringToTimeIng("d", weekFirstDayTimeToStr)
strarTime, endTime, weekInt = WeekStartAdnEndTime(weekDayStrToTime)
} else {
strarTime, endTime, weekInt = WeekStartAdnEndTime(firstWeekDayStringToTime)
}
return
}
//获取指定时间当月第一周起止时间
func GetSetUpDayTimeToMonthStartAndEndTime(monthStartTime int64) (strarTime, endTime int64) {
t := time.Unix(monthStartTime, 0)
fmt.Println(time.Unix(monthStartTime, 0))
endStr := t.Weekday().String()
firstInt := (weekDay[endStr] - 1)
lastInt := 7 - weekDay[endStr]
plus := int64(86400 * lastInt) //计算结束时间加量
owe := int64(86400 * firstInt) //计算开始时间加量
endDay := time.Unix(t.Unix()+plus+86399, 0) //结束时间
startDay := time.Unix(t.Unix()-owe, 0) //开始时间
strarTime = startDay.Unix()
endTime = endDay.Unix()
monthStartTimgStamp, monthEndTimeStamp := GetMonthStartOrEndTime(t)
if monthStartTimgStamp-strarTime > 0 {
strarTime = monthStartTimgStamp
}
if monthEndTimeStamp-endTime < 0 {
endTime = monthEndTimeStamp
}
return
}
/*
获取季度的起止时间
*/
func GetQuarterDay(t time.Time) (string, int, int64, int64) {
year := t.Format("2006")
month := int(t.Month())
var firstOfQuarter string
var lastOfQuarter string
var currentQuarter int
if month >= 1 && month <= 3 {
//1月1号
firstOfQuarter = year + "-01-01 00:00:00"
lastOfQuarter = year + "-03-31 23:59:59"
currentQuarter = 1
} else if month >= 4 && month <= 6 {
firstOfQuarter = year + "-04-01 00:00:00"
lastOfQuarter = year + "-06-30 23:59:59"
currentQuarter = 2
} else if month >= 7 && month <= 9 {
firstOfQuarter = year + "-07-01 00:00:00"
lastOfQuarter = year + "-09-30 23:59:59"
currentQuarter = 3
} else {
firstOfQuarter = year + "-10-01 00:00:00"
lastOfQuarter = year + "-12-31 23:59:59"
currentQuarter = 4
}
quarterStartTime := DateToTimeStamp(firstOfQuarter)
quarterEndTime := DateToTimeStamp(lastOfQuarter)
return year, currentQuarter, quarterStartTime, quarterEndTime
}

22
common/unicodeset.go

@ -0,0 +1,22 @@
package common
import (
"strconv"
"strings"
)
//Unicode转中文
func ZhToUnicode(raw []byte) (string, error) {
str, err := strconv.Unquote(strings.Replace(strconv.Quote(string(raw)), `\\u`, `\u`, -1))
if err != nil {
return "", err
}
return string([]byte(str)), nil
}
//中文转Unicode
func UnicodeToZh(sText string) string {
textQuoted := strconv.QuoteToASCII(sText)
textUnquoted := textQuoted[1 : len(textQuoted)-1]
return textUnquoted
}

8
common/waitGroupType.go

@ -0,0 +1,8 @@
package common
import "sync"
type DataLock struct {
DataMap []map[string]interface{}
Mutext sync.RWMutex
}

33
config/appConfig.go

@ -0,0 +1,33 @@
package config
import (
"fmt"
"main_exam_server/loges"
"github.com/go-ini/ini"
)
var (
AppConfig = &appConfig{}
)
//加载基础配置
func LoadSystemConfig(iniPath string) (err error) {
fmt.Println("启动程序,开始加载基础配置...")
loges.LongInit("启动程序,开始加载基础配置...")
configSetUp, err := ini.Load(iniPath)
if err != nil {
fmt.Println("app基础配置加载失败!")
loges.LongInit("app基础配置加载失败!")
return err
}
err = configSetUp.Section("App").MapTo(AppConfig)
if err != nil {
fmt.Println("app基础配置读取失败!")
loges.LongInit("app基础配置读取失败!")
return err
}
fmt.Println("app基础配置全部加载完成!")
loges.LongInit("app基础配置全部加载完成!")
return nil
}

28
config/configType.go

@ -0,0 +1,28 @@
package config
//App基础配置
type appConfig struct {
ListenPort string //监听端口
AppKey string //App加密密钥
DataBaseType string //采用数据库类型
MasterDatabase string //主数据库配置
}
//数据库配置
type mysqlConfig struct {
DB_Host string //数据库地址
DB_User string //数据库用户名
DB_Pwds string //数据库密码
DB_Port int //数据库端口
DB_Name string //数据库名称
Master_Slave int //1:主库;0:从库
ReadWriteSeparation bool //读写分离
}
//Redis配置
type redisConfig struct {
Redis_Host string //redis地址
Redis_Port string //redis端口
Redis_Pwds string //redis密码
Redis_Db int //库
}

30
config/dataConfig.go

@ -0,0 +1,30 @@
package config
import (
"main_exam_server/loges"
"github.com/go-ini/ini"
)
var (
MysqlConfig = &mysqlConfig{}
)
//加载数据库配置
func LoadDataBaseConfig(dataPath string, dataName string) (err error) {
loges.LongInit("开始加载Mysql基础配置...")
dataBaseSetUp, err := ini.Load(dataPath)
if err != nil {
loges.LongInit("数据库配置加载失败!")
return err
}
err = dataBaseSetUp.Section(dataName).MapTo(MysqlConfig)
if err != nil {
loges.LongInit("数据库配置加载失败!")
return err
}
// allsec := dataBaseSetUp.SectionStrings()
// fmt.Println("sections: ", allsec)
loges.LongInit("数据库配置全部加载完成!")
return nil
}

30
config/redisConfig.go

@ -0,0 +1,30 @@
package config
import (
"fmt"
"main_exam_server/loges"
"github.com/go-ini/ini"
)
var (
RedisConfig = &redisConfig{}
)
//加载Redis配置
func LoadRedisConfig(redisPath string) (err error) {
loges.LongInit("开始加载Redis基础配置...")
redisSetUp, err := ini.Load(redisPath)
if err != nil {
loges.LongInit("Redis配置加载失败!")
fmt.Println("Redis配置加载失败!")
return err
}
err = redisSetUp.Section("Redis").MapTo(RedisConfig)
if err != nil {
loges.LongInit("Redis配置加载失败!")
return err
}
loges.LongInit("Redis配置全部加载完成!")
return nil
}

14
controller/index.go

@ -0,0 +1,14 @@
package controller
import (
"main_exam_server/common"
"net/http"
)
func Index(ret *http.Request) (prt common.JsonOut) {
printJson := common.JsonOut{}
printJson.Code = 200
printJson.Msg = "通讯成功"
return printJson
}

BIN
favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

10
go.mod

@ -1,3 +1,13 @@
module main_exam_server module main_exam_server
go 1.16 go 1.16
require (
github.com/codegangsta/negroni v1.0.0
github.com/go-ini/ini v1.63.2
github.com/go-redis/redis/v8 v8.11.4
github.com/go-sql-driver/mysql v1.6.0
github.com/gorilla/mux v1.8.0
github.com/shopspring/decimal v1.3.1
github.com/unrolled/render v1.4.0
)

113
go.sum

@ -0,0 +1,113 @@
github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE=
github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
github.com/codegangsta/negroni v1.0.0 h1:+aYywywx4bnKXWvoWtRfJ91vC59NbEhEY03sZjQhbVY=
github.com/codegangsta/negroni v1.0.0/go.mod h1:v0y3T5G7Y1UlFfyxFn/QLRU4a2EuNau2iZY63YTKWo0=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4=
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
github.com/go-ini/ini v1.63.2 h1:kwN3umicd2HF3Tgvap4um1ZG52/WyKT9GGdPx0CJk6Y=
github.com/go-ini/ini v1.63.2/go.mod h1:ByCAeIL28uOIIG0E3PJtZPDL8WnHpFKFOtgjp+3Ies8=
github.com/go-redis/redis/v8 v8.11.4 h1:kHoYkfZP6+pe04aFTnhDH6GDROa5yJdHJVNxV3F46Tg=
github.com/go-redis/redis/v8 v8.11.4/go.mod h1:2Z2wHZXdQpCDXEGzqMockDpNyYvi2l4Pxt6RJr792+w=
github.com/go-sql-driver/mysql v1.6.0 h1:BCTh4TKNUYmOmMUcQ3IipzF5prigylS7XXjEkfCHuOE=
github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg=
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8=
github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA=
github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs=
github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w=
github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0=
github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI=
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So=
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A=
github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE=
github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU=
github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE=
github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk=
github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc=
github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0=
github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY=
github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
github.com/onsi/gomega v1.16.0 h1:6gjqkI8iiRHMvdccRJM8rVKjCWk6ZIm6FTm3ddIe4/c=
github.com/onsi/gomega v1.16.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8=
github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4=
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
github.com/unrolled/render v1.4.0 h1:p73obhpsXuE3paXOtcuXTBKgBJpLCfmABnsUiO35x+Q=
github.com/unrolled/render v1.4.0/go.mod h1:cK4RSTTVdND5j9EYEc0LAMOvdG11JeiKjyjfyZRvV2w=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A=
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781 h1:DzZ89McO9/gWPsQXS/FVKAlG02ZjaQ6AlZRBimEYOd0=
golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210525143221-35b2ab0089ea h1:+WiDlPBBaO+h9vPNZi8uJ3k4BkKQB7Iow3aqwHVA5hI=
golang.org/x/sys v0.0.0-20210525143221-35b2ab0089ea/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8=
google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0=
google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM=
google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE=
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys=
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=
gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=

16
handlecontroller/handleController.go

@ -0,0 +1,16 @@
package handlecontroller
import (
"main_exam_server/controller"
"net/http"
"github.com/unrolled/render"
)
//首页数据处理
func GetIndexPage() http.HandlerFunc {
return func(rw http.ResponseWriter, rep *http.Request) {
formatter := render.New(render.Options{IndentJSON: true})
formatter.JSON(rw, http.StatusOK, controller.Index(rep))
}
}

12
iniconfig/appConfig.ini

@ -0,0 +1,12 @@
[App]
;监听端口
ListenPort = :14438
;App密钥
AppKey = 'heng_xin_gao_ke_AppKey'
;App默认密码
DefaultPassword = 1234567890
;数据库类型
DataBaseType = mysql
;数据库类型
MasterDatabase = Master

153
iniconfig/mysqlConfig.ini

@ -0,0 +1,153 @@
;主数据库
[Master]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = hengxingaoke_tes
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;文档属性数据库
[BookDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = learn_message
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;微信员工信息表
[WatchDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = wechatuser
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;错题库
[ErrorSubjectDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = wrong_question_bank
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;自我测验
[MyTestDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = selftestdatabase
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;图文信息数据库
[BooImgkDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = readdocument
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;计分明细数据库
[IntegralDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = league_table_data
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;趣味问答
[QADate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = ques_and_answers
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;风云榜统计数据库
[BillboardDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = root
;数据库密码
DB_Pwds = root
;数据库名称
DB_Name = statisticsing
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1

153
iniconfig/mysqlConfig1.ini

@ -0,0 +1,153 @@
;主数据库
[Master]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = hengxingaoke_tes
;数据库密码
DB_Pwds = JsTt6iTpkZ85wDnF
;数据库名称
DB_Name = hengxingaoke_tes
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;文档属性数据库
[BookDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = learnmessage
;数据库密码
DB_Pwds = JyppSdcLT27f7dpB
;数据库名称
DB_Name = learnmessage
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;微信员工信息表
[WatchDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = wechatuser
;数据库密码
DB_Pwds = 8jrFG2AzpJPxs88m
;数据库名称
DB_Name = wechatuser
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;错题库
[ErrorSubjectDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = errorsubject
;数据库密码
DB_Pwds = abRcXzraCMFYC4Me
;数据库名称
DB_Name = errorsubject
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;自我测验
[MyTestDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = selftestdatabase
;数据库密码
DB_Pwds = mXDWEBJCd5acnCjD
;数据库名称
DB_Name = selftestdatabase
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;图文信息数据库
[BooImgkDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = readdocument
;数据库密码
DB_Pwds = CY2yanCmAP8p8bxj
;数据库名称
DB_Name = readdocument
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;计分明细数据库
[IntegralDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = leaguetabledata
;数据库密码
DB_Pwds = PxeX8Dnw88G4Jpnr
;数据库名称
DB_Name = leaguetabledata
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;趣味问答
[QADate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = ques_and_answers
;数据库密码
DB_Pwds = CT7XGBrAwdnXkTNX
;数据库名称
DB_Name = ques_and_answers
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1
;风云榜统计数据库
[BillboardDate]
;数据库类型
DB_Type = Mysql
;数据库地址
DB_Host = 127.0.0.1
;数据库用户名
DB_User = statisticsing
;数据库密码
DB_Pwds = 4iMZNtMT8fk8imEb
;数据库名称
DB_Name = statisticsing
;数据库端口
DB_Port = 3306
;主从(1:主库;0:从库)
Master_Slave = 1

9
iniconfig/redisConfig.ini

@ -0,0 +1,9 @@
[Redis]
;Redis地址
Redis_Host = 127.0.0.1
;Redis端口
Redis_Port = 6379
;Redis密码
Redis_Pwds =
;Redis库
Redis_Db = 0

61
loges/runlog.go

@ -0,0 +1,61 @@
package loges
import (
"fmt"
"log"
"os"
"time"
)
var Loger *log.Logger
func LongInit(errstr string) {
fileUrl := "./runtime/log/" + time.Now().Format("2006_01")
file := fileUrl + "/" + time.Now().Format("2006_01_02") + ".txt"
fileIsTrue, fileErr := PathExists(fileUrl)
if fileErr != nil {
fmt.Printf("PathExists(%s),err(%v)\n", file, fileErr)
}
if fileIsTrue {
writeLog(file, errstr)
} else {
mkdirErr := os.Mkdir(fileUrl, os.ModePerm)
if mkdirErr != nil {
fmt.Printf("mkdir failed![%v]\n", mkdirErr)
} else {
writeLog(file, errstr)
}
}
}
func writeLog(file, errstr string) {
logFile, err := os.OpenFile(file, os.O_CREATE|os.O_RDWR|os.O_APPEND, 0777)
if err != nil {
fmt.Println("Fail to find", file, "cServer start Failed")
panic(err)
}
log.SetOutput(logFile) // 将文件设置为log输出的文件
log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
log.Printf(errstr)
}
/*
判断文件或文件夹是否存在
如果返回的错误为nil,说明文件或文件夹存在
如果返回的错误类型使用os.IsNotExist()判断为true,说明文件或文件夹不存在
如果返回的错误为其它类型,则不确定是否在存在
*/
func PathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err == nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, err
}

24
main.go

@ -1,7 +1,27 @@
package main package main
import "fmt" import (
"flag"
"main_exam_server/config"
"main_exam_server/loges"
"main_exam_server/service"
"os"
)
var (
systemConfigFiles = flag.String("configFile", "iniconfig/appConfig.ini", "APP配置文件")
)
func main() { func main() {
fmt.Println("开始") flag.Parse()
getAppConfig := config.LoadSystemConfig(*systemConfigFiles)
if getAppConfig != nil {
loges.LongInit("App配置文件读取错误!")
os.Exit(3)
}
// fmt.Println(common.GetYesterDay())
serverRun := service.NewServer()
serverRun.Run(config.AppConfig.ListenPort)
// go mod tidy go的mode运行操作
} }

26
models/department.go

@ -0,0 +1,26 @@
package models
import "database/sql"
//分厂&部室栏目
type BranchFactory struct {
BfId int64 `json:"bfid" bson:"bfid"`
Name sql.NullString `json:"name" bson:"name"` //'分厂名称',
Set int8 `json:"set" bson:"set"` //'状态(1:启用;2:禁用;3:删除)',
Uid int64 `json:"uid" bson:"bson"` //'创建人',
Time int64 `json:"times" bson:"bson"` //写入时间
Attribute int8 `json:"attribute" bson:"attribute"` // '属性(1:私有;2:共享)',
Group int64 `json:"group" bson:"group"` //'集团公司',
WechatId int64 `json:"wechatid" bson:"wechatid"` //'对照微信id',
}
func (b *BranchFactory) InitBranchFactory() {
b.BfId = 0
b.Name = sql.NullString{"", false}
b.Set = 0
b.Uid = 0
b.Time = 0
b.Attribute = 0
b.Group = 0
b.WechatId = 0
}

30
models/leaguetable.go

@ -0,0 +1,30 @@
package models
import "database/sql"
//分厂&部室栏目
type LeagueTable struct {
Id int64 `json:"lt_id" bson:"lt_id"`
SourceType int8 `json:"lt_source_type" bson:"lt_source_type"` //'积分来源类型(1:阅读;2:赞;3:收藏;4:踩;5:评论;6:发布问题;7:回答问题;8:回答问题被采纳;9:评论问题;10:课堂学习)',
SourceId int64 `json:"lt_source_id" bson:"lt_source_id"` // '来源ID',
Fraction int64 `json:"lt_fraction" bson:"lt_fraction"` // '分值',
FractionType int8 `json:"lt_fraction_type" bson:"lt_fraction_type"` // '1:增加;2:减少;',
UserKey int64 `json:"lt_user_key" bson:"lt_user_key"` // '归属人',
Explain sql.NullString `json:"lt_explain" bson:"lt_explain"` // '说明',
TimeVal int64 `json:"lt_time" bson:"lt_time"` //'0',
IsTrue int8 `json:"lt_true" bson:"lt_true"` // '是否有效(1:有效;2:无效)',
Group int8 `json:"lt_group" bson:"lt_group"` // '组织',
}
func (b *LeagueTable) InitLeagueTable() {
b.Id = 0
b.SourceType = 1
b.SourceId = 0
b.Fraction = 0
b.FractionType = 1
b.UserKey = 0
b.Explain = sql.NullString{"", false}
b.TimeVal = 0
b.IsTrue = 1
b.Group = 1
}

29
models/myinfo.go

@ -0,0 +1,29 @@
package models
//个人信息
type MyInfo struct {
Numbers string `json:"numbers" bson:"numbers"` //员工编号
Name string `json:"name" bson:"name"` //员工姓名
Group string `json:"group" bson:"group"` //集团
Department string `json:"department" bson:"department"` //分厂部室
WorkPost string `json:"workpost" bson:"workpost"` //工作岗位
Position string `json:"position" bson:"position"` //职务
WorkTeam string `json:"workteam bson:"workteam"` //班组
WatchKey string `json:"watchkey bson:"watchkey"` //微信或企业微信识别符
IconUrl string `json:"iconurl" bson:"iconurl"` //头像
IconSmailUrl string `json:"iconsmailurl" bson:"iconsmailurl"` //缩略图
}
//初始化设置
func (m *MyInfo) InitMyInfo() {
m.Numbers = "" //员工编号
m.Name = "" //员工姓名
m.Group = "" //集团
m.Department = "" //分厂部室
m.WorkPost = "" //工作岗位
m.Position = "" //职务
m.WorkTeam = "" //班组
m.WatchKey = "" //微信或企业微信识别符
m.IconUrl = "" //头像
m.IconSmailUrl = "" //缩略图
}

33
models/postmodels.go

@ -0,0 +1,33 @@
package models
import "database/sql"
//职务结构
type Postition struct {
Id int64 `json:"ps_id" bson:"ps_id"`
Name sql.NullString `json:"ps_name" bson:"ps_name"` //'职务名称',
Set int8 `json:"ps_set" bson:"ps_set"` //'职务状态',
WorkSectionId int64 `json:"ps_ws_id" bson:"ps_ws_id"` //'所属工段',
DepartId int64 `json:"ps_bf_id" bson:"ps_bf_id"` //'所属分厂',
Time int64 `json:"ps_time" bson:"ps_time"` //'创建时间',
EiteTime int64 `json:"ps_eite_time" bson:"ps_eite_time"` //'修改时间',
UserId int64 `json:"ps_sys_uid" bson:"ps_sys_uid"` //'添加人',
Weight int32 `json:"ps_weight" bson:"ps_weight"` //'权重',
GenExa int8 `json:"ps_gen_exa" bson:"ps_gen_exa"` //'统考(1:是;2:否)',
Group int64 `json:"ps_group" bson:"ps_group"` //'归属集团',
}
//初始化
func (p *Postition) InitPostition() {
p.Id = 0
p.Name = sql.NullString{"", false} //'职务名称',
p.Set = 1 //'职务状态',
p.WorkSectionId = 0 //'所属工段',
p.DepartId = 0 //'所属分厂',
p.Time = 0 //'创建时间',
p.EiteTime = 0 //'修改时间',
p.UserId = 0 //'添加人',
p.Weight = 0 //'权重',
p.GenExa = 2 //'统考(1:是;2:否)',
p.Group = 1 //'归属集团',
}

34
models/statisday.go

@ -0,0 +1,34 @@
package models
import "database/sql"
type Statisday struct {
Id int64 `json:"t_id" bson:"t_id"`
UserKey int64 `json:"t_user_key" bson:"t_user_key"` //'员工UserKey',
UserJson sql.NullString `json:"t_user_json" bson:"t_user_json"` //'员工基础信息',
UserGroup int8 `json:"t_user_group" bson:"t_user_group"` // '员工组织',
UserDepartment int64 `json:"t_user_bfid" bson:"t_user_bfid"` //'分厂',
UserStation int64 `json:"t_user_wp" bson:"t_user_wp"` //'工段',
UserPost int64 `json:"t_user_ws" bson:"t_user_ws"` //'职务',
UserTeam int64 `json:"t_user_tem" bson:"t_user_tem"` //T '班组',
StatisticalTime int64 `json:"t_tiem" bson:"t_tiem"` //'统计时间',
UserScore int64 `json:"t_score" bson:"t_score"` // '得分',
Group int8 `json:"t_group" bson:"t_group"` // '组织',
AddTime int64 `json:"t_add_time" bson:"t_add_time"` //'实际写入时间',
}
//初始化
func (s *Statisday) InitStatisday() {
s.Id = 0
s.UserKey = 0
s.UserJson = sql.NullString{"", false}
s.UserGroup = 1
s.UserDepartment = 0
s.UserStation = 0
s.UserPost = 0
s.UserTeam = 0
s.StatisticalTime = 0
s.UserScore = 0
s.Group = 1
s.AddTime = 0
}

21
models/teaming.go

@ -0,0 +1,21 @@
package models
import "database/sql"
//班组结构体
type Teaming struct {
Id int64 `json:"tm_id" bson:"tm_id"`
Name sql.NullString `json:"tm_name" bson:"tm_name"` //'班组名称',
Time int64 `json:"tm_time" bson:"tm_time"`
Set int8 `json:"tm_set" bson:"tm_set"` // '状态(1:启用,2:禁用;3:删除)',
Long int8 `json:"tm_long" bson:"tm_long"` //'倒班人员(1:是;2:否)',
}
//初始化
func (t *Teaming) InitTeam() {
t.Id = 0
t.Name = sql.NullString{"", false} //'班组名称',
t.Time = 0
t.Set = 1 //'状态(1:启用,2:禁用;3:删除)',
t.Long = 2 //'倒班人员(1:是;2:否)',
}

85
models/userinfo.go

@ -0,0 +1,85 @@
package models
import "database/sql"
//员工属性
type UserInfo struct {
UserKey int64 `json:"wmd_key" bson:"wmd_key"` //'唯一识别符',
USerName sql.NullString `json:"wmd_name" bson:"wmd_name"` //'姓名',
UserGender int8 `json:"wmd_gender" bson:"wmd_gender"` //'性别(1:男;2:女)',
Age int8 `json:"wmd_age" bson:"wmd_age"` // '年龄',
Tel sql.NullString `json:"wmd_tel" bson:"wmd_tel"` //'联系方式',
Category int8 `json:"wmd_category" bson:"wmd_category"` // '人员类别(1:正式工;2:合同工;3:实习生)',
CertificatesType int8 `json:"wmd_certificates_type" bson:"wmd_certificates_type"` // '证件类型(1:身份证;2:驾驶证;3:军人证;4:护照;5:居住证)',
CertificatesNumber sql.NullString `json:"wmd_certificates_number" bson:"wmd_certificates_number"` //'证件编号',
Birthday int64 `json:"wmd_birthday" bson:"wmd_birthday"` //'出生日期',
EntryTime int64 `json:"wmd_entry_time" bson:"wmd_entry_time"` //'入职日期',
QuitTime int64 `json:"wmd_quit_time" bson:"wmd_quit_time"` //'离职日期',
EiteTime int64 `json:"wmd_eite_time" bson:"wmd_eite_time"` //'0',
Addrest sql.NullString `json:"wmd_addrest" bson:"wmd_addrest"` //'家庭住址',
UserIcon sql.NullString `json:"wmd_icon" bson:"wmd_icon"` //'照片',
}
//员工主体信息
type UserAccount struct {
Id int64 `json:"wm_id" bson:"wm_id"` //,
Number sql.NullString `json:"wm_number" bson:"wm_number"` // '员工编号',
Pwd sql.NullString `json:"wm_pwd" bson:"wm_pwd"` //NOT NULL DEFAULT '' COMMENT '密码',
BfId int64 `json:"wm_bf_id" bson:"wm_bf_id"` // unsigned NOT NULL DEFAULT '0' COMMENT '分厂',
WsId int64 `json:"wm_ws_id" bson:"wm_ws_id"` // unsigned NOT NULL DEFAULT '0' COMMENT '工段',
PtId int64 `json:"wm_pt_id" bson:"wm_pt_id"` // unsigned NOT NULL DEFAULT '0' COMMENT '职务',
Key int64 `json:"wm_key" bson:"wm_key"` // unsigned NOT NULL DEFAULT '0' COMMENT '唯一识别码',
Set int8 `json:"wm_set" bson:"wm_set"` // unsigned NOT NULL DEFAULT '1' COMMENT '状态(1:启用;2:禁用;3:删除)',
HireSet int8 `json:"wm_hire_set" bson:"wm_hire_set"` // unsigned NOT NULL DEFAULT '1' COMMENT '雇佣状态(1:在职;2:离职)',
Time int64 `json:"wm_time" bson:"wm_time"` // unsigned NOT NULL DEFAULT '0',
EiteTime int64 `json:"wm_eite_time" bson:"wm_eite_time"` // unsigned NOT NULL DEFAULT '0',
UserId int64 `json:"wm_user_id" bson:"wm_user_id"` // unsigned NOT NULL DEFAULT '1' COMMENT '录入人',
QuitTime int64 `json:"wm_quit_time" bson:"wm_quit_time"` // unsigned NOT NULL DEFAULT '0',
Group int64 `json:"wm_group" bson:"wm_group"` // unsigned NOT NULL DEFAULT '1' COMMENT '集团公司',
Soptcheck int8 `json:"wm_soptcheck" bson:"wm_soptcheck"` // unsigned NOT NULL DEFAULT '1',
Tema int64 `json:"wm_tema" bson:"wm_tema"` // unsigned DEFAULT '0' COMMENT '班组',
LoginOne int8 `json:"wm_one" bson:"wm_one"` // unsigned NOT NULL DEFAULT '1' COMMENT '第一次登陆',
WorkWatchKey sql.NullString `json:"qywx_key" bson:"qywx_key"` //DEFAULT NULL COMMENT '企业微信KEY',
WatchKey sql.NullString `json:"wx_key" bson:"wx_key"` //DEFAULT NULL COMMENT '微信KEY',
}
//初始化数据
func (m *UserInfo) IniUserInfo() {
m.UserKey = 0
m.USerName = sql.NullString{"", false}
m.UserGender = 1
m.Age = 0
m.Tel = sql.NullString{"", false}
m.Category = 1
m.CertificatesType = 1
m.CertificatesNumber = sql.NullString{"", false}
m.Birthday = 0
m.EntryTime = 0
m.QuitTime = 0
m.EiteTime = 0
m.Addrest = sql.NullString{"", false}
m.UserIcon = sql.NullString{"", false}
}
func (u *UserAccount) InUserAccount() {
u.Id = 0
u.Number = sql.NullString{"", false}
u.Pwd = sql.NullString{"", false}
u.BfId = 0
u.WsId = 0
u.PtId = 0
u.Key = 0
u.Set = 0
u.HireSet = 0
u.Time = 0
u.EiteTime = 0
u.UserId = 0
u.QuitTime = 0
u.Group = 0
u.Soptcheck = 0
u.Tema = 0
u.LoginOne = 0
u.WorkWatchKey = sql.NullString{"", false}
u.WatchKey = sql.NullString{"", false}
}

57
models/wechatuser.go

@ -0,0 +1,57 @@
package models
import "database/sql"
//微信员工结构体
type WechatUser struct {
Id int64 `json:"u_id" bson:"u_id"`
UserId sql.NullString `json:"userid" bson:"userid"` //'wechat user id企业微信用户ID',
Name sql.NullString `json:"name" bson:"name"` //'姓名',
Department sql.NullString `json:"department" bson:"department"` //'归属部门json',
Position sql.NullString `json:"position" bson:"position"` //'企业微信职务',
Mobile sql.NullString `json:"mobile" bson:"mobile"` //'企业微信电话',
Gender int8 `json:"gender" bson:"gender"` //'性别。1表示男性,2表示女性',
Email sql.NullString `json:"email" bson:"email"` //'邮箱',
Avatar sql.NullString `json:"avatar" bson:"avatar"` //'员工头像',
Status int8 `json:"status" bson:"status"` //'激活状态: 1=已激活,2=已禁用,4=未激活,5=退出企业。',
Extattr sql.NullString `json:"extattr" bson:"extattr"` //'企业微信员工扩展属性',
MainDepartment int64 `json:"main_department" bson:"main_department"` //'主部门',
QrCode sql.NullString `json:"qr_code" bson:"qr_code"` //'员工个人二维码,扫描可添加为外部联系人(注意返回的是一个url,可在浏览器上打开该url以展示二维码);第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取',
IsLeaderInDept sql.NullString `json:"is_leader_in_dept" bson:"is_leader_in_dept"` //'表示在所在的部门内是否为上级。0-否;1-是。是一个列表,数量必须与department一致。第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取',
ThumbAvatar sql.NullString `json:"thumb_avatar" bson:"thumb_avatar"` //'头像缩略图url',
UserNumber sql.NullString `json:"user_number" bson:"user_number"` //'工号',
SysBf int64 `json:"sys_bf" bson:"sys_bf"` //'系统分厂',
SysWs int64 `json:"sys_ws" bson:"sys_ws"` //'系统工段',
SysPs int64 `json:"sys_ps" bson:"sys_ps"` //'系统职务',
WmTema int64 `json:"wm_tema" bson:"wm_tema"` //'系统班组',
IsAdmin int8 `json:"is_admin" bson:"is_admin"` //'管理员1、否;2:是',
IsRole int64 `json:"is_role" bson:"is_role"` //'角色',
Pwd sql.NullString `json:"pwd" bson:"pwd"` //'密码',
}
//初始化
func (w *WechatUser) InitWechatUser() {
w.Id = 0
w.UserId = sql.NullString{"", false} //'wechat user id企业微信用户ID',
w.Name = sql.NullString{"", false} //'姓名',
w.Department = sql.NullString{"", false} //'归属部门json',
w.Position = sql.NullString{"", false} //'企业微信职务',
w.Mobile = sql.NullString{"", false} //'企业微信电话',
w.Gender = 0 //'性别。1表示男性,2表示女性',
w.Email = sql.NullString{"", false} //'邮箱',
w.Avatar = sql.NullString{"", false} //'员工头像',
w.Status = 0 //'激活状态: 1=已激活,2=已禁用,4=未激活,5=退出企业。',
w.Extattr = sql.NullString{"", false} //'企业微信员工扩展属性',
w.MainDepartment = 0
w.QrCode = sql.NullString{"", false} //'员工个人二维码,扫描可添加为外部联系人(注意返回的是一个url,可在浏览器上打开该url以展示二维码);第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取',
w.IsLeaderInDept = sql.NullString{"", false} //'表示在所在的部门内是否为上级。0-否;1-是。是一个列表,数量必须与department一致。第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取',
w.ThumbAvatar = sql.NullString{"", false} //'头像缩略图url',
w.UserNumber = sql.NullString{"", false} //'工号',
w.SysBf = 0 //'系统分厂',
w.SysWs = 0 //'系统工段',
w.SysPs = 0 //'系统职务',
w.WmTema = 0 //'系统班组',
w.IsAdmin = 0 //'管理员1、否;2:是',
w.IsRole = 0 //'角色',
w.Pwd = sql.NullString{"", false} //'密码',
}

27
models/worksection.go

@ -0,0 +1,27 @@
package models
import "database/sql"
//工段信息
type WorkSection struct {
Id int64 `json:"ws_id" bson:"ws_id"`
Name sql.NullString `json:"ws_name" bson:"ws_name"` // '工段名称',
Set int8 `json:"ws_set" bson:"ws_set"` // '状态(1:启用;2:禁用;3:删除)',
DepartId int64 `json:"ws_bf_id" bson:"ws_bf_id"` // '归属分厂',
Time int64 `json:"ws_time" bson:"ws_time"` // '创建时间',
UserId int64 `json:"ws_sys_uid" bson:"ws_sys_uid"` // '创建人',
EiteTime int64 `json:"ws_eite_time" bson:"ws_eite_time"` // '修改时间',
Group int64 `json:"ws_group" bson:"ws_group"` // '归属集团',
}
//初始化
func (w *WorkSection) InitWorkSection() {
w.Id = 0
w.Name = sql.NullString{"", false}
w.Set = 1
w.DepartId = 0
w.Time = 0
w.UserId = 0
w.EiteTime = 0
w.Group = 1
}

369
rediscontroll/aggregateredis.go

@ -0,0 +1,369 @@
package rediscontroll
import (
"main_exam_server/common"
"github.com/go-redis/redis/v8"
)
/**
*列表(list)类型操作
*/
/*
添加元素
@setName 集合名称
@setVal 要添加的值
*/
func SetAdd(rdb *redis.Client, setName string, setVal ...interface{}) (int64, bool) {
// rdb := RedisInit()
val, err := rdb.SAdd(ctx, setName, setVal).Result()
if err != nil {
return 0, false
}
return val, true
}
/*
*随机取一个元素
@setName 集合名称
*/
func SetPop(rdb *redis.Client, setName string) (string, bool) {
// rdb := RedisInit()
val, err := rdb.SPop(ctx, setName).Result()
if err != nil {
return "", false
}
return val, true
}
/*
删除集合里指定的值
@setName 集合名称
@setVal 要添加的值
*/
func SetRem(rdb *redis.Client, setName string, setVal ...interface{}) bool {
// rdb := RedisInit()
_, err := rdb.SRem(ctx, setName, setVal).Result()
if err != nil {
return false
}
return true
}
/*
获取集合所有成员
@setName 集合名称
call back
集合成员,是否获取成功
*/
func GetSetMembers(rdb *redis.Client, setName string) (map[int]interface{}, bool) {
valMap := common.MapOutint()
// rdb := RedisInit()
listMap, err := rdb.SMembers(ctx, setName).Result()
if err != nil {
return valMap, false
}
for index, val := range listMap {
valMap[index] = val
}
return valMap, true
}
/*
判断元素是否在集合中
@setName 集合名称
call back
*/
func SetIsMember(rdb *redis.Client, setName string, setVal interface{}) bool {
// rdb := RedisInit()
exists, err := rdb.SIsMember(ctx, setName, setVal).Result()
if err != nil {
return false
}
if exists {
return true
}
return false
}
/*
获取集合元素个数
@setName 集合名称
*/
func GetSetCard(rdb *redis.Client, setName string) int64 {
// rdb := RedisInit()
total, err := rdb.SCard(ctx, setName).Result()
if err != nil {
return 0
}
return total
}
/*
-1差集,0,并集,1交集
@setName 集合名称
*/
func SetDiffOrUnionOrInter(rdb *redis.Client, setType int8, firstSetName string, setName string) (map[int]interface{}, bool, int) {
sendValMap := common.MapOutint()
isTrue := false
// rdb := RedisInit()
switch setType {
case -1:
//并集
Diff, err := rdb.SDiff(ctx, firstSetName, setName).Result()
if err != nil {
isTrue = false
}
isTrue = true
for index, val := range Diff {
sendValMap[index] = val
}
return sendValMap, isTrue, 1
case 1:
inter, err := rdb.SInter(ctx, firstSetName, setName).Result()
if err != nil {
isTrue = false
}
isTrue = true
for index, val := range inter {
sendValMap[index] = val
}
// fmt.Printf("===>%v\n", inter)
return sendValMap, isTrue, 2
default:
//并集
unionAry, err := rdb.SUnion(ctx, firstSetName, setName).Result()
if err != nil {
isTrue = false
}
isTrue = true
for index, val := range unionAry {
sendValMap[index] = val
}
return sendValMap, isTrue, 3
}
}
/*
有序集合(zset)类型
*/
/*
有序集合添加元素
@sortedName 集合名称
@sortedVal Score集合权重Member
*/
func SortedAdd(rdb *redis.Client, sortedName string, sortedVal map[float64]interface{}) {
// rdb := RedisInit()
for index, val := range sortedVal {
rdb.ZAdd(ctx, sortedName, &redis.Z{
Score: float64(index),
Member: val,
})
}
}
/*
增加元素分值
@sortedName 集合名称
@sortedScore 集合权重
@sortedMember 成员
*/
func SortedIncrBy(rdb *redis.Client, sortedName string, sortedScore float64, sortedMember string) bool {
// rdb := RedisInit()
_, err := rdb.ZIncrBy(ctx, sortedName, sortedScore, sortedMember).Result()
if err != nil {
return false
}
return true
}
/*
返回有序集中指定区间内的成员
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedRange(rdb *redis.Client, sortedName string, startIndex, stopIndex int64) bool {
// rdb := RedisInit()
err := rdb.ZRange(ctx, sortedName, startIndex, stopIndex).Err()
if err != nil {
return false
}
return false
}
/*
返回有序集中指定区间内的成员其中成员的位置按分数值递减(从大到小)来排列
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedRevRange(rdb *redis.Client, sortedName string, startIndex, stopIndex int64) (map[int]interface{}, bool) {
valMap := common.MapOutint()
// rdb := RedisInit()
valList, err := rdb.ZRevRange(ctx, sortedName, startIndex, stopIndex).Result()
if err != nil {
return valMap, false
}
for index, val := range valList {
valMap[index] = val
}
return valMap, true
}
/*
返回有序集中指定区间内的成员其中成员的位置按分数值递减(从大到小)来排列(带分值)
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedRangeWithScores(rdb *redis.Client, sortedName string, startIndex, stopIndex int64) (map[int]interface{}, bool) {
valMap := common.MapOutint()
// rdb := RedisInit()
valList, err := rdb.ZRevRangeWithScores(ctx, sortedName, startIndex, stopIndex).Result()
if err != nil {
return valMap, false
}
for index, val := range valList {
valMap[index] = val
}
return valMap, true
}
/*
返回有序集合中指定分数区间的成员列表有序集成员按分数值递增(从小到大)次序排列
@sortedName 集合名称
@sorterMinVal 集合最小下标
@sorterMaxVal 集合最大下标
*/
func SortedRangeByScore(rdb *redis.Client, sortedName string, sorterMinVal, sorterMaxVal string) (map[int]interface{}, bool) {
valMap := common.MapOutint()
// rdb := RedisInit()
valList, err := rdb.ZRangeByScore(ctx, sortedName, &redis.ZRangeBy{
Min: sorterMinVal,
Max: sorterMaxVal,
}).Result()
if err != nil {
return valMap, false
}
for index, val := range valList {
valMap[index] = val
}
return valMap, true
}
/*
返回有序集中指定分数区间内的所有的成员有序集成员按分数值递减(从大到小)的次序排列
@sortedName 集合名称
@sorterMinVal 集合最小下标
@sorterMaxVal 集合最大下标
*/
func SortedRevRangeByScore(rdb *redis.Client, sortedName string, sorterMinVal, sorterMaxVal string) (map[int]interface{}, bool) {
valMap := common.MapOutint()
// rdb := RedisInit()
valList, err := rdb.ZRevRangeByScore(ctx, sortedName, &redis.ZRangeBy{
Min: sorterMinVal,
Max: sorterMaxVal,
}).Result()
if err != nil {
return valMap, false
}
for index, val := range valList {
valMap[index] = val
}
return valMap, true
}
/*
命令用于计算集合中元素的数量
@sortedName 集合名称
*/
func SortedCard(rdb *redis.Client, sortedName string) int64 {
// rdb := RedisInit()
count, err := rdb.ZCard(ctx, sortedName).Result()
if err != nil {
return 0
}
return count
}
/*
计算有序集合中指定分数区间的成员数量
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedCount(rdb *redis.Client, sortedName, startIndex, stopIndex string) int64 {
// rdb := RedisInit()
count, err := rdb.ZCount(ctx, sortedName, startIndex, stopIndex).Result()
if err != nil {
return 0
}
return count
}
/*
返回有序集中成员的分数值 如果成员元素不是有序集 key 的成员 key 不存在返回 nil
@sortedName 集合名称
@sortedMember 集合成员
*/
func SortedScore(rdb *redis.Client, sortedName, sortedMember string) float64 {
// rdb := RedisInit()
count, err := rdb.ZScore(ctx, sortedName, sortedMember).Result()
if err != nil {
return 0
}
return count
}
/*
移除有序集中的一个或多个成员不存在的成员将被忽略
@sortedName 集合名称
@sortedMember 集合成员
*/
func SortedRem(rdb *redis.Client, sortedName, sortedMember string) int64 {
// rdb := RedisInit()
count, err := rdb.ZRem(ctx, sortedName, sortedMember).Result()
if err != nil {
return 0
}
return count
}
/*
移除有序集中指定排名(rank)区间内的所有成员
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedRemRangeByRank(rdb *redis.Client, sortedName string, startIndex, stopIndex int64) int64 {
// rdb := RedisInit()
count, err := rdb.ZRemRangeByRank(ctx, sortedName, startIndex, stopIndex).Result()
if err != nil {
return 0
}
return count
}
/*
移除有序集中指定分数score区间内的所有成员
@sortedName 集合名称
@startIndex 集合开始下标
@stopIndex 集合结束下标
*/
func SortedRemRangeByScore(rdb *redis.Client, sortedName, startIndex, stopIndex string) int64 {
// rdb := RedisInit()
count, err := rdb.ZRemRangeByScore(ctx, sortedName, startIndex, stopIndex).Result()
if err != nil {
return 0
}
return count
}

118
rediscontroll/hashredis.go

@ -0,0 +1,118 @@
package rediscontroll
import (
"fmt"
"github.com/go-redis/redis/v8"
)
/**
*哈希(hash)类型操作
*/
/*
为哈希表中的字段赋值 单一设置
@hashName 集合名称
@hashKey 哈希键
@hashVal 要添加的值
*/
func HashAdd(rdb *redis.Client, hashName, hashKey, hashVal string) bool {
// rdb := RedisInit()
err := rdb.HSet(ctx, hashName, hashKey, hashVal).Err()
if err != nil {
fmt.Printf("%v\n", err)
return false
}
return true
}
/*
同时将多个 field-value (字段-)对设置到哈希表中
@hashName 集合名称
@hashVal 要添加的键与值
*/
func HashMsetAdd(rdb *redis.Client, hashName string, hashVal map[string]interface{}) bool {
// rdb := RedisInit()
err := rdb.HMSet(ctx, hashName, hashVal).Err()
// err := rdb.HMSet(ctx, "userfg", hashVal).Err()
if err != nil {
fmt.Printf("错误=========》%v\n", err)
return false
}
// fmt.Printf("错误sss=========》%v\n", hashVal)
return true
}
/*
返回哈希表中指定字段的值
@hashName 集合名称
@hashKey 哈希键
*/
func HashGet(rdb *redis.Client, hashName, hashKey string) (string, bool) {
// rdb := RedisInit()
val, err := rdb.HGet(ctx, hashName, hashKey).Result()
if err != nil {
fmt.Printf("%v\n", err)
return "", false
}
return val, true
}
/*
返回哈希表中所有的字段和值
@hashName 集合名称
@hashKey 哈希键
*/
func HashGetAll(rdb *redis.Client, hashName string) (map[string]string, bool) {
// rdb := RedisInit()
val, err := rdb.HGetAll(ctx, hashName).Result()
if err != nil {
fmt.Printf("%v\n", err)
return val, false
}
if len(val) == 0 {
return val, false
}
return val, true
}
/*
删除哈希表 key 中的一个或多个指定字段不存在的字段将被忽略
@hashName 集合名称
@hashKey 哈希键
*/
func HashDel(rdb *redis.Client, hashName, hashKey string) bool {
// rdb := RedisInit()
_, err := rdb.HDel(ctx, hashName, hashKey).Result()
if err != nil {
return false
}
return true
}
/*
查看哈希表的指定字段是否存在
@hashName 集合名称
@hashKey 哈希键
*/
func HashExists(rdb *redis.Client, hashName, hashKey string) bool {
// rdb := RedisInit()
_, err := rdb.HExists(ctx, hashName, hashKey).Result()
if err != nil {
return false
}
return true
}
/*
获取哈希表中字段的数量
@hashName 集合名称
@hashKey 哈希键
*/
func HashLen(rdb *redis.Client, hashName string) (int64, bool) {
// rdb := RedisInit()
val, err := rdb.HLen(ctx, hashName).Result()
if err != nil {
return val, false
}
return val, true
}

124
rediscontroll/keyredis.go

@ -0,0 +1,124 @@
package rediscontroll
import (
"fmt"
"main_exam_server/common"
"main_exam_server/loges"
"time"
"github.com/go-redis/redis/v8"
)
/**
*键操作
*/
//Keys():根据正则获取keys(获取所有的KEY)
func GetAllKey(rdb *redis.Client) map[int]interface{} {
// rdb := RedisInit()
keys, err := rdb.Keys(ctx, "*").Result()
if err != nil {
errStr := fmt.Sprintf("获取Key错误:%v", err)
loges.LongInit(errStr)
errAry := common.MapOutint()
errAry[0] = -1
return errAry
}
keyAry := common.MapOutint()
for index, value := range keys {
keyAry[index] = value
}
return keyAry
}
//获取键对应的值类型
func GetKeyType(rdb *redis.Client, keyName string) string {
// rdb := RedisInit()
vType, err := rdb.Type(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("获取%v键类型错误:%v", keyName, err)
loges.LongInit(errStr)
return "err"
}
return vType
}
//删除键
func DelKey(rdb *redis.Client, keyName string) bool {
// rdb := RedisInit()
_, err := rdb.Del(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("删除%v键类型错误:%v", keyName, err)
loges.LongInit(errStr)
return false
}
return true
}
//检查key是否存在
func ExistsIsTrue(rdb *redis.Client, keyName string) bool {
// rdb := RedisInit()
keyLenght, err := rdb.Exists(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("%v键不存在:%v", keyName, err)
loges.LongInit(errStr)
return false
}
if keyLenght > 0 {
return true
}
return false
}
//设置有效期(秒计)
func SecondTermOfValidity(rdb *redis.Client, keyName string, timeval time.Duration) bool {
// rdb := RedisInit()
keyTime, err := rdb.Expire(ctx, keyName, timeval).Result()
if err != nil {
errStr := fmt.Sprintf("%v键设置错误:%v", keyName, err)
loges.LongInit(errStr)
return false
}
if keyTime {
return true
}
return false
}
//到某个时间点过期
func TimeNode(rdb *redis.Client, keyName string, timeVal time.Time) bool {
// rdb := RedisInit()
keyTime, err := rdb.ExpireAt(ctx, keyName, timeVal).Result()
if err != nil {
errStr := fmt.Sprintf("%v键设置错误:%v", keyName, err)
loges.LongInit(errStr)
return false
}
if keyTime {
return true
}
return false
}
//获取键剩余时间由多少秒
func KeyRemainingTimeSecond(rdb *redis.Client, keyName string) time.Duration {
// rdb := RedisInit()
RemainingKey, err := rdb.TTL(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("%v键剩余时间获取错误:%v", keyName, err)
loges.LongInit(errStr)
return 0
}
return RemainingKey
}
//获取键剩余时间由多少毫秒
func KeyRemainingTimeMilliSecond(rdb *redis.Client, keyName string) time.Duration {
// rdb := RedisInit()
RemainingKey, err := rdb.PTTL(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("%v键剩余时间获取错误:%v", keyName, err)
loges.LongInit(errStr)
return 0
}
return RemainingKey
}

147
rediscontroll/listredis.go

@ -0,0 +1,147 @@
package rediscontroll
import (
"fmt"
"main_exam_server/common"
"main_exam_server/loges"
"github.com/go-redis/redis/v8"
)
/**
*列表(list)类型操作
*/
/*
将元素压入链表
@listName 列表名称
@listVal 列表值
call back 列表值数量是否获取成功
*/
func ListPush(rdb *redis.Client, listName, listVal string) (int64, bool) {
//判断键是否存在
if ExistsIsTrue(rdb, listName) != true {
return 0, false
}
// rdb := RedisInit()
num, err := rdb.LPush(ctx, listName, listVal).Result()
if err != nil {
errStr := fmt.Sprintf("值%v压入%v列表操作错误:%v", listVal, listName, err)
loges.LongInit(errStr)
return 0, false
}
return num, true
}
/*
在某个位置插入新元素
@listName 列表名称
@insertType 操作类型 before:在指定元素前插入;after:在指定元素后插入
@listConfirmVal 指定元素
@listVal 待插入值
*/
func ListInsert(rdb *redis.Client, listName, insertType, listConfirmVal, listVal string) bool {
//判断键是否存在
if ExistsIsTrue(rdb, listName) != true {
return false
}
// rdb := RedisInit()
err := rdb.LInsert(ctx, listName, insertType, listConfirmVal, listVal).Err()
if err != nil {
return false
}
return true
}
/*
获取链表元素个数
@listName 列表名称
*/
func GetListLenght(rdb *redis.Client, listName string) int64 {
//判断键是否存在
if ExistsIsTrue(rdb, listName) != true {
return 0
}
// rdb := RedisInit()
length, err := rdb.LLen(ctx, listName).Result()
if err != nil {
return 0
}
return length
}
/*
*获取链表下标对应的元素
@listName 列表名称
@listIndex 列表下标
call bakc 获取值是否获取成功
*/
func GetListIndexVal(rdb *redis.Client, listName string, listIndex int64) (string, bool) {
if ExistsIsTrue(rdb, listName) != true {
return "", false
}
// rdb := RedisInit()
val, err := rdb.LIndex(ctx, listName, listIndex).Result()
if err != nil {
return "", false
}
return val, true
}
/*
获取某个选定范围的元素集
@listName 列表名称
@startSubscript 下标索引的开始位置
@endtSubscript 下标索引的结束位置(不是要截取的长度)
call bakc 获取值是否获取成功
*/
func GetListRange(rdb *redis.Client, listName string, startSubscript, endtSubscript int64) (map[int]interface{}, bool) {
varMap := common.MapOutint()
if ExistsIsTrue(rdb, listName) != true {
return varMap, false
}
// rdb := RedisInit()
val, err := rdb.LRange(ctx, listName, startSubscript, endtSubscript).Result()
if err != nil {
return varMap, false
}
for index, val := range val {
varMap[index] = val
}
return varMap, true
}
/*
从链表左侧弹出数据
@listName 列表名称
*/
func ListPop(rdb *redis.Client, listName string) (string, bool) {
if ExistsIsTrue(rdb, listName) != true {
return "", false
}
// rdb := RedisInit()
val, err := rdb.LPop(ctx, "list").Result()
if err != nil {
return "", false
}
return val, true
}
/*
根据值移除元素
@listName 列表名称
@listIndex listIndex > 0 : 从表头开始向表尾搜索移除与 VALUE 相等的元素数量为 listIndex
listIndex < 0 : 从表尾开始向表头搜索移除与 VALUE 相等的元素数量为 listIndex 的绝对值
listIndex = 0 : 移除表中所有与 VALUE 相等的值
@listVal 值元素
*/
func ListRem(rdb *redis.Client, listName, listVal string, listIndex int64) int64 {
if ExistsIsTrue(rdb, listName) != true {
return 0
}
// rdb := RedisInit()
val, err := rdb.LRem(ctx, listName, listIndex, listVal).Result()
if err != nil {
return 0
}
return val
}

77
rediscontroll/redisinit.go

@ -0,0 +1,77 @@
package rediscontroll
import (
"context"
"flag"
"fmt"
"main_exam_server/config"
"main_exam_server/loges"
"github.com/go-redis/redis/v8"
)
var (
ctx = context.Background()
redisConfigFiles = flag.String("redisconfigFile", "iniconfig/redisConfig.ini", "数据库配置文件")
)
//开启数据库
func RedisInit() *redis.Client {
redisConfig := config.LoadRedisConfig(*redisConfigFiles)
if redisConfig != nil {
loges.LongInit("Redis配置文件读取错误!")
}
var opt = redis.Options{
Addr: config.RedisConfig.Redis_Host + ":" + config.RedisConfig.Redis_Port,
Password: "",
DB: config.RedisConfig.Redis_Db}
var client = redis.NewClient(&opt)
_, err := client.Ping(ctx).Result()
if err != nil {
errStr := fmt.Sprintf("连接redis出错,错误信息:%v", err)
loges.LongInit(errStr)
}
// fmt.Printf("Redis=========>%v\n", pong)
// fmt.Printf("%v======>%T", client, client)
return client
}
/**
*库操作
*/
//查询Redis库当前有多少个Key
func QueryKeyNumber(rdb *redis.Client) int64 {
// rdb := RedisInit()
num, err := rdb.DBSize(ctx).Result()
if err != nil {
errStr := fmt.Sprintf("数据库键数量获取错误:%v", err)
loges.LongInit(errStr)
return 0
}
return num
}
//清空当前数据库
func ClearingTheTeservoir(rdb *redis.Client) bool {
// rdb := RedisInit()
_, err := rdb.FlushDB(ctx).Result()
if err != nil {
errStr := fmt.Sprintf("清空当前Redis数据库错误:%v", err)
loges.LongInit(errStr)
return false
}
return true
}
//清空所有Redis数据
func ClearingTheTeservoirAll(rdb *redis.Client) bool {
// rdb := RedisInit()
_, err := rdb.FlushAll(ctx).Result()
if err != nil {
errStr := fmt.Sprintf("清空当前Redis数据库错误:%v", err)
loges.LongInit(errStr)
return false
}
return true
}

213
rediscontroll/stringredis.go

@ -0,0 +1,213 @@
package rediscontroll
import (
"fmt"
"main_exam_server/loges"
"time"
"github.com/go-redis/redis/v8"
)
/**
*字符串(string)类型操作
*/
/*
Set():设置
@keyName 键名
@keyVal 键值
@timeVal 过期时间
*/
func SetString(rdb *redis.Client, keyName string, keyVal string, timeVal time.Duration) bool {
// rdb := RedisInit()
err := rdb.Set(ctx, keyName, keyVal, timeVal).Err()
if err != nil {
errStr := fmt.Sprintf("%v键设置值%v错误:%v", keyName, keyVal, err)
loges.LongInit(errStr)
return false
}
return true
}
/*
SetEX():设置并指定过期时间
不管该key是否已经存在缓存中直接覆盖
@keyName 键名
@keyVal 键值
@timeVal 过期时间
*/
func SetStringEx(rdb *redis.Client, keyName string, keyVal string, timeVal time.Duration) bool {
// rdb := RedisInit()
err := rdb.SetEX(ctx, keyName, keyVal, timeVal).Err()
if err != nil {
errStr := fmt.Sprintf("%v键设置值%v错误:%v", keyName, keyVal, err)
loges.LongInit(errStr)
return false
}
return true
}
/*
SetEX():设置并指定过期时间
不管该key是否已经存在缓存中直接覆盖
@keyName 键名
@keyVal 键值
@timeVal 过期时间
call back -1 错误1设置失败2甚至成功
*/
func SetStringNX(rdb *redis.Client, keyName string, keyVal string, timeVal time.Duration) int {
// rdb := RedisInit()
res, err := rdb.SetNX(ctx, keyName, keyVal, timeVal).Result()
if err != nil {
errStr := fmt.Sprintf("%v键设置值%v错误:%v", keyName, keyVal, err)
loges.LongInit(errStr)
return -1
}
if res {
return 2
} else {
return 1
}
}
/*
获取字符串键值
@keyName 键名
*/
func GetString(rdb *redis.Client, keyName string) (val string, istrue bool) {
// rdb := RedisInit()
val, err := rdb.Get(ctx, keyName).Result()
if err == redis.Nil {
errStr := fmt.Sprintf("%v键不存在:%v", keyName, err)
loges.LongInit(errStr)
return "", false
} else if err != nil {
errStr := fmt.Sprintf("%v键获取错误:%v", keyName, err)
loges.LongInit(errStr)
return "", false
} else {
return val, true
}
}
/*
字符串截取
@keyName 键名
@startSubscript 下标索引的开始位置
@endtSubscript 下标索引的结束位置(不是要截取的长度)
*/
func StringInterception(rdb *redis.Client, keyName string, startSubscript, endtSubscript int64) (val string, istrue bool) {
// rdb := RedisInit()
valstr, err := rdb.GetRange(ctx, keyName, startSubscript, endtSubscript).Result()
if err != nil {
errStr := fmt.Sprintf("%v键截取错误:%v", keyName, err)
loges.LongInit(errStr)
return "", false
}
return valstr, true
}
/*
string 加一操作
@keyName 键名
*/
func StringIncr(rdb *redis.Client, keyName string) (val int64, istrue bool) {
// rdb := RedisInit()
valstr, err := rdb.Incr(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("%v键加一操作错误:%v", keyName, err)
loges.LongInit(errStr)
return 0, false
}
return valstr, true
}
/*
string 按指定步长增加
@keyName 键名
@istrue 步长
*/
func StringIncrBy(rdb *redis.Client, keyName string, stepval int64) (val int64, istrue bool) {
// rdb := RedisInit()
valstr, err := rdb.IncrBy(ctx, keyName, stepval).Result()
if err != nil {
errStr := fmt.Sprintf("%v键加指定步长操作错误:%v", keyName, err)
loges.LongInit(errStr)
return 0, false
}
return valstr, true
}
/*
string 减一操作
@keyName 键名
*/
func StringDecr(rdb *redis.Client, keyName string) (val int64, istrue bool) {
// rdb := RedisInit()
valstr, err := rdb.Decr(ctx, keyName).Result()
if err != nil {
errStr := fmt.Sprintf("%v键减一操作错误:%v", keyName, err)
loges.LongInit(errStr)
return 0, false
}
return valstr, true
}
/*
string 按指定步长减少
@keyName 键名
@istrue 步长
*/
func StringDecrBy(rdb *redis.Client, keyName string, stepval int64) (val int64, istrue bool) {
// rdb := RedisInit()
valstr, err := rdb.DecrBy(ctx, keyName, stepval).Result()
if err != nil {
errStr := fmt.Sprintf("%v键减指定步长操作错误:%v", keyName, err)
loges.LongInit(errStr)
return 0, false
}
return valstr, true
}
/*
往字符串后面追加元素返回值是字符串和总长度
@keyName 键名
@keyVal 键值
call back 值长度是否操作成功
*/
func StringAppend(rdb *redis.Client, keyName, keyVal string) (string, int64, bool) {
//判断键是否存在
if ExistsIsTrue(rdb, keyName) != true {
return "", 0, false
}
// rdb := RedisInit()
lenght, err := rdb.Append(ctx, keyName, keyVal).Result() //追加
if err != nil {
errStr := fmt.Sprintf("%v键追加值操作错误:%v", keyName, err)
loges.LongInit(errStr)
return "", 0, false
}
val, isTrue := GetString(rdb, keyName) //获取值
if isTrue != true {
return "", 0, false
}
return val, lenght, isTrue
}
/*
获取字符串长度
@keyName 键名
*/
func GetStrLen(rdb *redis.Client, keyName string) (int64, bool) {
//判断键是否存在
if ExistsIsTrue(rdb, keyName) != true {
return 0, false
}
// rdb := RedisInit()
lenght, err := rdb.StrLen(ctx, keyName).Result() //获取字符串长度
if err != nil {
errStr := fmt.Sprintf("%v键获取长度错误:%v", keyName, err)
loges.LongInit(errStr)
return 0, false
}
return lenght, true
}

21
route/apiRoute.go

@ -0,0 +1,21 @@
package route
import (
"main_exam_server/handlecontroller"
"github.com/gorilla/mux"
)
func InitRoute(m *mux.Router) {
m.HandleFunc("/", handlecontroller.GetIndexPage()).Methods("GET") //访问首页
// m.HandleFunc("/shiyan", handlecontroller.GetShiYan()).Methods("GET") //实验室数据
// m.HandleFunc("/test", handlecontroller.GetShiYan()).Methods("GET") //实验室数据
// m.HandleFunc("/yesterdaypoints", handlecontroller.GetUserYesterdayIntegral()).Methods("GET") //统计员工昨天获得积分总数(测试)
// m.HandleFunc("/defen", handlecontroller.GetDeFen()).Methods("GET") //统计员工昨天获得积分总数(测试)
// m.HandleFunc("/dailystatistics", handlecontroller.GetUserDailyDtatistics()).Methods("GET") //统计员工昨天获得积分总数
// m.HandleFunc("/weekstatistics", handlecontroller.GetUserWeekStatistics()).Methods("GET") //统计员工周获得积分总数
// m.HandleFunc("/fristweekstatistics", handlecontroller.GetFirstMyWeekCord()).Methods("GET") //统计个人上周获得积分总数
// m.HandleFunc("/depardaystatic", handlecontroller.GetDepartmentDayStatistics()).Methods("GET") //统计个部门天获得积分总数
// m.HandleFunc("/deparweekstatic", handlecontroller.GetDepartmentWeekStatistics()).Methods("GET") //统计个部门天获得积分总数
// m.HandleFunc("/deparfirstweekstatic", handlecontroller.GetDepartmentFirdtWeekStatistics()).Methods("GET") //统计个部门天获得积分总数
}

63530
runtime/log/2021_10/2021_10_04.txt

File diff suppressed because it is too large

234
runtime/log/2021_10/2021_10_05.txt

@ -0,0 +1,234 @@
2021/10/05 07:46:06 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:46:06 runlog.go:42: app基础配置全部加载完成!
2021/10/05 07:56:03 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:56:03 runlog.go:42: app基础配置全部加载完成!
2021/10/05 07:57:17 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:57:17 runlog.go:42: app基础配置全部加载完成!
2021/10/05 07:57:46 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:57:46 runlog.go:42: app基础配置全部加载完成!
2021/10/05 07:58:31 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:58:31 runlog.go:42: app基础配置全部加载完成!
2021/10/05 07:59:56 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 07:59:56 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:00:09 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:00:09 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:00:23 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:00:23 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:00:56 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:00:56 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:09:13 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:09:13 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:10:09 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:10:09 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:12:57 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:12:57 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:13:40 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:13:40 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:14:07 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:14:07 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:41:50 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:41:50 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:46:46 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:46:46 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:49:38 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:49:38 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:50:34 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:50:34 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:56:14 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:56:14 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:57:02 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:57:02 runlog.go:42: app基础配置全部加载完成!
2021/10/05 08:57:28 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 08:57:28 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:05:12 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:05:12 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:06:00 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:06:00 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:21:50 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:21:50 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:24:57 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:24:57 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:25:35 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:25:35 runlog.go:42: app基础配置全部加载完成!
2021/10/05 09:25:51 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 09:25:51 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:03:10 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:03:10 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:10:20 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:10:20 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:11:55 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:11:55 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:13:01 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:13:01 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:14:32 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:14:32 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:16:49 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:16:49 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:26:41 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:26:41 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:27:20 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:27:20 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:29:31 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:29:31 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:31:17 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:31:17 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:34:25 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:34:25 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:45:19 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:45:19 runlog.go:42: app基础配置全部加载完成!
2021/10/05 10:46:30 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 10:46:30 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:23:26 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:23:26 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:23:47 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:23:47 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:30:11 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:30:11 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:32:21 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:32:21 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:33:32 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:33:32 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:36:06 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:36:06 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:36:35 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:36:35 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:36:56 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:36:56 runlog.go:42: app基础配置全部加载完成!
2021/10/05 11:38:57 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 11:38:57 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:06:28 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:06:28 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:07:49 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:07:49 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:09:01 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:09:01 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:11:21 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:11:21 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:14:00 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:14:00 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:15:08 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:15:08 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:16:41 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:16:41 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:30:32 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:30:32 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:33:26 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:33:26 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:35:23 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:35:23 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:47:00 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:47:00 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:47:35 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:47:35 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:48:06 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:48:06 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:49:37 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:49:37 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:50:27 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:50:27 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:51:23 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:51:23 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:53:30 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:53:30 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:56:22 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:56:22 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:57:42 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:57:42 runlog.go:42: app基础配置全部加载完成!
2021/10/05 13:59:39 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 13:59:39 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:03:30 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:03:30 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:05:09 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:05:09 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:09:32 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:09:32 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:25:43 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:25:43 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:26:04 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:26:04 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:29:09 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:29:09 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:29:35 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:29:35 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:33:50 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:33:50 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:36:00 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:36:00 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:42:12 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:42:12 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:42:58 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:42:58 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:44:29 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:44:29 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:46:29 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:46:29 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:50:06 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 14:50:06 runlog.go:42: app基础配置全部加载完成!
2021/10/05 14:50:41 runlog.go:42: 开始加载Redis基础配置...
2021/10/05 14:50:41 runlog.go:42: Redis配置全部加载完成!
2021/10/05 14:50:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Redis基础配置...
2021/10/05 14:50:43 runlog.go:42: Redis配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Redis基础配置...
2021/10/05 14:50:43 runlog.go:42: Redis配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:44 runlog.go:42: 开始加载Redis基础配置...
2021/10/05 14:50:44 runlog.go:42: Redis配置全部加载完成!
2021/10/05 14:50:44 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:44 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 14:50:44 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 14:50:44 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 15:01:53 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:01:53 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:09:05 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:09:05 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:12:43 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:12:43 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:13:53 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:13:53 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:15:12 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:15:12 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:18:28 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:18:28 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:21:55 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:21:55 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:22:21 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:22:21 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:42:08 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:42:08 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:42:32 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:42:32 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:44:28 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:44:28 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:45:21 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:45:21 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:45:47 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:45:47 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:49:42 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:49:42 runlog.go:42: app基础配置全部加载完成!
2021/10/05 15:53:48 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 15:53:48 runlog.go:42: app基础配置全部加载完成!
2021/10/05 16:03:51 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 16:03:51 runlog.go:42: app基础配置全部加载完成!
2021/10/05 16:08:45 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 16:08:45 runlog.go:42: app基础配置全部加载完成!
2021/10/05 16:11:29 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 16:11:29 runlog.go:42: app基础配置全部加载完成!
2021/10/05 16:28:35 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/05 16:28:35 runlog.go:42: app基础配置全部加载完成!
2021/10/05 16:28:46 runlog.go:42: 开始加载Redis基础配置...
2021/10/05 16:28:46 runlog.go:42: Redis配置全部加载完成!
2021/10/05 16:28:46 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 16:28:46 runlog.go:42: 数据库配置全部加载完成!
2021/10/05 16:28:46 runlog.go:42: 开始加载Mysql基础配置...
2021/10/05 16:28:46 runlog.go:42: 数据库配置全部加载完成!

3338
runtime/log/2021_10/2021_10_11.txt

File diff suppressed because it is too large

972
runtime/log/2021_10/2021_10_12.txt

@ -0,0 +1,972 @@
2021/10/12 07:45:38 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:45:38 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:45:42 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:45:42 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:45:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:45:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:45:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:45:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:45:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:45:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:08 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:49:08 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:49:08 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:49:08 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:49:08 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:08 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:08 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:08 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:08 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:08 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:49:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:49:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:21 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:49:21 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:49:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:49:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:49:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:11 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:11 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:12 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:12 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:13 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:13 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:16 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:16 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:16 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:20 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:50:20 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:50:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:50:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:50:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:50:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:50:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:13 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:52:13 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:52:17 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:52:17 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:52:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:28 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:52:28 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:52:33 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:52:33 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:52:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:52:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:52:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:07 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:53:07 runlog.go:42: app基础配置全部加载完成!
2021/10/12 07:53:11 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:53:11 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:53:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:11 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:11 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:12 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:53:12 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:53:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:53:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:53:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:53:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:53:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:17 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 07:53:17 runlog.go:42: Redis配置全部加载完成!
2021/10/12 07:53:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:53:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 07:53:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 07:58:56 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 07:58:56 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:15:14 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:15:14 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:15:18 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:18 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:18 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:18 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:18 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:18 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:18 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:18 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:20 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:20 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:20 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:20 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:20 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:20 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:20 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:20 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:22 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:22 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:22 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:22 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:22 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:22 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:22 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:22 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:28 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:28 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:29 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:15:29 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:15:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:15:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:15:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:16:50 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:16:50 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:16:55 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:16:55 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:16:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:16:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:16:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:16:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:16:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:16:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:14 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:17:14 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:17:17 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:17 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:17 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:17 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:23 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:23 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:27 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:27 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:27 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:28 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:28 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:30 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:30 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:30 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:30 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:31 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:31 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:31 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:31 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:32 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:17:32 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:17:32 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:32 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:32 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:32 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:32 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:17:32 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:17:59 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:17:59 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:18:03 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:03 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:03 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:03 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:03 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:03 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:03 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:03 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:12 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:12 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:12 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:12 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:13 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:13 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:13 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:13 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:14 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:14 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:14 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:15 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:15 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:15 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:16 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:16 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:33 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:18:33 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:18:37 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:37 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:37 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:37 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:37 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:37 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:37 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:37 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:38 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:18:38 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:18:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:18:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:18:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:19:45 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:19:45 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:19:48 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:19:48 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:19:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:19:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:19:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:19:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:19:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:19:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:21:12 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:21:12 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:21:16 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:21:16 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:21:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:21:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:21:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:21:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:21:16 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:21:16 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:34 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:23:34 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:23:38 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:38 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:40 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:40 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:40 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:40 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:40 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:40 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:40 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:40 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:41 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:41 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:42 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:42 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:42 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:42 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:43 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:43 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:43 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:43 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:45 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:45 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:45 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:45 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:45 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:46 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:46 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:46 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:46 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:46 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:46 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:46 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:46 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:47 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:47 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:47 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:47 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:47 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:47 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:47 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:47 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:48 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:48 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:48 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:48 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:49 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:49 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:49 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:49 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:49 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:49 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:49 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:49 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:50 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:50 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:50 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:50 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:50 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:50 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:50 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:50 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:53 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:53 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:53 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:53 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:53 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:53 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:53 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:53 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:54 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:54 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:54 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:54 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:54 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:54 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:54 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:54 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:55 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:55 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:55 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:56 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:56 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:56 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:56 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:56 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:56 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:56 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:56 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:57 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:23:57 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:23:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:23:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:23:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:24:38 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:24:38 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:24:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:24:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:24:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:24:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:24:38 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:24:38 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:00 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:25:00 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:25:05 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:05 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:05 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:05 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:05 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:05 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:05 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:05 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:23 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:23 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:23 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:23 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:24 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:24 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:24 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:26 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:26 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:26 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:28 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:25:28 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:25:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:25:28 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:25:28 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:17 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 08:26:17 runlog.go:42: app基础配置全部加载完成!
2021/10/12 08:26:21 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:26:21 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:26:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:21 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:21 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:33 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 08:26:33 runlog.go:42: Redis配置全部加载完成!
2021/10/12 08:26:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 08:26:33 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 08:26:33 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:39:33 runlog.go:42: 启动程序,开始加载基础配置...
2021/10/12 09:39:33 runlog.go:42: app基础配置全部加载完成!
2021/10/12 09:39:41 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:39:41 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:39:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:39:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:39:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:39:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:39:41 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:39:41 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:25 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:40:25 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:40:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:25 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:25 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:29 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:40:29 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:40:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:29 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:29 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:52 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:40:52 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:40:52 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:52 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:52 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:52 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:52 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:52 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:55 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:40:55 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:40:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:55 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:55 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:57 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:40:57 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:40:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:40:57 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:40:57 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:02 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:41:02 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:41:02 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:02 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:02 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:02 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:02 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:02 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:07 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:41:07 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:41:07 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:07 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:07 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:07 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:07 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:07 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:10 runlog.go:42: 开始加载Redis基础配置...
2021/10/12 09:41:10 runlog.go:42: Redis配置全部加载完成!
2021/10/12 09:41:10 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:10 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:10 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:10 runlog.go:42: 数据库配置全部加载完成!
2021/10/12 09:41:10 runlog.go:42: 开始加载Mysql基础配置...
2021/10/12 09:41:10 runlog.go:42: 数据库配置全部加载完成!

2296
runtime/log/2021_10/2021_10_17.txt

File diff suppressed because it is too large

3288
runtime/log/2021_10/2021_10_18.txt

File diff suppressed because it is too large

1878
runtime/log/2021_10/2021_10_22.txt

File diff suppressed because it is too large

1511
runtime/log/2021_10/2021_10_25.txt

File diff suppressed because it is too large

16
service/service.go

@ -0,0 +1,16 @@
package service
import (
"main_exam_server/route"
"github.com/codegangsta/negroni"
"github.com/gorilla/mux"
)
func NewServer() *negroni.Negroni {
n := negroni.Classic()
m := mux.NewRouter()
route.InitRoute(m)
n.UseHandler(m)
return n
}

33
sqlhandle/mysqlhandle.go

@ -0,0 +1,33 @@
package sqlhandle
import (
"database/sql"
"flag"
"fmt"
"main_exam_server/config"
"main_exam_server/loges"
_ "github.com/go-sql-driver/mysql"
)
var (
databaseConfig = flag.String("sqlFigConfig", "iniconfig/mysqlConfig.ini", "数据库配置文件")
)
//数据库打开
func OpenSqlUrl(libraryName string) (*sql.DB, error) {
mysqlLoadConfig := config.LoadDataBaseConfig(*databaseConfig, libraryName)
if mysqlLoadConfig != nil {
loges.LongInit("数据库配置文件读取错误!")
return nil, mysqlLoadConfig
} else {
dbStr := fmt.Sprintf("%v:%v@tcp(%v:%v)/%v?charset=utf8", config.MysqlConfig.DB_User, config.MysqlConfig.DB_Pwds, config.MysqlConfig.DB_Host, config.MysqlConfig.DB_Port, config.MysqlConfig.DB_Name)
openSql, err := sql.Open(config.AppConfig.DataBaseType, dbStr)
if err != nil {
loges.LongInit("数据库打开失败!")
return openSql, nil
}
// loges.LongInit("数据库打开成功!=》" + dbStr)
return openSql, err
}
}
Loading…
Cancel
Save