From ca63245a93a8a807b83498a125f15852f76dcad9 Mon Sep 17 00:00:00 2001 From: boyce <6549168@qq.com> Date: Thu, 5 Sep 2019 13:21:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=97=A5=E5=BF=97=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1=E5=A2=9E=E5=8A=A0=E5=89=8D=E7=BC=80=E4=BB=A5=E5=8F=8A?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E6=97=A5=E5=BF=97=E7=9A=84=E6=97=A5=E6=9C=9F?= =?UTF-8?q?=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Test/config/cluster.json | 2 +- cluster/cluster.go | 23 +---------------------- originnode/node.go | 38 +++++++++++++++++++++++++++++++++++--- sysmodule/LogModule.go | 6 +++--- sysservice/logservice.go | 4 ++-- 5 files changed, 42 insertions(+), 31 deletions(-) diff --git a/Test/config/cluster.json b/Test/config/cluster.json index 912aa2f..4ed7403 100644 --- a/Test/config/cluster.json +++ b/Test/config/cluster.json @@ -12,7 +12,7 @@ "SubNet1_Service", "SubNet1_Service1" ], - "ClusterNode":["SubNet2.N_Node1"] + "ClusterNode":["SubNet2.N_Node1","N_Node2"] }, { "NodeID": 2, diff --git a/cluster/cluster.go b/cluster/cluster.go index 3981cdd..ee98ced 100644 --- a/cluster/cluster.go +++ b/cluster/cluster.go @@ -5,7 +5,6 @@ import ( "math/rand" "net" "os" - "strconv" "strings" "time" @@ -192,29 +191,9 @@ func (slf *CCluster) ConnService() error { return nil } -func (slf *CCluster) Init() error { - if len(os.Args) < 2 { - return fmt.Errorf("Param error not find NodeId=number") - } - - parts := strings.Split(os.Args[1], "=") - if len(parts) < 2 { - return fmt.Errorf("Param error not find NodeId=number") - } - - if parts[0] != "NodeId" { - - return fmt.Errorf("Param error not find NodeId=number") - } - +func (slf *CCluster) Init(currentNodeid int) error { slf.nodeclient = make(map[int]*RpcClient) - //读取配置 - currentNodeid, err := strconv.Atoi(parts[1]) - if err != nil { - return err - } - return slf.ReadNodeInfo(currentNodeid) } diff --git a/originnode/node.go b/originnode/node.go index b3f7d6a..2bc1a3a 100644 --- a/originnode/node.go +++ b/originnode/node.go @@ -3,6 +3,8 @@ package originnode import ( "fmt" "log" + "strconv" + "strings" "github.com/duanhf2012/origin/util" @@ -101,7 +103,38 @@ func (s *COriginNode) Stop() { s.waitGroup.Wait() } +func GetCmdParamNodeId() int { + if len(os.Args) < 2 { + return 0 + //return fmt.Errorf("Param error not find NodeId=number") + } + + parts := strings.Split(os.Args[1], "=") + if len(parts) < 2 { + return 0 + //return fmt.Errorf("Param error not find NodeId=number") + } + + if parts[0] != "NodeId" { + return 0 + //return fmt.Errorf("Param error not find NodeId=number") + } + + //读取配置 + currentNodeid, err := strconv.Atoi(parts[1]) + if err != nil { + return 0 + } + + return currentNodeid +} + func NewOriginNode() *COriginNode { + CurrentNodeId := GetCmdParamNodeId() + if CurrentNodeId == 0 { + fmt.Print("Param error not find NodeId=number") + os.Exit(-1) + } //创建模块 node := new(COriginNode) @@ -110,12 +143,11 @@ func NewOriginNode() *COriginNode { //安装系统服务 syslogservice := &sysservice.LogService{} - syslogservice.InitLog("syslog", sysmodule.LEVER_INFO) - + syslogservice.InitLog("syslog", fmt.Sprintf("syslog_%d", CurrentNodeId), sysmodule.LEVER_INFO) service.InstanceServiceMgr().Setup(syslogservice) //初始化集群对象 - err := cluster.InstanceClusterMgr().Init() + err := cluster.InstanceClusterMgr().Init(CurrentNodeId) if err != nil { fmt.Print(err) os.Exit(-1) diff --git a/sysmodule/LogModule.go b/sysmodule/LogModule.go index 0b28e03..ba9ff6e 100644 --- a/sysmodule/LogModule.go +++ b/sysmodule/LogModule.go @@ -53,7 +53,7 @@ type LogModule struct { func (slf *LogModule) GetCurrentFileName() string { now := time.Now() - fpath := filepath.Join("logs", now.Format("2006-01-02")) + fpath := filepath.Join("logs") os.MkdirAll(fpath, os.ModePerm) fname := slf.logfilename + "-" + now.Format("20060102-150405") + ".log" ret := filepath.Join(fpath, fname) @@ -100,9 +100,9 @@ func (slf *LogModule) CheckAndGenFile(fileline string) (newFile bool) { return newFile } -func (slf *LogModule) Init(logfilename string, openLevel uint) { +func (slf *LogModule) Init(logFilePrefixName string, openLevel uint) { slf.currentDay = 0 - slf.logfilename = logfilename + slf.logfilename = logFilePrefixName slf.openLevel = openLevel slf.calldepth = 3 } diff --git a/sysservice/logservice.go b/sysservice/logservice.go index 043a1a3..af50b75 100644 --- a/sysservice/logservice.go +++ b/sysservice/logservice.go @@ -10,10 +10,10 @@ type LogService struct { logmodule *sysmodule.LogModule } -func (slf *LogService) InitLog(logservicename string, openLevel uint) { +func (slf *LogService) InitLog(logservicename string, logFilePrefix string, openLevel uint) { slf.SetServiceName(logservicename) slf.logmodule = &sysmodule.LogModule{} - slf.logmodule.Init(logservicename, openLevel) + slf.logmodule.Init(logFilePrefix, openLevel) } func (slf *LogService) Printf(level uint, format string, v ...interface{}) {