高热共公日志库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
1.2 KiB

  1. package grlogs
  2. import (
  3. "fmt"
  4. "github.com/astaxie/beego/logs"
  5. "os"
  6. "path"
  7. )
  8. var adatperMapper = map[Adapter]func(l *Logger, level Level) error{
  9. AdapterFile: func(l *Logger, level Level) error {
  10. if wd, err := os.Getwd(); err == nil {
  11. c := FileLogConfig{
  12. Filename: path.Join(wd, fmt.Sprintf("runtime/logs/%s.log", l.Lable)),
  13. Level: level,
  14. Maxlines: 0,
  15. Daily: true,
  16. Maxdays: 7,
  17. Color: true,
  18. Rotate: true,
  19. }
  20. return l.SetLogger(logs.AdapterFile, c.String())
  21. } else {
  22. return err
  23. }
  24. },
  25. AdapterConsole: func(l *Logger, level Level) error {
  26. c := ConsoleLogConfig{Level: level}
  27. return l.SetLogger(logs.AdapterConsole, c.String())
  28. },
  29. AdapterElasticSearch: func(l *Logger, level Level) error {
  30. dsn := "http://es-cn-0pp1mm3hq000dnbh4.public.elasticsearch.aliyuncs.com:9200/"
  31. if envkey == "prod" || envkey == "" || envkey == "gray" {
  32. dsn = "http://es-cn-0pp1mm3hq000dnbh4.elasticsearch.aliyuncs.com:9200/"
  33. }
  34. c := EsConfig{
  35. Username: "elastic",
  36. Password: "Hellogaore@",
  37. Dsn: dsn,
  38. Level: level,
  39. Index: os.Getenv("GRLOG_APP_NAME"),
  40. }
  41. return l.SetLogger(logs.AdapterEs, c.String())
  42. },
  43. }