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