60 lines
800 B
Go
60 lines
800 B
Go
package log
|
|
|
|
import (
|
|
"fmt"
|
|
"sync"
|
|
)
|
|
|
|
var lock = &sync.Mutex{}
|
|
var loglevel = LOG_NONE
|
|
|
|
func SetLoglevel(_loglevel int) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
loglevel = _loglevel
|
|
}
|
|
|
|
func Debug(format string, v ...any) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
if loglevel >= LOG_DEBUG {
|
|
fmt.Printf(format, v...)
|
|
}
|
|
}
|
|
|
|
func Info(format string, v ...any) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
if loglevel >= LOG_INFO {
|
|
fmt.Printf(format, v...)
|
|
}
|
|
}
|
|
|
|
func Warn(format string, v ...any) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
if loglevel >= LOG_WARN {
|
|
fmt.Printf(format, v...)
|
|
}
|
|
}
|
|
|
|
func Error(format string, v ...any) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
if loglevel >= LOG_ERROR {
|
|
fmt.Printf(format, v...)
|
|
}
|
|
}
|
|
|
|
func ErrorLog(err error) {
|
|
lock.Lock()
|
|
defer lock.Unlock()
|
|
|
|
Error("%v\n", err)
|
|
}
|