Commit 072637e2 authored by vicotor's avatar vicotor

add log

parent 067fed09
...@@ -49,6 +49,9 @@ func (n *NodeManagerService) DispatchTask(ctx context.Context, request *omanager ...@@ -49,6 +49,9 @@ func (n *NodeManagerService) DispatchTask(ctx context.Context, request *omanager
if worker == nil { if worker == nil {
return nil, errors.New("worker not found") return nil, errors.New("worker not found")
} }
if worker.online == false {
return nil, errors.New("worker offline")
}
dtask := &dispatchTask{ dtask := &dispatchTask{
task: request.TaskData, task: request.TaskData,
errCh: make(chan error, 1), errCh: make(chan error, 1),
......
...@@ -43,6 +43,7 @@ type Worker struct { ...@@ -43,6 +43,7 @@ type Worker struct {
addr string addr string
benefitAddr string benefitAddr string
status []byte status []byte
online bool
usageInfo []*omanager.DeviceUsage usageInfo []*omanager.DeviceUsage
deviceInfo []*omanager.DeviceInfo deviceInfo []*omanager.DeviceInfo
deviceInfoHash []byte deviceInfoHash []byte
...@@ -194,6 +195,7 @@ func (wm *WorkerManager) manageWorker(worker *Worker) error { ...@@ -194,6 +195,7 @@ func (wm *WorkerManager) manageWorker(worker *Worker) error {
"worker-addr": worker.addr, "worker-addr": worker.addr,
"worker-uuid": worker.uuid, "worker-uuid": worker.uuid,
}).Info("exit manage worker") }).Info("exit manage worker")
worker.online = false
wm.InActiveWorker(worker.addr) wm.InActiveWorker(worker.addr)
}() }()
...@@ -430,12 +432,14 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) { ...@@ -430,12 +432,14 @@ func (wm *WorkerManager) handleWorkerMsg(worker *Worker) {
} }
switch msg := wmsg.Message.(type) { switch msg := wmsg.Message.(type) {
case *omanager.WorkerMessage_GoodbyeMessage: case *omanager.WorkerMessage_GoodbyeMessage:
worker.online = false
worker.quit <- msg.GoodbyeMessage.Reason worker.quit <- msg.GoodbyeMessage.Reason
close(worker.taskCh) close(worker.taskCh)
return return
case *omanager.WorkerMessage_SubmitTaskResult: case *omanager.WorkerMessage_SubmitTaskResult:
worker.resultCh <- msg.SubmitTaskResult worker.resultCh <- msg.SubmitTaskResult
case *omanager.WorkerMessage_HeartbeatResponse: case *omanager.WorkerMessage_HeartbeatResponse:
worker.online = true
wm.UpdateHeartBeat(worker.uuid) wm.UpdateHeartBeat(worker.uuid)
l.WithFields(log.Fields{ l.WithFields(log.Fields{
"worker": worker.uuid, "worker": worker.uuid,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment