PageRenderTime 47ms CodeModel.GetById 21ms RepoModel.GetById 1ms app.codeStats 0ms

/websites/code/studygolang/src/logger/logger.go

https://github.com/xiedantibu/studygolang
Go | 71 lines | 55 code | 10 blank | 6 comment | 12 complexity | cf25027f97b96eaf1f4bb7f4c0d0df1f MD5 | raw file
Possible License(s): BSD-3-Clause
  1. // Copyright 2013 The StudyGolang Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. // http://studygolang.com
  5. // Author:polaris studygolang@gmail.com
  6. package logger
  7. import (
  8. "config"
  9. "io"
  10. "log"
  11. "os"
  12. )
  13. var (
  14. // 日志文件
  15. info_file = config.ROOT + "/log/info.log"
  16. debug_file = config.ROOT + "/log/debug.log"
  17. error_file = config.ROOT + "/log/error.log"
  18. )
  19. func init() {
  20. os.Mkdir(config.ROOT+"/log/", 0777)
  21. }
  22. type logger struct {
  23. *log.Logger
  24. }
  25. func Infof(format string, args ...interface{}) {
  26. file, err := os.OpenFile(info_file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0777)
  27. if err != nil {
  28. return
  29. }
  30. defer file.Close()
  31. New(file).Printf(format, args...)
  32. }
  33. func Infoln(args ...interface{}) {
  34. file, err := os.OpenFile(info_file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0777)
  35. if err != nil {
  36. return
  37. }
  38. defer file.Close()
  39. New(file).Println(args...)
  40. }
  41. func Errorf(format string, args ...interface{}) {
  42. file, err := os.OpenFile(error_file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0777)
  43. if err != nil {
  44. return
  45. }
  46. defer file.Close()
  47. New(file).Printf(format, args...)
  48. }
  49. func Errorln(args ...interface{}) {
  50. file, err := os.OpenFile(error_file, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0777)
  51. if err != nil {
  52. return
  53. }
  54. defer file.Close()
  55. New(file).Println(args...)
  56. }
  57. func New(out io.Writer) *logger {
  58. return &logger{
  59. Logger: log.New(out, "", log.LstdFlags),
  60. }
  61. }