@@ -20,6 +20,7 @@ import (
2020 "github.com/libp2p/go-msgio"
2121 "go.opencensus.io/stats"
2222 "go.opencensus.io/tag"
23+ "go.uber.org/zap"
2324)
2425
2526var dhtReadMessageTimeout = 10 * time .Second
@@ -97,8 +98,9 @@ func (dht *IpfsDHT) handleNewMessage(s network.Stream) bool {
9798 }
9899 // This string test is necessary because there isn't a single stream reset error
99100 // instance in use.
100- if err .Error () != "stream reset" {
101- logger .Debugf ("error reading message: %#v" , err )
101+ if c := baseLogger .Check (zap .DebugLevel , "error reading message" ); c != nil && err .Error () != "stream reset" {
102+ c .Write (zap .String ("from" , mPeer .String ()),
103+ zap .Error (err ))
102104 }
103105 if msgLen > 0 {
104106 _ = stats .RecordWithTags (ctx ,
@@ -113,7 +115,10 @@ func (dht *IpfsDHT) handleNewMessage(s network.Stream) bool {
113115 err = req .Unmarshal (msgbytes )
114116 r .ReleaseMsg (msgbytes )
115117 if err != nil {
116- logger .Debugf ("error unmarshaling message: %#v" , err )
118+ if c := baseLogger .Check (zap .DebugLevel , "error unmarshaling message" ); c != nil {
119+ c .Write (zap .String ("from" , mPeer .String ()),
120+ zap .Error (err ))
121+ }
117122 _ = stats .RecordWithTags (ctx ,
118123 []tag.Mutator {tag .Upsert (metrics .KeyMessageType , "UNKNOWN" )},
119124 metrics .ReceivedMessages .M (1 ),
@@ -138,37 +143,39 @@ func (dht *IpfsDHT) handleNewMessage(s network.Stream) bool {
138143 handler := dht .handlerForMsgType (req .GetType ())
139144 if handler == nil {
140145 stats .Record (ctx , metrics .ReceivedMessageErrors .M (1 ))
141- logger .Warnw ("can't handle received message" , "from" , mPeer , "type" , req .GetType ())
146+ if c := baseLogger .Check (zap .DebugLevel , "can't handle received message" ); c != nil {
147+ c .Write (zap .String ("from" , mPeer .String ()),
148+ zap .Int32 ("type" , int32 (req .GetType ())))
149+ }
142150 return false
143151 }
144152
145153 // a peer has queried us, let's add it to RT
146154 dht .peerFound (dht .ctx , mPeer , true )
147155
148- logger . Debugw ( "handling message" ,
149- "type " , req . GetType ( ),
150- "key " , req .GetKey ( ),
151- "from " , mPeer ,
152- )
156+ if c := baseLogger . Check ( zap . DebugLevel , "handling message" ); c != nil {
157+ c . Write ( zap . String ( "from " , mPeer . String () ),
158+ zap . Int32 ( "type " , int32 ( req .GetType ()) ),
159+ zap . Binary ( "key " , req . GetKey ()))
160+ }
153161 resp , err := handler (ctx , mPeer , & req )
154162 if err != nil {
155163 stats .Record (ctx , metrics .ReceivedMessageErrors .M (1 ))
156- logger . Debugw (
157- "error handling message" ,
158- "type" , req .GetType (),
159- "key" , req .GetKey (),
160- "from" , mPeer ,
161- "error" , err )
164+ if c := baseLogger . Check ( zap . DebugLevel , "error handling message" ); c != nil {
165+ c . Write ( zap . String ( "from" , mPeer . String ()) ,
166+ zap . Int32 ( "type" , int32 ( req .GetType ()) ),
167+ zap . Binary ( "key" , req .GetKey () ),
168+ zap . Error ( err ))
169+ }
162170 return false
163171 }
164172
165- logger .Debugw (
166- "handled message" ,
167- "type" , req .GetType (),
168- "key" , req .GetKey (),
169- "from" , mPeer ,
170- "time" , time .Since (startTime ),
171- )
173+ if c := baseLogger .Check (zap .DebugLevel , "handled message" ); c != nil {
174+ c .Write (zap .String ("from" , mPeer .String ()),
175+ zap .Int32 ("type" , int32 (req .GetType ())),
176+ zap .Binary ("key" , req .GetKey ()),
177+ zap .Duration ("time" , time .Since (startTime )))
178+ }
172179
173180 if resp == nil {
174181 continue
@@ -178,24 +185,23 @@ func (dht *IpfsDHT) handleNewMessage(s network.Stream) bool {
178185 err = writeMsg (s , resp )
179186 if err != nil {
180187 stats .Record (ctx , metrics .ReceivedMessageErrors .M (1 ))
181- logger . Debugw (
182- "error writing response" ,
183- "type" , req .GetType (),
184- "key" , req .GetKey (),
185- "from" , mPeer ,
186- "error" , err )
188+ if c := baseLogger . Check ( zap . DebugLevel , "error writing response" ); c != nil {
189+ c . Write ( zap . String ( "from" , mPeer . String ()) ,
190+ zap . Int32 ( "type" , int32 ( req .GetType ()) ),
191+ zap . Binary ( "key" , req .GetKey () ),
192+ zap . Error ( err ))
193+ }
187194 return false
188195 }
189196
190197 elapsedTime := time .Since (startTime )
191198
192- logger .Debugw (
193- "responded to message" ,
194- "type" , req .GetType (),
195- "key" , req .GetKey (),
196- "from" , mPeer ,
197- "time" , elapsedTime ,
198- )
199+ if c := baseLogger .Check (zap .DebugLevel , "responded to message" ); c != nil {
200+ c .Write (zap .String ("from" , mPeer .String ()),
201+ zap .Int32 ("type" , int32 (req .GetType ())),
202+ zap .Binary ("key" , req .GetKey ()),
203+ zap .Duration ("time" , elapsedTime ))
204+ }
199205
200206 latencyMillis := float64 (elapsedTime ) / float64 (time .Millisecond )
201207 stats .Record (ctx , metrics .InboundRequestLatency .M (latencyMillis ))
0 commit comments