https://github.com/influxdata/wlog
Simple log level based Go logger.
https://github.com/influxdata/wlog
Last synced: about 2 months ago
JSON representation
Simple log level based Go logger.
- Host: GitHub
- URL: https://github.com/influxdata/wlog
- Owner: influxdata
- License: mit
- Created: 2016-04-11T22:15:05.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2016-04-11T22:40:19.000Z (about 9 years ago)
- Last Synced: 2025-03-24T22:42:10.901Z (3 months ago)
- Language: Go
- Size: 2.93 KB
- Stars: 7
- Watchers: 10
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# wlog
Simple log level based Go logger.
Provides an io.Writer that filters log messages based on a log level prefix.
Valid log levels are: DEBUG, INFO, WARN, ERROR, OFF.
Log messages need to begin with a L! where L is one of D, I, W, or E.## Usage
Create a *log.Logger via wlog.New:
```go
package mainimport (
"log"
"os""github.com/influxdata/wlog"
)func main() {
var logger *log.Logger
logger = wlog.New(os.Stderr, "prefix", log.LstdFlags)
logger.Println("I! initialized logger")
}
```Create a *log.Logger explicitly using wlog.Writer:
```go
package mainimport (
"log"
"os""github.com/influxdata/wlog"
)func main() {
var logger *log.Logger
logger = log.New(wlog.NewWriter(os.Stderr), "prefix", log.LstdFlags)
logger.Println("I! initialized logger")
}
```Prefix log messages with a log level char and the `!` delimiter.
```go
logger.Println("D! this is a debug log")
logger.Println("I! this is an info log")
logger.Println("W! this is a warn log")
logger.Println("E! this is an error log")
```The log level can be changed via the SetLevel or the SetLevelFromName functions.
```go
package mainimport (
"log"
"os""github.com/influxdata/wlog"
)func main() {
var logger *log.Logger
logger = wlog.New(os.Stderr, "prefix", log.LstdFlags)
wlog.SetLevel(wlog.DEBUG)
logger.Println("D! initialized logger")
wlog.SetLevelFromName("INFO")
logger.Println("D! this message will be dropped")
logger.Println("I! this message will be printed")
}
```