Logging - Software Engineering

Simple level loggers

When you want to control amount of log information, loggers of different levels can be used.

drill/level_logs.go
package drill

import (
	"log"
	"os"
)

func main() {
	// default logger is used for INFO level
	log.SetPrefix("INFO ")

	// Move level prefix after timestamp
	flags := log.LstdFlags | log.Lmsgprefix
	log.SetFlags(flags)

	// debug level logger, Note! both loggers use os.Stderr, which
	// could result in competing writes
	debugLog := log.New(os.Stderr, "DEBUG ", flags)

	log.Println("Application start")
	debugLog.Println("somethig happended")
}
$ go run level_logs.go 
2022/01/16 16:35:19 INFO Application start
2022/01/16 16:35:19 DEBUG somethig happended