Merge pull request #163 from gmkurtzer/wwlog_refactor

Initial refactor and cleanup of wwlog
This commit is contained in:
Gregory M. Kurtzer
2021-12-28 15:15:53 -08:00
committed by GitHub
4 changed files with 34 additions and 42 deletions

View File

@@ -5,7 +5,7 @@ RELEASE ?= 1
SRC ?= main
VERSION_FULL ?= $(shell test -e .git && git describe --tags --long --first-parent)
VERSION_FULL ?= $(shell test -e .git && git describe --tags --long --first-parent --always)
ifeq ($(VERSION_FULL),)
VERSION_FULL := $(VERSION)
endif

View File

@@ -2,7 +2,6 @@ package node
import (
"errors"
"fmt"
"io/ioutil"
"sort"
"strings"
@@ -16,10 +15,9 @@ var ConfigFile = "/etc/warewulf/nodes.conf"
func New() (nodeYaml, error) {
var ret nodeYaml
wwlog.Printf(wwlog.DEBUG, "Opening node configuration file: %s\n", ConfigFile)
wwlog.Printf(wwlog.VERBOSE, "Opening node configuration file: %s\n", ConfigFile)
data, err := ioutil.ReadFile(ConfigFile)
if err != nil {
fmt.Printf("error reading node configuration file\n")
return ret, err
}

View File

@@ -36,10 +36,11 @@ func daemonLogf(message string, a ...interface{}) {
}
log.SetOutput(logwriter)
loginit = true
log.SetFlags(0)
log.SetPrefix("")
}
log.SetFlags(0)
log.SetPrefix("")
log.Printf(message, a...)
} else {

View File

@@ -1,8 +1,8 @@
package wwlog
import (
"log"
"strings"
"fmt"
"os"
)
const (
@@ -16,55 +16,48 @@ const (
var (
logLevel = INFO
Indent string
)
func SetLevel(level int) {
logLevel = level
if level == DEBUG {
log.SetFlags(log.LstdFlags | log.Lmicroseconds | log.Lmsgprefix)
} else {
log.SetFlags(0)
}
Printf(DEBUG, "Set log level to: %d\n", logLevel)
}
func SetIndent(i int) {
Indent = strings.Repeat(" ", i)
func prefixGen(level int) string {
switch level {
case DEBUG:
return "[DEBUG] : "
case VERBOSE:
return "[VERBOSE] : "
case INFO:
return "[INFO] : "
case WARN:
return "[WARNING] : "
case ERROR:
return "[ERROR] : "
case CRITICAL:
return "[CRITICAL]: "
}
return "[UNDEF] : "
}
func prefixLevel(level int) {
if level == DEBUG {
log.SetPrefix("[DEBUG] " + Indent)
} else if level == VERBOSE {
log.SetPrefix("[VERBOSE] " + Indent)
} else if level == INFO {
log.SetPrefix("[INFO] " + Indent)
} else if level == WARN {
log.SetPrefix("[WARN] " + Indent)
} else if level == ERROR {
log.SetPrefix("[ERROR] " + Indent)
} else if level == CRITICAL {
log.SetPrefix("[CRITICAL] " + Indent)
func printlog(level int, message string) {
if level == INFO && logLevel <= INFO {
fmt.Print(message)
} else if level <= logLevel {
if level < INFO {
fmt.Fprintf(os.Stderr, prefixGen(level)+message)
} else {
fmt.Printf(prefixGen(level) + message)
}
}
}
func Println(level int, message string) {
if level <= logLevel {
prefixLevel(level)
log.Println(message)
}
log.SetPrefix("[LOG] " + Indent)
printlog(level, message)
}
func Printf(level int, message string, a ...interface{}) {
if level <= logLevel {
prefixLevel(level)
log.Printf(message, a...)
}
log.SetPrefix("[LOG] " + Indent)
printlog(level, fmt.Sprintf(message, a...))
}