Sha256: dab62eab8326959f6ecf4438781ed5ea72fc33528959f26f0beda584287eb36e
Contents?: true
Size: 1.87 KB
Versions: 2
Compression:
Stored size: 1.87 KB
Contents
# Copyright (c) 2008 Michael Fellinger m.fellinger@gmail.com # Copyright (c) 2008 rob@rebeltechnologies.nl # All files in this distribution are subject to the terms of the MIT license. require 'syslog' module Ramaze module Logger ## # Logger class for writing to syslog. It is a *very* thin wrapper # around the Syslog library. # class Syslog include Logging # Hash containing various method aliases. Rbx and Jruby don't seem to like # the combination of alias() and module_function() so this works around # that. ALIASES = {:dev => :debug, :warn => :warning, :error => :err} ## # Open the syslog library, if it is allready open, we reopen it using the # new argument list. The argument list is passed on to the Syslog library # so please check that, and man syslog for detailed information. # # There are 3 parameters: # # * ident: The identification used in the log file, defaults to $0 # * options: defaults to Syslog::LOG_PID | Syslog::LOG_CONS # * facility: defaults to Syslog::LOG_USER # def initialize(*args) ::Syslog.close if ::Syslog.opened? ::Syslog.open(*args) end ## # Just sends all messages received to ::Syslog # We simply return if the log was closed for some reason, this behavior # was copied from Informer. We do not handle levels here. This will # be done by te syslog daemon based on it's configuration. # def log(tag, *messages) return if !::Syslog.opened? tag = tag.to_sym if ALIASES.key?(tag) tag = ALIASES[tag] end ::Syslog.send(tag, *messages) end ## # Has to call the modules singleton-method. # def inspect ::Syslog.inspect end end # Syslog end # Logger end # Ramaze
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ramaze-2012.04.14 | lib/ramaze/log/syslog.rb |
ramaze-2012.03.07 | lib/ramaze/log/syslog.rb |