|
|
@@ -4,10 +4,10 @@ import (
|
|
4
|
4
|
"encoding/json"
|
|
5
|
5
|
"errors"
|
|
6
|
6
|
"fmt"
|
|
7
|
|
- "github.com/fatih/color"
|
|
8
|
7
|
l4g "github.com/jeanphorn/log4go"
|
|
9
|
8
|
"net"
|
|
10
|
9
|
"net/rpc"
|
|
|
10
|
+ "strconv"
|
|
11
|
11
|
)
|
|
12
|
12
|
|
|
13
|
13
|
// TODO: RM 처리와 init.go 전반적으로 DI 이용하여 구현 RM 키등록 부분 구현 예정
|
|
|
@@ -131,7 +131,7 @@ func (receiver Receiver) MmReceive(args Args, reply *Reply) error { //
|
|
131
|
131
|
|
|
132
|
132
|
//Recieve - MM가 MS로부터 메세지 전달받음
|
|
133
|
133
|
func (moscato *Moscato) Receive(msg MsgUnit) (MsgUnit, error) {
|
|
134
|
|
- var logger = newLogger()
|
|
|
134
|
+ logger := NewMyLogger()
|
|
135
|
135
|
defer logger.Sync()
|
|
136
|
136
|
|
|
137
|
137
|
//rpc call
|
|
|
@@ -163,18 +163,17 @@ func (moscato *Moscato) Receive(msg MsgUnit) (MsgUnit, error) {
|
|
163
|
163
|
newNode := MSNode{newMsg.From, newMsg.From}
|
|
164
|
164
|
resultAddNode := moscato.MicroServiceManager.AddMicroservice(newNode)
|
|
165
|
165
|
if resultAddNode {
|
|
166
|
|
- //log.Println("Node added successful")
|
|
167
|
|
- l4g.LOGGER("Test").Info("Node added successful")
|
|
|
166
|
+ logger.Info("Node added successful")
|
|
168
|
167
|
} else {
|
|
169
|
|
- l4g.LOGGER("Test").Error("Node is already added, ignore RM")
|
|
|
168
|
+ logger.Error("Node is already added, ignore RM")
|
|
170
|
169
|
//log.Println("Node is already added, ignore RM")
|
|
171
|
170
|
return msg, nil
|
|
172
|
171
|
}
|
|
173
|
172
|
|
|
174
|
173
|
addr, _ := moscato.MicroServiceManager.GetIpaddr(newMsg.From)
|
|
175
|
174
|
moscato.SecureManager.RegKey(newMsg)
|
|
176
|
|
- fmt.Println("Registered microservice: address", addr,
|
|
177
|
|
- "/ key", moscato.SecureManager.GetNodeKey(newMsg.From))
|
|
|
175
|
+ logger.Debug("Registered microservice: address " + addr +
|
|
|
176
|
+ " / key " + strconv.FormatUint(uint64(moscato.SecureManager.GetNodeKey(newMsg.From)), 10))
|
|
178
|
177
|
|
|
179
|
178
|
// ackRM 메세지 전송
|
|
180
|
179
|
go moscato.Send2MS(addr, newMsg)
|
|
|
@@ -211,6 +210,9 @@ MM→MS
|
|
211
|
210
|
*/
|
|
212
|
211
|
|
|
213
|
212
|
func (moscato *Moscato) Send2MS(ipaddress string, msg MsgUnit) {
|
|
|
213
|
+ logger := NewMyLogger()
|
|
|
214
|
+ defer logger.Sync()
|
|
|
215
|
+
|
|
214
|
216
|
client, err := rpc.Dial("tcp", ipaddress+":8150")
|
|
215
|
217
|
if err != nil {
|
|
216
|
218
|
fmt.Println(err)
|
|
|
@@ -232,7 +234,7 @@ func (moscato *Moscato) Send2MS(ipaddress string, msg MsgUnit) {
|
|
232
|
234
|
//log.Println(reply.CompleteLog) //잘 받았는지 확인 해줌
|
|
233
|
235
|
// 마이크로 서비스에게 받은 메시지는 노란색으로 출력
|
|
234
|
236
|
//log.Println(reply.CompleteLog)
|
|
235
|
|
- //l4g.LOGGER("Test").Info(reply.CompleteLog)
|
|
|
237
|
+ logger.Debug(reply.CompleteLog)
|
|
236
|
238
|
}
|
|
237
|
239
|
|
|
238
|
240
|
//Matching을 용이하게 하기위한 메세지 가공 과정
|
|
|
@@ -278,6 +280,8 @@ func (moscato *Moscato) SendWithEncrypt() MsgUnit {
|
|
278
|
280
|
}
|
|
279
|
281
|
|
|
280
|
282
|
func (moscato *Moscato) Run() {
|
|
|
283
|
+ logger := NewMyLogger()
|
|
|
284
|
+ defer logger.Sync()
|
|
281
|
285
|
|
|
282
|
286
|
config := AppConfig{moscato}
|
|
283
|
287
|
config.config()
|
|
|
@@ -312,7 +316,7 @@ func (moscato *Moscato) Run() {
|
|
312
|
316
|
}
|
|
313
|
317
|
|
|
314
|
318
|
go Listen()
|
|
315
|
|
- color.Blue("initializing complete.")
|
|
|
319
|
+ logger.Info("initializing complete")
|
|
316
|
320
|
|
|
317
|
321
|
fmt.Scanln()
|
|
318
|
322
|
}
|