Class: Fluent::Logger::SyslogLogger

Inherits:
TextLogger show all
Defined in:
lib/fluent/logger/syslog.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from TextLogger

#post

Methods inherited from LoggerBase

#create_event, open

Constructor Details

#initialize(ident = $0, level = :info) ⇒ SyslogLogger

Returns a new instance of SyslogLogger.



23
24
25
26
27
28
29
30
31
# File 'lib/fluent/logger/syslog.rb', line 23

def initialize(ident=$0, level=:info)
  super()
  require 'syslog'

  @ident = ident
  self.level = level
  #self.facility = facility
  Syslog.open(@ident)
end

Instance Attribute Details

#levelObject

Returns the value of attribute level.



33
34
35
# File 'lib/fluent/logger/syslog.rb', line 33

def level
  @level
end

Instance Method Details

#closeObject



119
120
121
122
# File 'lib/fluent/logger/syslog.rb', line 119

def close
  Syslog.close
  self
end

#post_text(text) ⇒ Object

def facility=(facility)

facility = facility.to_sym if facility.is_a?(String)
@facility = case facility
  when :auth, Syslog::LOG_AUTH
    Syslog::LOG_AUTH
  when :authpriv, Syslog::LOG_AUTHPRIV
    Syslog::LOG_AUTHPRIV
  when :console, Syslog::LOG_CONSOLE
    Syslog::LOG_CONSOLE
  when :cron, Syslog::LOG_CRON
    Syslog::LOG_CRON
  when :daemon, Syslog::LOG_DAEMON
    Syslog::LOG_DAEMON
  when :ftp, Syslog::LOG_FTP
    Syslog::LOG_FTP
  when :kern, Syslog::LOG_KERN
    Syslog::LOG_KERN
  when :lpr, Syslog::LOG_LPR
    Syslog::LOG_LPR
  when :mail, Syslog::LOG_MAIL
    Syslog::LOG_MAIL
  when :news, Syslog::LOG_NEWS
    Syslog::LOG_NEWS
  when :ntp, Syslog::LOG_NTP
    Syslog::LOG_NTP
  when :security, Syslog::LOG_SECURITY
    Syslog::LOG_SECURITY
  when :syslog, Syslog::LOG_SYSLOG
    Syslog::LOG_SYSLOG
  when :user, Syslog::LOG_USER
    Syslog::LOG_USER
  when :uucp, Syslog::LOG_UUCP
    Syslog::LOG_UUCP
  when :local0, Syslog::LOG_LOCAL0
    Syslog::LOG_LOCAL0
  when :local1, Syslog::LOG_LOCAL1
    Syslog::LOG_LOCAL1
  when :local2, Syslog::LOG_LOCAL2
    Syslog::LOG_LOCAL2
  when :local3, Syslog::LOG_LOCAL3
    Syslog::LOG_LOCAL3
  when :local4, Syslog::LOG_LOCAL4
    Syslog::LOG_LOCAL4
  when :local5, Syslog::LOG_LOCAL5
    Syslog::LOG_LOCAL5
  when :local6, Syslog::LOG_LOCAL6
    Syslog::LOG_LOCAL6
  when :local7, Syslog::LOG_LOCAL7
    Syslog::LOG_LOCAL7
  else
    raise "Unknown facility description #{facility.inspect}"
  end
Syslog.reopen(@ident, Syslog::LOG_PID|Syslog::LOG_CONS, @facility)
facility

end



115
116
117
# File 'lib/fluent/logger/syslog.rb', line 115

def post_text(text)
  Syslog.log(@level, "%s", text)
end