package main import ( "fmt" "git.swzry.com/zry/GoHiedaLogger/hieda_yamlutil" "git.swzry.com/zry/GoHiedaLogger/hiedalog" "gopkg.in/yaml.v2" "io/ioutil" "strconv" "time" ) type Config struct { HLCfg hieda_yamlutil.CommonLogConfigYAML `yaml:"yaml_util_test"` } func main() { ycfd, err := ioutil.ReadFile("config.yaml") if err != nil { fmt.Println("Failed Read File 'config.yaml':", err) return } var ycd Config err = yaml.Unmarshal(ycfd, &ycd) if err != nil { fmt.Println("Failed Parse File 'config.yaml':", err) return } hyu, err := hieda_yamlutil.CreateHiedaLoggerFromYAMLData(ycd.HLCfg, true) if err != nil { fmt.Println("Failed Init Logger:", err) return } logger := hyu.Logger logger.LogPrint("app", hiedalog.DLN_INFO, "hello", "world") for _, v := range logger.LevelFilter.GetLevelList() { logger.LogPrintf("logtest", v.Name, "LogLevelFilerTest: name=%s, lvid=%d", v.Name, v.LevelNumber) logger.LogComplex("cltest", v.Name, map[string]string{ "name": v.Name, "id": strconv.Itoa(int(v.LevelNumber)), "extra": "hello", }) } fmt.Println(time.Now().String(), "Log Task Over.") hyu.SafeShutdown() fmt.Println(time.Now().String(), "Producer Stop.") }