syslogger.go 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. // Copyright 2015 The Xorm 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. // +build !windows,!nacl,!plan9
  5. package log
  6. import (
  7. "fmt"
  8. "log/syslog"
  9. )
  10. var _ Logger = &SyslogLogger{}
  11. // SyslogLogger will be depricated
  12. type SyslogLogger struct {
  13. w *syslog.Writer
  14. showSQL bool
  15. }
  16. // NewSyslogLogger implements Logger
  17. func NewSyslogLogger(w *syslog.Writer) *SyslogLogger {
  18. return &SyslogLogger{w: w}
  19. }
  20. // Debug log content as Debug
  21. func (s *SyslogLogger) Debug(v ...interface{}) {
  22. s.w.Debug(fmt.Sprint(v...))
  23. }
  24. // Debugf log content as Debug and format
  25. func (s *SyslogLogger) Debugf(format string, v ...interface{}) {
  26. s.w.Debug(fmt.Sprintf(format, v...))
  27. }
  28. // Error log content as Error
  29. func (s *SyslogLogger) Error(v ...interface{}) {
  30. s.w.Err(fmt.Sprint(v...))
  31. }
  32. // Errorf log content as Errorf and format
  33. func (s *SyslogLogger) Errorf(format string, v ...interface{}) {
  34. s.w.Err(fmt.Sprintf(format, v...))
  35. }
  36. // Info log content as Info
  37. func (s *SyslogLogger) Info(v ...interface{}) {
  38. s.w.Info(fmt.Sprint(v...))
  39. }
  40. // Infof log content as Infof and format
  41. func (s *SyslogLogger) Infof(format string, v ...interface{}) {
  42. s.w.Info(fmt.Sprintf(format, v...))
  43. }
  44. // Warn log content as Warn
  45. func (s *SyslogLogger) Warn(v ...interface{}) {
  46. s.w.Warning(fmt.Sprint(v...))
  47. }
  48. // Warnf log content as Warnf and format
  49. func (s *SyslogLogger) Warnf(format string, v ...interface{}) {
  50. s.w.Warning(fmt.Sprintf(format, v...))
  51. }
  52. // Level shows log level
  53. func (s *SyslogLogger) Level() LogLevel {
  54. return LOG_UNKNOWN
  55. }
  56. // SetLevel always return error, as current log/syslog package doesn't allow to set priority level after syslog.Writer created
  57. func (s *SyslogLogger) SetLevel(l LogLevel) {}
  58. // ShowSQL set if logging SQL
  59. func (s *SyslogLogger) ShowSQL(show ...bool) {
  60. if len(show) == 0 {
  61. s.showSQL = true
  62. return
  63. }
  64. s.showSQL = show[0]
  65. }
  66. // IsShowSQL if logging SQL
  67. func (s *SyslogLogger) IsShowSQL() bool {
  68. return s.showSQL
  69. }