lnd: create logger for fundingManger add closures

This commit is contained in:
Olaoluwa Osuntokun
2016-06-21 11:32:07 -07:00
parent 31e5466692
commit 9c0566cb42

21
log.go
View File

@ -20,6 +20,7 @@ var (
ltndLog = btclog.Disabled ltndLog = btclog.Disabled
lnwlLog = btclog.Disabled lnwlLog = btclog.Disabled
peerLog = btclog.Disabled peerLog = btclog.Disabled
fndgLog = btclog.Disabled
rpcsLog = btclog.Disabled rpcsLog = btclog.Disabled
srvrLog = btclog.Disabled srvrLog = btclog.Disabled
ntfnLog = btclog.Disabled ntfnLog = btclog.Disabled
@ -35,6 +36,7 @@ var subsystemLoggers = map[string]btclog.Logger{
"SRVR": srvrLog, "SRVR": srvrLog,
"NTFN": ntfnLog, "NTFN": ntfnLog,
"CHDB": chdbLog, "CHDB": chdbLog,
"FNDG": fndgLog,
} }
// useLogger updates the logger references for subsystemID to logger. Invalid // useLogger updates the logger references for subsystemID to logger. Invalid
@ -69,6 +71,9 @@ func useLogger(subsystemID string, logger btclog.Logger) {
case "CHDB": case "CHDB":
chdbLog = logger chdbLog = logger
channeldb.UseLogger(logger) channeldb.UseLogger(logger)
case "FNDG":
fndgLog = logger
} }
} }
@ -131,3 +136,19 @@ func setLogLevels(logLevel string) {
setLogLevel(subsystemID, logLevel) setLogLevel(subsystemID, logLevel)
} }
} }
// 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)
}