52 lines
1.6 KiB
Markdown
52 lines
1.6 KiB
Markdown
# Go Basic Logger
|
|
|
|
A basic logger written in Go so simple it's impossible to miss it.
|
|
|
|
## Log levels
|
|
|
|
| Level | Alias | Description |
|
|
|----------|-------|-------------------------------------------------------------------------------------|
|
|
| DEBUG | DBG | Debug information useful when programming |
|
|
| NOTICE | NOT | Notice information useful when requesting logs for errors/bugs |
|
|
| INFO | INF | Standard classic log level, general information that narrates the program execution |
|
|
| WARNING | WRN | Warning messages for non-blocking things that go wrong |
|
|
| ERROR | ERR | Error messages for non-blocking things that go wrong |
|
|
| CRITICAL | CRT | Critical messages it's mandatory to pay attention to, may be still non-blocking |
|
|
| FATAL | FAT | Fatal messages about things for which the program execution cannot continue |
|
|
|
|
## Examples
|
|
|
|
General usage:
|
|
```
|
|
package main
|
|
|
|
import git.bjphoster.com/b.pedini/go-basic-logger
|
|
|
|
logger Logger
|
|
|
|
func main() {
|
|
logLevel := "DEBUG"
|
|
logger = *new(Logger)
|
|
logger.Initialize(&logLevel)
|
|
logger.Debug("Program execution started")
|
|
|
|
...
|
|
|
|
if err != nil {
|
|
logger.Fatal("Received error during operation X:", err)
|
|
}
|
|
}
|
|
```
|
|
|
|
Getting the Logger level from an environment variable (called LOGLEVEL, not customizable (yet)):
|
|
```
|
|
...
|
|
|
|
func main() {
|
|
logger = *new(Logger)
|
|
logger.Initialize(nil)
|
|
|
|
...
|
|
}
|
|
```
|