From 4c8b64d2a62b78e635a50f8c57c170681a542b30 Mon Sep 17 00:00:00 2001 From: Conner Fromknecht Date: Fri, 4 Jan 2019 17:34:58 -0800 Subject: [PATCH 1/2] netann/log: add NANN logger --- netann/log.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 netann/log.go diff --git a/netann/log.go b/netann/log.go new file mode 100644 index 00000000..f19e212c --- /dev/null +++ b/netann/log.go @@ -0,0 +1,45 @@ +package netann + +import ( + "github.com/btcsuite/btclog" + "github.com/lightningnetwork/lnd/build" +) + +// log is a logger that is initialized with no output filters. This means the +// package will not perform any logging by default until the caller requests +// it. +var log btclog.Logger + +// The default amount of logging is none. +func init() { + UseLogger(build.NewSubLogger("NANN", nil)) +} + +// DisableLog disables all library log output. Logging output is disabled by +// by default until UseLogger is called. +func DisableLog() { + UseLogger(btclog.Disabled) +} + +// UseLogger uses a specified Logger to output package logging info. This +// should be used in preference to SetLogWriter if the caller is also using +// btclog. +func UseLogger(logger btclog.Logger) { + log = logger +} + +// logClosure is used to provide a closure over expensive logging operations so +// don't have to be performed when the logging level doesn't warrant it. +type logClosure func() string + +// String invokes the underlying function and returns the result. +func (c logClosure) String() string { + return c() +} + +// newLogClosure returns a new closure over a function that returns a string +// which itself provides a Stringer interface so that it can be used with the +// logging system. +func newLogClosure(c func() string) logClosure { + return logClosure(c) +} From 97f4f103553d57b65cabdd80e683d92ea37b8070 Mon Sep 17 00:00:00 2001 From: Conner Fromknecht Date: Fri, 4 Jan 2019 17:34:59 -0800 Subject: [PATCH 2/2] log: initialize NANN logger for netann pkg --- log.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/log.go b/log.go index bbde642e..d3f149df 100644 --- a/log.go +++ b/log.go @@ -2,7 +2,6 @@ package main import ( "fmt" - "github.com/lightningnetwork/lnd/invoices" "io" "os" "path/filepath" @@ -20,10 +19,12 @@ import ( "github.com/lightningnetwork/lnd/contractcourt" "github.com/lightningnetwork/lnd/discovery" "github.com/lightningnetwork/lnd/htlcswitch" + "github.com/lightningnetwork/lnd/invoices" "github.com/lightningnetwork/lnd/lnrpc/autopilotrpc" "github.com/lightningnetwork/lnd/lnrpc/signrpc" "github.com/lightningnetwork/lnd/lnrpc/walletrpc" "github.com/lightningnetwork/lnd/lnwallet" + "github.com/lightningnetwork/lnd/netann" "github.com/lightningnetwork/lnd/routing" "github.com/lightningnetwork/lnd/signal" "github.com/lightningnetwork/lnd/sweep" @@ -73,6 +74,7 @@ var ( wlktLog = build.NewSubLogger("WLKT", backendLog.Logger) arpcLog = build.NewSubLogger("ARPC", backendLog.Logger) invcLog = build.NewSubLogger("INVC", backendLog.Logger) + nannLog = build.NewSubLogger("NANN", backendLog.Logger) ) // Initialize package-global logger variables. @@ -94,6 +96,7 @@ func init() { walletrpc.UseLogger(wlktLog) autopilotrpc.UseLogger(arpcLog) invoices.UseLogger(invcLog) + netann.UseLogger(nannLog) } // subsystemLoggers maps each subsystem identifier to its associated logger. @@ -121,6 +124,7 @@ var subsystemLoggers = map[string]btclog.Logger{ "WLKT": wlktLog, "ARPC": arpcLog, "INVC": invcLog, + "NANN": nannLog, } // initLogRotator initializes the logging rotator to write logs to logFile and