[agent-wdd] 完成自定义log部分;完成info network部分; 项目结构基本完成
This commit is contained in:
71
agent-wdd/log/SimpleLog.go
Normal file
71
agent-wdd/log/SimpleLog.go
Normal file
@@ -0,0 +1,71 @@
|
||||
package log
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"runtime"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
const (
|
||||
colorReset = "\033[0m"
|
||||
colorRed = "\033[31m"
|
||||
colorGreen = "\033[32m"
|
||||
colorYellow = "\033[33m"
|
||||
colorBlue = "\033[34m"
|
||||
)
|
||||
|
||||
func main() {
|
||||
Debug("Debug message: %s", "connection established")
|
||||
Info("System %s", "started successfully")
|
||||
Warning("Disk space at %d%%", 85)
|
||||
Error("Failed to %s", "load config")
|
||||
}
|
||||
|
||||
func Debug(format string, args ...interface{}) {
|
||||
log("DEBUG", colorBlue, format, args...)
|
||||
}
|
||||
|
||||
func Info(format string, args ...interface{}) {
|
||||
log("INFO", colorGreen, format, args...)
|
||||
}
|
||||
|
||||
func Warning(format string, args ...interface{}) {
|
||||
log("WARNING", colorYellow, format, args...)
|
||||
}
|
||||
|
||||
func Error(format string, args ...interface{}) {
|
||||
log("ERROR", colorRed, format, args...)
|
||||
}
|
||||
|
||||
func log(level string, color string, format string, args ...interface{}) {
|
||||
// 获取调用者信息(跳过2层调用栈)
|
||||
_, file, line, _ := runtime.Caller(2)
|
||||
|
||||
s := strings.Split(file, "ProjectOctopus")[1]
|
||||
callerInfo := strings.TrimLeft(s, "/") + " "
|
||||
callerInfo += strconv.FormatInt(int64(line), 10)
|
||||
|
||||
timestamp := currentTimeString()
|
||||
message := fmt.Sprintf(format, args...)
|
||||
fmt.Printf("%s %s%-7s%s [%s] %s\n",
|
||||
timestamp,
|
||||
color,
|
||||
level,
|
||||
colorReset,
|
||||
callerInfo,
|
||||
message)
|
||||
}
|
||||
|
||||
func currentTimeString() string {
|
||||
|
||||
// 加载东八区时区
|
||||
loc, _ := time.LoadLocation("Asia/Shanghai")
|
||||
|
||||
// 获取当前时间并转换为东八区时间
|
||||
now := time.Now().In(loc)
|
||||
// 格式化为 "2006-01-02 15:04:05" 的布局
|
||||
formattedTime := now.Format(time.DateTime)
|
||||
return formattedTime
|
||||
}
|
||||
Reference in New Issue
Block a user