example | ||
.gitignore | ||
config.go | ||
console_logger.go | ||
file_logger_test.go | ||
file_logger.go | ||
formatter.go | ||
json_formatter.go | ||
LICENSE | ||
logger_test.go | ||
logger_writer.go | ||
logger.go | ||
README.md | ||
text_formatter.go | ||
util.go | ||
writer.go |
go-logger
Description
A log library for golang. Can be initialized from xml format configuration file, supports scrolling based on file size and time of log files.
Installation
This package can be installed with the go get command:
go get github.com/skygangsta/go-logger
Logger Level
ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF
Initialized
LoggerWriter is a complete logger that supports automatic scrolling of logger files by time or file size. It's initial by config file with xml format "example/logger.xml":
package main
import (
"github.com/skygangsta/go-logger"
)
func main() {
err := logger.Init("example/logger.xml")
if err != nil {
logger.DefaultConsoleLogger().Error(err.Error())
return
}
logger.Trace("Test Logger trace message")
logger.Debug("Test Logger debug message")
logger.Info("Test Logger info message")
logger.Warn("Test Logger warn message")
logger.Error("Test Logger error message")
}
ConsoleLogger
Console logger outputs log information to stdout:
package main
import (
"github.com/skygangsta/go-logger"
)
func main() {
consoleLogger := logger.NewConsoleLogger(logger.ALL)
consoleLogger.Info("ConsoleLogger info message")
}
FileLogger
File logger outputs log information to a file:
package main
import (
"github.com/skygangsta/go-logger"
)
func main() {
fileLogger, err := logger.NewFileLogger(logger.ALL, "logs/fileLogger.log")
if err != nil {
logger.DefaultConsoleLogger().Error(err.Error())
return
}
fileLogger.Info("FileLogger info message")
}