Class: MCollective::Logger::Syslog_logger
- Inherits:
-
Base
- Object
- Base
- MCollective::Logger::Syslog_logger
show all
- Includes:
- Syslog::Constants
- Defined in:
- lib/mcollective/logger/syslog_logger.rb
Overview
Implements a syslog based logger using the standard ruby syslog class
Instance Attribute Summary
Attributes inherited from Base
#active_level
Instance Method Summary
collapse
Methods inherited from Base
#cycle_level, #initialize, #reopen, #set_level
Instance Method Details
#log(level, from, msg) ⇒ Object
42
43
44
45
46
47
48
49
50
|
# File 'lib/mcollective/logger/syslog_logger.rb', line 42
def log(level, from, msg)
if @known_levels.index(level) >= @known_levels.index(@active_level)
Syslog.send(map_level(level), "#{from} #{msg}")
end
rescue
STDERR.puts("#{level}: #{msg}")
end
|
#set_logging_level(level) ⇒ Object
30
31
32
|
# File 'lib/mcollective/logger/syslog_logger.rb', line 30
def set_logging_level(level)
end
|
#start ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
|
# File 'lib/mcollective/logger/syslog_logger.rb', line 9
def start
config = Config.instance
facility = syslog_facility(config.logfacility)
level = config.loglevel.to_sym
Syslog.close if Syslog.opened?
Syslog.open(File.basename($0), 3, facility)
set_level(level)
end
|
#syslog_facility(facility) ⇒ Object
21
22
23
24
25
26
27
28
|
# File 'lib/mcollective/logger/syslog_logger.rb', line 21
def syslog_facility(facility)
begin
Syslog.const_get("LOG_#{facility.upcase}")
rescue NameError => e
STDERR.puts "Invalid syslog facility #{facility} supplied, reverting to USER"
Syslog::LOG_USER
end
end
|
#valid_levels ⇒ Object
34
35
36
37
38
39
40
|
# File 'lib/mcollective/logger/syslog_logger.rb', line 34
def valid_levels
{:info => :info,
:warn => :warning,
:debug => :debug,
:fatal => :crit,
:error => :err}
end
|