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.
 
 
 

48 lines
1.2 KiB

  1. // Copyright 2012 Xing Xing <mikespook@gmail.com>.
  2. // All rights reserved.
  3. // Use of this source code is governed by a commercial
  4. // license that can be found in the LICENSE file.
  5. package main
  6. import (
  7. "github.com/mikespook/golib/log"
  8. "flag"
  9. "strings"
  10. )
  11. var (
  12. logfile = flag.String("log", "",
  13. "Log file to write errors and information to." +
  14. " Empty string output to STDOUT.")
  15. loglevel = flag.String("log-level", "all", "Log level to record." +
  16. " Values 'error', 'warning', 'message', 'debug', 'all' and 'none'" +
  17. " are accepted. Use '|' to combine more levels.")
  18. )
  19. func initLog() {
  20. level := log.LogNone
  21. levels := strings.SplitN(*loglevel, "|", -1)
  22. for _, v := range levels {
  23. switch v {
  24. case "none":
  25. level = level | log.LogNone
  26. break
  27. case "error":
  28. level = level | log.LogError
  29. case "warning":
  30. level = level | log.LogWarning
  31. case "message":
  32. level = level | log.LogMessage
  33. case "debug":
  34. level = level | log.LogDebug
  35. case "all":
  36. level = log.LogAll
  37. default:
  38. }
  39. }
  40. if err := log.Init(*logfile, level); err != nil {
  41. log.Error(err)
  42. }
  43. }