main.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package main
  2. import (
  3. "fmt"
  4. "git.swzry.com/zry/GoHiedaLogger/hiedabke_alisls"
  5. "git.swzry.com/zry/GoHiedaLogger/hiedalog"
  6. "gopkg.in/yaml.v2"
  7. "io/ioutil"
  8. "strconv"
  9. "time"
  10. )
  11. type YAML_AliSLSCfg struct {
  12. Appkey string `yaml:"appkey"`
  13. Secret string `yaml:"secret"`
  14. Endpoint string `yaml:"endpoint"`
  15. Project string `yaml:"project"`
  16. Logstore string `yaml:"logstore"`
  17. Topic string `yaml:"topic"`
  18. }
  19. var Config YAML_AliSLSCfg
  20. func main() {
  21. yb, err := ioutil.ReadFile("config.secret.yaml")
  22. if err != nil {
  23. fmt.Println("Unable to read config.secret.yaml:", err.Error())
  24. return
  25. }
  26. err = yaml.Unmarshal(yb, &Config)
  27. if err != nil {
  28. fmt.Println("Unable to parse config.secret.yaml:", err.Error())
  29. return
  30. }
  31. alicfg := hiedabke_alisls.AliSLSConfig{
  32. DebugMode: true,
  33. AccessKeyID: Config.Appkey,
  34. AccessKeySecret: Config.Secret,
  35. Endpoint: Config.Endpoint,
  36. Project: Config.Project,
  37. Logstore: Config.Logstore,
  38. Topic: Config.Topic,
  39. AppName: "HiedaLoggerAliSLSTest2",
  40. SourceIP: "10.2.2.2",
  41. }
  42. lbas := hiedabke_alisls.NewHiedaBackendAliSLS(alicfg, nil)
  43. lbas.StartProducer()
  44. fmt.Println(time.Now().String(), "Producer Ready.")
  45. logger := hiedalog.NewHiedaLogger()
  46. logger.AddBackend(lbas, logger.LevelFilter.NameToID("VERBOSE"))
  47. logger.AddBackend(lbas, logger.LevelFilter.NameToID("WARN"))
  48. logger.LogPrint("app", hiedalog.DLN_INFO, "hello", "world")
  49. for _, v := range logger.LevelFilter.GetLevelList() {
  50. logger.LogPrintf("logtest", v.Name, "LogLevelFilerTest: name=%s, lvid=%d", v.Name, v.LevelNumber)
  51. logger.LogComplex("cltest", v.Name, map[string]string{
  52. "name": v.Name,
  53. "id": strconv.Itoa(int(v.LevelNumber)),
  54. "extra": "hello",
  55. })
  56. }
  57. fmt.Println(time.Now().String(), "Log Task Over.")
  58. lbas.SafeStopProducer()
  59. fmt.Println(time.Now().String(), "Producer Stop.")
  60. }