37 lines
690 B
Go
37 lines
690 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"os"
|
|
)
|
|
|
|
type Logger struct {
|
|
*log.Logger
|
|
}
|
|
|
|
const (
|
|
Reset = "\033[0m"
|
|
Red = "\033[31m"
|
|
Green = "\033[32m"
|
|
Yellow = "\033[33m"
|
|
Blue = "\033[34m"
|
|
)
|
|
|
|
func NewLogger(prefix string) *Logger {
|
|
return &Logger{
|
|
Logger: log.New(os.Stdout, prefix, log.Ldate|log.Ltime|log.Lshortfile),
|
|
}
|
|
}
|
|
|
|
func (l *Logger) LogInfo(jobName, message string) {
|
|
l.Printf("%s[INFO] [%s] %s%s", Green, jobName, message, Reset)
|
|
}
|
|
|
|
func (l *Logger) LogError(jobName, message string) {
|
|
l.Printf("%s[ERROR] [%s] %s%s", Red, jobName, message, Reset)
|
|
}
|
|
|
|
func (l *Logger) LogJobState(jobName, state string) {
|
|
l.Printf("%s[JOB STATE] [%s] %s%s", Yellow, jobName, state, Reset)
|
|
}
|