forked from cerc-io/plugeth
ethlog: use Godoc for code examples in documentation
This ensures that examples will actually compile.
This commit is contained in:
parent
e0f93c74c5
commit
0165c18330
21
ethlog/example_test.go
Normal file
21
ethlog/example_test.go
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
package ethlog
|
||||||
|
|
||||||
|
import "os"
|
||||||
|
|
||||||
|
func ExampleLogger() {
|
||||||
|
logger := NewLogger("TAG")
|
||||||
|
logger.Infoln("so awesome") // prints [TAG] so awesome
|
||||||
|
logger.Infof("this %q is raw", "coin") // prints [TAG] this "coin" is raw
|
||||||
|
}
|
||||||
|
|
||||||
|
func ExampleLogSystem() {
|
||||||
|
filename := "test.log"
|
||||||
|
file, _ := os.OpenFile(filename, os.O_RDWR|os.O_CREATE, os.ModePerm)
|
||||||
|
fileLog := NewStdLogSystem(file, 0, WarnLevel)
|
||||||
|
AddLogSystem(fileLog)
|
||||||
|
|
||||||
|
stdoutLog := NewStdLogSystem(os.Stdout, 0, WarnLevel)
|
||||||
|
AddLogSystem(stdoutLog)
|
||||||
|
|
||||||
|
NewLogger("TAG").Warnln("reactor meltdown") // writes to both logs
|
||||||
|
}
|
@ -1,35 +1,14 @@
|
|||||||
/*
|
/*
|
||||||
Package ethlog implements a multi-output leveled logger.
|
Package ethlog implements a multi-output leveled logger.
|
||||||
|
|
||||||
Features
|
Other packages use tagged logger to send log messages to shared
|
||||||
|
(process-wide) logging engine. The shared logging engine dispatches to
|
||||||
|
multiple log systems. The log level can be set separately per log
|
||||||
|
system.
|
||||||
|
|
||||||
Other packages use tagged logger to send log messages to shared (process-wide) logging engine.
|
Logging is asynchrounous and does not block the caller. Message
|
||||||
The shared logging engine dispatches to multiple log systems.
|
|
||||||
The log level can be set separately per log system.
|
|
||||||
|
|
||||||
Logging is asynchrounous and does not block the main thread. Message
|
|
||||||
formatting is performed by the caller goroutine to avoid incorrect
|
formatting is performed by the caller goroutine to avoid incorrect
|
||||||
logging of mutable state.
|
logging of mutable state.
|
||||||
|
|
||||||
Usage
|
|
||||||
|
|
||||||
The Logger type provides named Printf and Println style methods for
|
|
||||||
all loglevels. Each ethereum component should have its own logger with
|
|
||||||
a unique prefix.
|
|
||||||
|
|
||||||
logger.Infoln("this is info") # > [TAG] This is info
|
|
||||||
logger.Infof("this %v is info", object) # > [TAG] This object is info
|
|
||||||
|
|
||||||
ethlog also provides constructors for that wrap io.Writers into a
|
|
||||||
standard logger with a settable level:
|
|
||||||
|
|
||||||
filename := "test.log"
|
|
||||||
file, _ := os.OpenFile(filename, os.O_RDWR|os.O_CREATE, os.ModePerm)
|
|
||||||
fileLogSystem := NewStdLogSystem(file, 0, WarnLevel)
|
|
||||||
AddLogSystem(fileLogSystem)
|
|
||||||
stdOutLogSystem := NewStdLogSystem(os.Stdout, 0, WarnLevel)
|
|
||||||
AddLogSystem(stdOutLogSystem)
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
package ethlog
|
package ethlog
|
||||||
|
|
||||||
@ -160,8 +139,9 @@ func AddLogSystem(logSystem LogSystem) {
|
|||||||
mutex.Unlock()
|
mutex.Unlock()
|
||||||
}
|
}
|
||||||
|
|
||||||
// A Logger prints messages prefixed by a given tag.
|
// A Logger prints messages prefixed by a given tag. It provides named
|
||||||
// You should create one with a unique tag for each high-level component.
|
// Printf and Println style methods for all loglevels. Each ethereum
|
||||||
|
// component should have its own logger with a unique prefix.
|
||||||
type Logger struct {
|
type Logger struct {
|
||||||
tag string
|
tag string
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user