mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-08-20 10:52:25 +00:00
address feedback: make diff smaller by adding backward-compatible log levels and logger interface method
This commit is contained in:
parent
0d145d224f
commit
7045f6ed72
18 changed files with 49 additions and 33 deletions
|
|
@ -45,7 +45,7 @@ func main() {
|
||||||
natdesc = flag.String("nat", "none", "port mapping mechanism (any|none|upnp|pmp|pmp:<IP>|extip:<IP>)")
|
natdesc = flag.String("nat", "none", "port mapping mechanism (any|none|upnp|pmp|pmp:<IP>|extip:<IP>)")
|
||||||
netrestrict = flag.String("netrestrict", "", "restrict network communication to the given IP networks (CIDR masks)")
|
netrestrict = flag.String("netrestrict", "", "restrict network communication to the given IP networks (CIDR masks)")
|
||||||
runv5 = flag.Bool("v5", false, "run a v5 topic discovery bootnode")
|
runv5 = flag.Bool("v5", false, "run a v5 topic discovery bootnode")
|
||||||
verbosity = flag.Int("verbosity", int(log.LevelInfo), "log verbosity (0-5)")
|
verbosity = flag.Int("verbosity", int(log.LvlInfo), "log verbosity (0-5)")
|
||||||
vmodule = flag.String("vmodule", "", "log verbosity pattern")
|
vmodule = flag.String("vmodule", "", "log verbosity pattern")
|
||||||
|
|
||||||
nodeKey *ecdsa.PrivateKey
|
nodeKey *ecdsa.PrivateKey
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@ func blockTestCmd(ctx *cli.Context) error {
|
||||||
if len(ctx.Args().First()) == 0 {
|
if len(ctx.Args().First()) == 0 {
|
||||||
return errors.New("path-to-test argument required")
|
return errors.New("path-to-test argument required")
|
||||||
}
|
}
|
||||||
|
|
||||||
var tracer vm.EVMLogger
|
var tracer vm.EVMLogger
|
||||||
// Configure the EVM logger
|
// Configure the EVM logger
|
||||||
if ctx.Bool(MachineFlag.Name) {
|
if ctx.Bool(MachineFlag.Name) {
|
||||||
|
|
|
||||||
|
|
@ -2438,7 +2438,7 @@ func (s *Syncer) OnAccounts(peer SyncPeer, id uint64, hashes []common.Hash, acco
|
||||||
for _, node := range proof {
|
for _, node := range proof {
|
||||||
size += common.StorageSize(len(node))
|
size += common.StorageSize(len(node))
|
||||||
}
|
}
|
||||||
logger := peer.Log().With("reqid", id)
|
logger := peer.Log().New("reqid", id)
|
||||||
logger.Trace("Delivering range of accounts", "hashes", len(hashes), "accounts", len(accounts), "proofs", len(proof), "bytes", size)
|
logger.Trace("Delivering range of accounts", "hashes", len(hashes), "accounts", len(accounts), "proofs", len(proof), "bytes", size)
|
||||||
|
|
||||||
// Whether or not the response is valid, we can mark the peer as idle and
|
// Whether or not the response is valid, we can mark the peer as idle and
|
||||||
|
|
@ -2548,7 +2548,7 @@ func (s *Syncer) onByteCodes(peer SyncPeer, id uint64, bytecodes [][]byte) error
|
||||||
for _, code := range bytecodes {
|
for _, code := range bytecodes {
|
||||||
size += common.StorageSize(len(code))
|
size += common.StorageSize(len(code))
|
||||||
}
|
}
|
||||||
logger := peer.Log().With("reqid", id)
|
logger := peer.Log().New("reqid", id)
|
||||||
logger.Trace("Delivering set of bytecodes", "bytecodes", len(bytecodes), "bytes", size)
|
logger.Trace("Delivering set of bytecodes", "bytecodes", len(bytecodes), "bytes", size)
|
||||||
|
|
||||||
// Whether or not the response is valid, we can mark the peer as idle and
|
// Whether or not the response is valid, we can mark the peer as idle and
|
||||||
|
|
@ -2661,7 +2661,7 @@ func (s *Syncer) OnStorage(peer SyncPeer, id uint64, hashes [][]common.Hash, slo
|
||||||
for _, node := range proof {
|
for _, node := range proof {
|
||||||
size += common.StorageSize(len(node))
|
size += common.StorageSize(len(node))
|
||||||
}
|
}
|
||||||
logger := peer.Log().With("reqid", id)
|
logger := peer.Log().New("reqid", id)
|
||||||
logger.Trace("Delivering ranges of storage slots", "accounts", len(hashes), "hashes", hashCount, "slots", slotCount, "proofs", len(proof), "size", size)
|
logger.Trace("Delivering ranges of storage slots", "accounts", len(hashes), "hashes", hashCount, "slots", slotCount, "proofs", len(proof), "size", size)
|
||||||
|
|
||||||
// Whether or not the response is valid, we can mark the peer as idle and
|
// Whether or not the response is valid, we can mark the peer as idle and
|
||||||
|
|
@ -2795,7 +2795,7 @@ func (s *Syncer) OnTrieNodes(peer SyncPeer, id uint64, trienodes [][]byte) error
|
||||||
for _, node := range trienodes {
|
for _, node := range trienodes {
|
||||||
size += common.StorageSize(len(node))
|
size += common.StorageSize(len(node))
|
||||||
}
|
}
|
||||||
logger := peer.Log().With("reqid", id)
|
logger := peer.Log().New("reqid", id)
|
||||||
logger.Trace("Delivering set of healing trienodes", "trienodes", len(trienodes), "bytes", size)
|
logger.Trace("Delivering set of healing trienodes", "trienodes", len(trienodes), "bytes", size)
|
||||||
|
|
||||||
// Whether or not the response is valid, we can mark the peer as idle and
|
// Whether or not the response is valid, we can mark the peer as idle and
|
||||||
|
|
@ -2902,7 +2902,7 @@ func (s *Syncer) onHealByteCodes(peer SyncPeer, id uint64, bytecodes [][]byte) e
|
||||||
for _, code := range bytecodes {
|
for _, code := range bytecodes {
|
||||||
size += common.StorageSize(len(code))
|
size += common.StorageSize(len(code))
|
||||||
}
|
}
|
||||||
logger := peer.Log().With("reqid", id)
|
logger := peer.Log().New("reqid", id)
|
||||||
logger.Trace("Delivering set of healing bytecodes", "bytecodes", len(bytecodes), "bytes", size)
|
logger.Trace("Delivering set of healing bytecodes", "bytecodes", len(bytecodes), "bytes", size)
|
||||||
|
|
||||||
// Whether or not the response is valid, we can mark the peer as idle and
|
// Whether or not the response is valid, we can mark the peer as idle and
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,7 @@ var (
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
glogger = log.NewGlogHandler(log.TerminalHandler(os.Stderr, false))
|
glogger = log.NewGlogHandler(log.TerminalHandler(os.Stderr, false))
|
||||||
glogger.Verbosity(log.LevelInfo)
|
glogger.Verbosity(log.LvlInfo)
|
||||||
log.SetDefault(log.NewLogger(glogger))
|
log.SetDefault(log.NewLogger(glogger))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -204,7 +204,6 @@ func Setup(ctx *cli.Context) error {
|
||||||
} else {
|
} else {
|
||||||
context = append(context, "format", "terminal")
|
context = append(context, "format", "terminal")
|
||||||
}
|
}
|
||||||
|
|
||||||
if rotation {
|
if rotation {
|
||||||
// Lumberjack uses <processname>-lumberjack.log in is.TempDir() if empty.
|
// Lumberjack uses <processname>-lumberjack.log in is.TempDir() if empty.
|
||||||
// so typically /tmp/geth-lumberjack.log on linux
|
// so typically /tmp/geth-lumberjack.log on linux
|
||||||
|
|
|
||||||
|
|
@ -157,6 +157,10 @@ func (l *logger) With(ctx ...interface{}) log.Logger {
|
||||||
return &logger{l.t, l.l.With(ctx...), l.mu, l.h}
|
return &logger{l.t, l.l.With(ctx...), l.mu, l.h}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (l *logger) New(ctx ...interface{}) log.Logger {
|
||||||
|
return l.With(ctx...)
|
||||||
|
}
|
||||||
|
|
||||||
// flush writes all buffered messages and clears the buffer.
|
// flush writes all buffered messages and clears the buffer.
|
||||||
func (l *logger) flush() {
|
func (l *logger) flush() {
|
||||||
l.t.Helper()
|
l.t.Helper()
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,11 @@ const (
|
||||||
LevelWarn = slog.LevelWarn
|
LevelWarn = slog.LevelWarn
|
||||||
LevelError = slog.LevelError
|
LevelError = slog.LevelError
|
||||||
LevelCrit slog.Level = 12
|
LevelCrit slog.Level = 12
|
||||||
|
|
||||||
|
// for backward-compatibility
|
||||||
|
LvlTrace = LevelTrace
|
||||||
|
LvlInfo = LevelInfo
|
||||||
|
LvlDebug = LevelDebug
|
||||||
)
|
)
|
||||||
|
|
||||||
// convert from old Geth verbosity level constants
|
// convert from old Geth verbosity level constants
|
||||||
|
|
@ -108,6 +113,9 @@ type Logger interface {
|
||||||
// With returns a new Logger that has this logger's attributes plus the given attributes
|
// With returns a new Logger that has this logger's attributes plus the given attributes
|
||||||
With(ctx ...interface{}) Logger
|
With(ctx ...interface{}) Logger
|
||||||
|
|
||||||
|
// With returns a new Logger that has this logger's attributes plus the given attributes. Identical to 'With'.
|
||||||
|
New(ctx ...interface{}) Logger
|
||||||
|
|
||||||
// Log logs a message at the specified level with context key/value pairs
|
// Log logs a message at the specified level with context key/value pairs
|
||||||
Log(level slog.Level, msg string, ctx ...interface{})
|
Log(level slog.Level, msg string, ctx ...interface{})
|
||||||
|
|
||||||
|
|
@ -196,6 +204,10 @@ func (l *logger) With(ctx ...interface{}) Logger {
|
||||||
return &logger{l.inner.With(ctx...)}
|
return &logger{l.inner.With(ctx...)}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (l *logger) New(ctx ...interface{}) Logger {
|
||||||
|
return l.With(ctx...)
|
||||||
|
}
|
||||||
|
|
||||||
func (l *logger) Trace(msg string, ctx ...interface{}) {
|
func (l *logger) Trace(msg string, ctx ...interface{}) {
|
||||||
l.write(LevelTrace, msg, ctx...)
|
l.write(LevelTrace, msg, ctx...)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -241,7 +241,7 @@ func createAndStartServer(t *testing.T, conf *httpConfig, ws bool, wsConf *wsCon
|
||||||
if timeouts == nil {
|
if timeouts == nil {
|
||||||
timeouts = &rpc.DefaultHTTPTimeouts
|
timeouts = &rpc.DefaultHTTPTimeouts
|
||||||
}
|
}
|
||||||
srv := newHTTPServer(testlog.Logger(t, log.LevelDebug), *timeouts)
|
srv := newHTTPServer(testlog.Logger(t, log.LvlDebug), *timeouts)
|
||||||
assert.NoError(t, srv.enableRPC(apis(), *conf))
|
assert.NoError(t, srv.enableRPC(apis(), *conf))
|
||||||
if ws {
|
if ws {
|
||||||
assert.NoError(t, srv.enableWS(nil, *wsConf))
|
assert.NoError(t, srv.enableWS(nil, *wsConf))
|
||||||
|
|
|
||||||
|
|
@ -422,7 +422,7 @@ func runDialTest(t *testing.T, config dialConfig, rounds []dialTestRound) {
|
||||||
config.clock = clock
|
config.clock = clock
|
||||||
config.dialer = dialer
|
config.dialer = dialer
|
||||||
config.resolver = resolver
|
config.resolver = resolver
|
||||||
config.log = testlog.Logger(t, log.LevelTrace)
|
config.log = testlog.Logger(t, log.LvlTrace)
|
||||||
config.rand = rand.New(rand.NewSource(0x1111))
|
config.rand = rand.New(rand.NewSource(0x1111))
|
||||||
|
|
||||||
// Set up the dialer. The setup function below runs on the dialTask
|
// Set up the dialer. The setup function below runs on the dialTask
|
||||||
|
|
|
||||||
|
|
@ -74,7 +74,7 @@ func newUDPTest(t *testing.T) *udpTest {
|
||||||
ln := enode.NewLocalNode(test.db, test.localkey)
|
ln := enode.NewLocalNode(test.db, test.localkey)
|
||||||
test.udp, _ = ListenV4(test.pipe, ln, Config{
|
test.udp, _ = ListenV4(test.pipe, ln, Config{
|
||||||
PrivateKey: test.localkey,
|
PrivateKey: test.localkey,
|
||||||
Log: testlog.Logger(t, log.LevelTrace),
|
Log: testlog.Logger(t, log.LvlTrace),
|
||||||
})
|
})
|
||||||
test.table = test.udp.tab
|
test.table = test.udp.tab
|
||||||
// Wait for initial refresh so the table doesn't send unexpected findnode.
|
// Wait for initial refresh so the table doesn't send unexpected findnode.
|
||||||
|
|
|
||||||
|
|
@ -769,7 +769,7 @@ func newUDPV5Test(t *testing.T) *udpV5Test {
|
||||||
ln.Set(enr.UDP(30303))
|
ln.Set(enr.UDP(30303))
|
||||||
test.udp, _ = ListenV5(test.pipe, ln, Config{
|
test.udp, _ = ListenV5(test.pipe, ln, Config{
|
||||||
PrivateKey: test.localkey,
|
PrivateKey: test.localkey,
|
||||||
Log: testlog.Logger(t, log.LevelTrace),
|
Log: testlog.Logger(t, log.LvlTrace),
|
||||||
ValidSchemes: enode.ValidSchemesForTesting,
|
ValidSchemes: enode.ValidSchemesForTesting,
|
||||||
})
|
})
|
||||||
test.udp.codec = &testCodec{test: test, id: ln.ID()}
|
test.udp.codec = &testCodec{test: test, id: ln.ID()}
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@ func TestClientSyncTree(t *testing.T) {
|
||||||
wantSeq = uint(1)
|
wantSeq = uint(1)
|
||||||
)
|
)
|
||||||
|
|
||||||
c := NewClient(Config{Resolver: r, Logger: testlog.Logger(t, log.LevelTrace)})
|
c := NewClient(Config{Resolver: r, Logger: testlog.Logger(t, log.LvlTrace)})
|
||||||
stree, err := c.SyncTree("enrtree://AKPYQIUQIL7PSIACI32J7FGZW56E5FKHEFCCOFHILBIMW3M6LWXS2@n")
|
stree, err := c.SyncTree("enrtree://AKPYQIUQIL7PSIACI32J7FGZW56E5FKHEFCCOFHILBIMW3M6LWXS2@n")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal("sync error:", err)
|
t.Fatal("sync error:", err)
|
||||||
|
|
@ -91,7 +91,7 @@ func TestClientSyncTreeBadNode(t *testing.T) {
|
||||||
"C7HRFPF3BLGF3YR4DY5KX3SMBE.n": "enrtree://AM5FCQLWIZX2QFPNJAP7VUERCCRNGRHWZG3YYHIUV7BVDQ5FDPRT2@morenodes.example.org",
|
"C7HRFPF3BLGF3YR4DY5KX3SMBE.n": "enrtree://AM5FCQLWIZX2QFPNJAP7VUERCCRNGRHWZG3YYHIUV7BVDQ5FDPRT2@morenodes.example.org",
|
||||||
"INDMVBZEEQ4ESVYAKGIYU74EAA.n": "enr:-----",
|
"INDMVBZEEQ4ESVYAKGIYU74EAA.n": "enr:-----",
|
||||||
}
|
}
|
||||||
c := NewClient(Config{Resolver: r, Logger: testlog.Logger(t, log.LevelTrace)})
|
c := NewClient(Config{Resolver: r, Logger: testlog.Logger(t, log.LvlTrace)})
|
||||||
_, err := c.SyncTree("enrtree://AKPYQIUQIL7PSIACI32J7FGZW56E5FKHEFCCOFHILBIMW3M6LWXS2@n")
|
_, err := c.SyncTree("enrtree://AKPYQIUQIL7PSIACI32J7FGZW56E5FKHEFCCOFHILBIMW3M6LWXS2@n")
|
||||||
wantErr := nameError{name: "INDMVBZEEQ4ESVYAKGIYU74EAA.n", err: entryError{typ: "enr", err: errInvalidENR}}
|
wantErr := nameError{name: "INDMVBZEEQ4ESVYAKGIYU74EAA.n", err: entryError{typ: "enr", err: errInvalidENR}}
|
||||||
if err != wantErr {
|
if err != wantErr {
|
||||||
|
|
@ -110,7 +110,7 @@ func TestIterator(t *testing.T) {
|
||||||
|
|
||||||
c := NewClient(Config{
|
c := NewClient(Config{
|
||||||
Resolver: r,
|
Resolver: r,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
})
|
})
|
||||||
it, err := c.NewIterator(url)
|
it, err := c.NewIterator(url)
|
||||||
|
|
@ -174,7 +174,7 @@ func TestIteratorLinks(t *testing.T) {
|
||||||
|
|
||||||
c := NewClient(Config{
|
c := NewClient(Config{
|
||||||
Resolver: newMapResolver(tree1.ToTXT("t1"), tree2.ToTXT("t2")),
|
Resolver: newMapResolver(tree1.ToTXT("t1"), tree2.ToTXT("t2")),
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
})
|
})
|
||||||
it, err := c.NewIterator(url2)
|
it, err := c.NewIterator(url2)
|
||||||
|
|
@ -195,7 +195,7 @@ func TestIteratorNodeUpdates(t *testing.T) {
|
||||||
resolver = newMapResolver()
|
resolver = newMapResolver()
|
||||||
c = NewClient(Config{
|
c = NewClient(Config{
|
||||||
Resolver: resolver,
|
Resolver: resolver,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RecheckInterval: 20 * time.Minute,
|
RecheckInterval: 20 * time.Minute,
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
})
|
})
|
||||||
|
|
@ -233,7 +233,7 @@ func TestIteratorRootRecheckOnFail(t *testing.T) {
|
||||||
resolver = newMapResolver()
|
resolver = newMapResolver()
|
||||||
c = NewClient(Config{
|
c = NewClient(Config{
|
||||||
Resolver: resolver,
|
Resolver: resolver,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RecheckInterval: 20 * time.Minute,
|
RecheckInterval: 20 * time.Minute,
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
// Disabling the cache is required for this test because the client doesn't
|
// Disabling the cache is required for this test because the client doesn't
|
||||||
|
|
@ -271,7 +271,7 @@ func TestIteratorEmptyTree(t *testing.T) {
|
||||||
resolver = newMapResolver()
|
resolver = newMapResolver()
|
||||||
c = NewClient(Config{
|
c = NewClient(Config{
|
||||||
Resolver: resolver,
|
Resolver: resolver,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RecheckInterval: 20 * time.Minute,
|
RecheckInterval: 20 * time.Minute,
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
})
|
})
|
||||||
|
|
@ -332,7 +332,7 @@ func TestIteratorLinkUpdates(t *testing.T) {
|
||||||
resolver = newMapResolver()
|
resolver = newMapResolver()
|
||||||
c = NewClient(Config{
|
c = NewClient(Config{
|
||||||
Resolver: resolver,
|
Resolver: resolver,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
RecheckInterval: 20 * time.Minute,
|
RecheckInterval: 20 * time.Minute,
|
||||||
RateLimit: 500,
|
RateLimit: 500,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -235,7 +235,7 @@ func newPeer(log log.Logger, conn *conn, protocols []Protocol) *Peer {
|
||||||
protoErr: make(chan error, len(protomap)+1), // protocols + pingLoop
|
protoErr: make(chan error, len(protomap)+1), // protocols + pingLoop
|
||||||
closed: make(chan struct{}),
|
closed: make(chan struct{}),
|
||||||
pingRecv: make(chan struct{}, 16),
|
pingRecv: make(chan struct{}, 16),
|
||||||
log: log.With("id", conn.node.ID(), "conn", conn.flags),
|
log: log.New("id", conn.node.ID(), "conn", conn.flags),
|
||||||
}
|
}
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -977,7 +977,7 @@ func (srv *Server) setupConn(c *conn, flags connFlag, dialDest *enode.Node) erro
|
||||||
} else {
|
} else {
|
||||||
c.node = nodeFromConn(remotePubkey, c.fd)
|
c.node = nodeFromConn(remotePubkey, c.fd)
|
||||||
}
|
}
|
||||||
clog := srv.log.With("id", c.node.ID(), "addr", c.fd.RemoteAddr(), "conn", c.flags)
|
clog := srv.log.New("id", c.node.ID(), "addr", c.fd.RemoteAddr(), "conn", c.flags)
|
||||||
err = srv.checkpoint(c, srv.checkpointPostHandshake)
|
err = srv.checkpoint(c, srv.checkpointPostHandshake)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
clog.Trace("Rejected peer", "err", err)
|
clog.Trace("Rejected peer", "err", err)
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ func TestServerPortMapping(t *testing.T) {
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
ListenAddr: ":0",
|
ListenAddr: ":0",
|
||||||
NAT: mockNAT,
|
NAT: mockNAT,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
clock: clock,
|
clock: clock,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -75,7 +75,7 @@ func startTestServer(t *testing.T, remoteKey *ecdsa.PublicKey, pf func(*Peer)) *
|
||||||
ListenAddr: "127.0.0.1:0",
|
ListenAddr: "127.0.0.1:0",
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
PrivateKey: newkey(),
|
PrivateKey: newkey(),
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
}
|
}
|
||||||
server := &Server{
|
server := &Server{
|
||||||
Config: config,
|
Config: config,
|
||||||
|
|
@ -211,7 +211,7 @@ func TestServerRemovePeerDisconnect(t *testing.T) {
|
||||||
PrivateKey: newkey(),
|
PrivateKey: newkey(),
|
||||||
MaxPeers: 1,
|
MaxPeers: 1,
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
Logger: testlog.Logger(t, log.LevelTrace).With("server", "1"),
|
Logger: testlog.Logger(t, log.LvlTrace).New("server", "1"),
|
||||||
}}
|
}}
|
||||||
srv2 := &Server{Config: Config{
|
srv2 := &Server{Config: Config{
|
||||||
PrivateKey: newkey(),
|
PrivateKey: newkey(),
|
||||||
|
|
@ -219,7 +219,7 @@ func TestServerRemovePeerDisconnect(t *testing.T) {
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
ListenAddr: "127.0.0.1:0",
|
ListenAddr: "127.0.0.1:0",
|
||||||
Logger: testlog.Logger(t, log.LevelTrace).With("server", "2"),
|
Logger: testlog.Logger(t, log.LvlTrace).New("server", "2"),
|
||||||
}}
|
}}
|
||||||
srv1.Start()
|
srv1.Start()
|
||||||
defer srv1.Stop()
|
defer srv1.Stop()
|
||||||
|
|
@ -255,7 +255,7 @@ func TestServerAtCap(t *testing.T) {
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
TrustedNodes: []*enode.Node{newNode(trustedID, "")},
|
TrustedNodes: []*enode.Node{newNode(trustedID, "")},
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
if err := srv.Start(); err != nil {
|
if err := srv.Start(); err != nil {
|
||||||
|
|
@ -331,7 +331,7 @@ func TestServerPeerLimits(t *testing.T) {
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
Protocols: []Protocol{discard},
|
Protocols: []Protocol{discard},
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
},
|
},
|
||||||
newTransport: func(fd net.Conn, dialDest *ecdsa.PublicKey) transport { return tp },
|
newTransport: func(fd net.Conn, dialDest *ecdsa.PublicKey) transport { return tp },
|
||||||
}
|
}
|
||||||
|
|
@ -438,7 +438,7 @@ func TestServerSetupConn(t *testing.T) {
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
Protocols: []Protocol{discard},
|
Protocols: []Protocol{discard},
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
}
|
}
|
||||||
srv := &Server{
|
srv := &Server{
|
||||||
Config: cfg,
|
Config: cfg,
|
||||||
|
|
@ -525,7 +525,7 @@ func TestServerInboundThrottle(t *testing.T) {
|
||||||
NoDial: true,
|
NoDial: true,
|
||||||
NoDiscovery: true,
|
NoDiscovery: true,
|
||||||
Protocols: []Protocol{discard},
|
Protocols: []Protocol{discard},
|
||||||
Logger: testlog.Logger(t, log.LevelTrace),
|
Logger: testlog.Logger(t, log.LvlTrace),
|
||||||
},
|
},
|
||||||
newTransport: func(fd net.Conn, dialDest *ecdsa.PublicKey) transport {
|
newTransport: func(fd net.Conn, dialDest *ecdsa.PublicKey) transport {
|
||||||
newTransportCalled <- struct{}{}
|
newTransportCalled <- struct{}{}
|
||||||
|
|
|
||||||
|
|
@ -228,7 +228,7 @@ func RandomNodeConfig() *NodeConfig {
|
||||||
Name: fmt.Sprintf("node_%s", enodId.String()),
|
Name: fmt.Sprintf("node_%s", enodId.String()),
|
||||||
Port: port,
|
Port: port,
|
||||||
EnableMsgEvents: true,
|
EnableMsgEvents: true,
|
||||||
LogVerbosity: log.LevelInfo,
|
LogVerbosity: log.LvlInfo,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -137,7 +137,7 @@ const (
|
||||||
// Run implements the ping-pong protocol which sends ping messages to the peer
|
// Run implements the ping-pong protocol which sends ping messages to the peer
|
||||||
// at 10s intervals, and responds to pings with pong messages.
|
// at 10s intervals, and responds to pings with pong messages.
|
||||||
func (p *pingPongService) Run(peer *p2p.Peer, rw p2p.MsgReadWriter) error {
|
func (p *pingPongService) Run(peer *p2p.Peer, rw p2p.MsgReadWriter) error {
|
||||||
log := p.log.With("peer.id", peer.ID())
|
log := p.log.New("peer.id", peer.ID())
|
||||||
|
|
||||||
errC := make(chan error, 1)
|
errC := make(chan error, 1)
|
||||||
go func() {
|
go func() {
|
||||||
|
|
|
||||||
|
|
@ -89,7 +89,7 @@ func newHandler(connCtx context.Context, conn jsonWriter, idgen func() ID, reg *
|
||||||
batchResponseMaxSize: batchResponseMaxSize,
|
batchResponseMaxSize: batchResponseMaxSize,
|
||||||
}
|
}
|
||||||
if conn.remoteAddr() != "" {
|
if conn.remoteAddr() != "" {
|
||||||
h.log = h.log.With("conn", conn.remoteAddr())
|
h.log = h.log.New("conn", conn.remoteAddr())
|
||||||
}
|
}
|
||||||
h.unsubscribeCb = newCallback(reflect.Value{}, reflect.ValueOf(h.unsubscribe))
|
h.unsubscribeCb = newCallback(reflect.Value{}, reflect.ValueOf(h.unsubscribe))
|
||||||
return h
|
return h
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue