p2p, whisper: use glog for peer-level logging

This commit is contained in:
Felix Lange
2015-05-06 23:19:14 +02:00
parent bcfd788661
commit 6a2fec5309
3 changed files with 16 additions and 20 deletions

View File

@ -10,6 +10,7 @@ import (
"time"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/logger/glog"
"github.com/ethereum/go-ethereum/p2p/discover"
"github.com/ethereum/go-ethereum/rlp"
)
@ -34,10 +35,6 @@ const (
// Peer represents a connected remote node.
type Peer struct {
// Peers have all the log methods.
// Use them to display messages related to the peer.
*logger.Logger
conn net.Conn
rw *conn
running map[string]*protoRW
@ -99,10 +96,8 @@ func (p *Peer) String() string {
}
func newPeer(fd net.Conn, conn *conn, protocols []Protocol) *Peer {
logtag := fmt.Sprintf("Peer %.8x %v", conn.ID[:], fd.RemoteAddr())
protomap := matchProtocols(protocols, conn.Caps, conn)
p := &Peer{
Logger: logger.NewLogger(logtag),
conn: fd,
rw: conn,
running: protomap,
@ -130,7 +125,7 @@ func (p *Peer) run() DiscReason {
} else {
// Note: We rely on protocols to abort if there is a write
// error. It might be more robust to handle them here as well.
p.DebugDetailf("Read error: %v\n", err)
glog.V(logger.Detail).Infof("%v: Read error: %v\n", p, err)
reason = DiscNetworkError
}
case err := <-p.protoErr:
@ -141,7 +136,7 @@ func (p *Peer) run() DiscReason {
close(p.closed)
p.politeDisconnect(reason)
p.wg.Wait()
p.Debugf("Disconnected: %v\n", reason)
glog.V(logger.Debug).Infof("%v: Disconnected: %v\n", p, reason)
return reason
}
@ -195,7 +190,7 @@ func (p *Peer) handle(msg Msg) error {
// This is the last message. We don't need to discard or
// check errors because, the connection will be closed after it.
rlp.Decode(msg.Payload, &reason)
p.Debugf("Disconnect requested: %v\n", reason[0])
glog.V(logger.Debug).Infof("%v: Disconnect Requested: %v\n", p, reason[0])
return DiscRequested
case msg.Code < baseProtocolLength:
// ignore other base protocol messages
@ -239,14 +234,14 @@ func (p *Peer) startProtocols() {
for _, proto := range p.running {
proto := proto
proto.closed = p.closed
p.DebugDetailf("Starting protocol %s/%d\n", proto.Name, proto.Version)
glog.V(logger.Detail).Infof("%v: Starting protocol %s/%d\n", p, proto.Name, proto.Version)
go func() {
err := proto.Run(p, proto)
if err == nil {
p.DebugDetailf("Protocol %s/%d returned\n", proto.Name, proto.Version)
glog.V(logger.Detail).Infof("%v: Protocol %s/%d returned\n", p, proto.Name, proto.Version)
err = errors.New("protocol returned")
} else {
p.DebugDetailf("Protocol %s/%d error: %v\n", proto.Name, proto.Version, err)
} else if err != io.EOF {
glog.V(logger.Detail).Infof("%v: Protocol %s/%d error: \n", p, proto.Name, proto.Version, err)
}
p.protoErr <- err
p.wg.Done()