From 8b3c2ac402098fdb7edc7ebaed32378e047be36c Mon Sep 17 00:00:00 2001
From: gongshangguo <gongshangguo@admin.com>
Date: 星期五, 25 二月 2022 17:46:06 +0800
Subject: [PATCH] logger

---
 client/client.go |   58 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 30 insertions(+), 28 deletions(-)

diff --git a/client/client.go b/client/client.go
index 74a8d3a..50f01b1 100644
--- a/client/client.go
+++ b/client/client.go
@@ -3,7 +3,6 @@
 import (
 	"basic.com/valib/go-aiot.git/aiotProto/aiot"
 	"basic.com/valib/go-aiot.git/util"
-	"basic.com/valib/logger.git"
 	"bufio"
 	"encoding/binary"
 	"encoding/json"
@@ -73,10 +72,12 @@
 	clientCallback ClientCallBack
 	// 蹇冭烦鍖�
 	heartBeatProto *aiot.HeartBeatProto
+	// logger
+	logger *zap.SugaredLogger
 }
 
 // 鍒濆鍖栧鎴风
-func NewClient(addr string, clientId string, deviceRegister *aiot.DeviceRegister, callBack ClientCallBack) *Client {
+func NewClient(addr string, clientId string, deviceRegister *aiot.DeviceRegister, callBack ClientCallBack, logger *zap.SugaredLogger) *Client {
 	logger.Debug("New Client...")
 	return &Client{
 		deviceRegister: deviceRegister,
@@ -91,6 +92,7 @@
 		waitGroup: &util.WaitGroupWrapper{},
 		clientCallback: callBack,
 		heartBeatProto: &aiot.HeartBeatProto{},
+		logger: logger,
 	}
 }
 
@@ -115,35 +117,35 @@
 // 鍚姩鏈嶅姟
 func (c *Client) StartSrv() {
 	// 鍒ゆ柇杩炴帴鐘舵�侊紝閬垮厤閲嶅杩炴帴
-	logger.Debug("Start client service...")
+	c.logger.Debug("Start client service...")
 	if c.IsConnected(){
-		logger.Error("net is connected, please do not repeat connect", zap.String("addr", c.addr))
+		c.logger.Error("net is connected, please do not repeat connect", zap.String("addr", c.addr))
 		return
 	}
 
 	// 鍦板潃鏄惁鍙敤
 	if c.addr == "" {
-		logger.Warn("net addr is nil, wait for retry", zap.String("deviceId", c.deviceId))
+		c.logger.Warn("net addr is nil, wait for retry", zap.String("deviceId", c.deviceId))
 		return
 	}
 
 	// 杩炴帴TCP
-	logger.Debug("Connecting to service", zap.String("addr", c.addr))
+	c.logger.Debug("Connecting to service", zap.String("addr", c.addr))
 	tcpAddr, err := net.ResolveTCPAddr("tcp", c.addr)
 	if err != nil {
-		logger.Warn("Net addr can not be connect for now,waiting...", zap.String("addr", c.addr), zap.Error(err))
+		c.logger.Warn("Net addr can not be connect for now,waiting...", zap.String("addr", c.addr), zap.Error(err))
 		return
 	}
 	conn, err := net.DialTCP("tcp", nil, tcpAddr)
 	if err != nil {
-		logger.Warn("Net addr can not be dial for now,waiting...", zap.String("addr", c.addr), zap.Error(err))
+		c.logger.Warn("Net addr can not be dial for now,waiting...", zap.String("addr", c.addr), zap.Error(err))
 		return
 	}
 	c.Conn = conn
 
 	// 璁剧疆杩炴帴鐘舵��
 	c.SetState(StateConnected)
-	logger.Debug("Client service connected.", zap.String("addr", c.addr))
+	c.logger.Debug("Client service connected.", zap.String("addr", c.addr))
 
 	// 鍚敤璇诲彇閫氶亾
 	c.SetRWBuf()
@@ -154,7 +156,7 @@
 	// 鍚敤蹇冭烦
 	c.waitGroup.Wrap(c.writeHeartBeat)
 	c.Wait()
-	logger.Warn("Client service disconnected.Return...", zap.String("addr", c.addr))
+	c.logger.Warn("Client service disconnected.Return...", zap.String("addr", c.addr))
 }
 
 // 璁剧疆杩炴帴鐘舵��
@@ -188,23 +190,23 @@
 	for {
 		select {
 		case <- c.exitChan:
-			logger.Debug("Close client", zap.String("deviceId", c.deviceId))
+			c.logger.Debug("Close client", zap.String("deviceId", c.deviceId))
 			c.Close()
-			logger.Warn("writeLoop Done...")
+			c.logger.Warn("writeLoop Done...")
 			return
 		case bodyByte := <- c.writeChan:
 			binary.BigEndian.PutUint32(byte4, uint32(len(bodyByte)))
 			body = append(byte4, bodyByte...)
 			_,err = c.Conn.Write(body)
 			if err != nil {
-				logger.Error("Fail to write message", zap.Error(err), zap.String("msg", string(bodyByte)))
+				c.logger.Error("Fail to write message", zap.Error(err), zap.String("msg", string(bodyByte)))
 				c.Close()
-				logger.Warn("writeLoop Done...")
+				c.logger.Warn("writeLoop Done...")
 				return
 			}
 			err = c.Writer.Flush()
 			if err != nil {
-				logger.Error("Fail to write flush", zap.Error(err))
+				c.logger.Error("Fail to write flush", zap.Error(err))
 			}
 		}
 	}
@@ -218,7 +220,7 @@
 
 	// 鍏抽棴鐨勮繛鎺ヤ笉鑳藉啓鍏�
 	if c.IsClosed() {
-		logger.Error("Can not write msg on the closed chan", zap.Any("msgType", msgType), zap.Any("reqType", reqType), zap.Any("data", string(data)))
+		c.logger.Error("Can not write msg on the closed chan", zap.Any("msgType", msgType), zap.Any("reqType", reqType), zap.Any("data", string(data)))
 		return nil,nil
 	}
 
@@ -238,10 +240,10 @@
 
 func (c *Client) WriteBody(body *aiot.Protocol) error {
 	body.Receiver = aiot.RECEIVER_TO_SAAS
-	logger.Debug("Send msg...", zap.Any("msg", body), zap.Any("msg", body), zap.Any("reqType", body.ReqType), zap.Any("msgType", body.MsgType))
+	c.logger.Debug("Send msg...", zap.Any("msg", body), zap.Any("msg", body), zap.Any("reqType", body.ReqType), zap.Any("msgType", body.MsgType))
 	msgData, err := json.Marshal(body)
 	if err != nil {
-		logger.Error("Fail to Marshal send data", zap.Error(err))
+		c.logger.Error("Fail to Marshal send data", zap.Error(err))
 		return err
 	}
 	c.msgLock.Lock()
@@ -252,18 +254,18 @@
 
 // 鍙戦�佹敞鍐屽寘
 func (c *Client) writeRegister() {
-	logger.Debug("registering...")
+	c.logger.Debug("registering...")
 	data := c.deviceRegister
 	msgData, _ := json.Marshal(data)
 	_, err := c.WriteMsg(c.deviceId, aiot.MSG_TYPE_REGISTER, aiot.REQ_TYPE_REQUEST, msgData, c.GetMsgProto(""))
 	if err != nil {
-		logger.Error("Fail to send device register", zap.Any("msg", msgData))
+		c.logger.Error("Fail to send device register", zap.Any("msg", msgData))
 	}
 }
 
 // 鍙戦�佸績璺冲寘
 func (c *Client) writeHeartBeat() {
-	logger.Debug("Start HeartBeating...",zap.String("addr", c.addr))
+	c.logger.Debug("Start HeartBeating...",zap.String("addr", c.addr))
 	pingData, _ := json.Marshal(c.heartBeatProto)
 	t := time.NewTicker(DefaultHeartbeatInterval)
 	defer func() {
@@ -296,7 +298,7 @@
 			if err == io.EOF {
 				err = nil
 			} else {
-				logger.Error("Fail to read request", zap.Error(err))
+				c.logger.Error("Fail to read request", zap.Error(err))
 				c.Close()
 				return
 			}
@@ -304,7 +306,7 @@
 		}
 		length = binary.BigEndian.Uint32(c.tmpByte4Slice)
 		if length > DefaultBufferSize {
-			logger.Error("Fail to read request data from io", zap.Uint32("length",length))
+			c.logger.Error("Fail to read request data from io", zap.Uint32("length",length))
 		}
 		// 璇诲彇body
 		bodyByte := make([]byte, length)
@@ -314,21 +316,21 @@
 		body := &aiot.Protocol{}
 		err = json.Unmarshal(bodyByte, body)
 		if err != nil {
-			logger.Error("Fail to unmarshal message", zap.Error(err), zap.String("msg", string(bodyByte)))
+			c.logger.Error("Fail to unmarshal message", zap.Error(err), zap.String("msg", string(bodyByte)))
 		}
-		logger.Debug("Read msg...", zap.Any("msg", body), zap.Any("reqType", body.ReqType), zap.Any("msgType", body.MsgType))
+		c.logger.Debug("Read msg...", zap.Any("msg", body), zap.Any("reqType", body.ReqType), zap.Any("msgType", body.MsgType))
 		// 澶勭悊鍥炶皟
 		c.onMessage(body)
 	}
 
-	logger.Warn("ReadLoop Done...")
+	c.logger.Warn("ReadLoop Done...")
 }
 
 // 澶勭悊鍥炶皟
 func (c *Client) onMessage (body *aiot.Protocol) {
 	// 鏈皝瑁卌allback锛屽彧鍐欐棩蹇�
 	if c.clientCallback == nil {
-		logger.Warn("ClientCallBack interface is nil...", zap.String("addr", c.addr), zap.Any("body", body))
+		c.logger.Warn("ClientCallBack interface is nil...", zap.String("addr", c.addr), zap.Any("body", body))
 		return
 	}
 
@@ -409,7 +411,7 @@
 
 // 鍏抽棴TCP
 func (c *Client) Close() {
-	logger.Debug("Closing connect", zap.String("addr", c.addr))
+	c.logger.Debug("Closing connect", zap.String("addr", c.addr))
 	c.closeLock.Lock()
 	defer c.closeLock.Unlock()
 

--
Gitblit v1.8.0