Add option to forward log messages to syslog

This commit is contained in:
Guillaume DOTT 2013-11-26 15:58:59 +01:00
parent 402bc883ae
commit fb7be672fa
3 changed files with 18 additions and 5 deletions

View File

@ -1,3 +1,5 @@
require 'syslog/logger'
require 'smsd/version' require 'smsd/version'
require 'smsd/cli' require 'smsd/cli'
require 'smsd/cli/options' require 'smsd/cli/options'

View File

@ -13,6 +13,9 @@ module SMSd
init_logger init_logger
@modem = Biju::Hayes.new(options[:modem], pin: options[:pin]) @modem = Biju::Hayes.new(options[:modem], pin: options[:pin])
rescue Errno::ENOENT => e
logger.warn e.message
exit
end end
def run def run
@ -34,6 +37,9 @@ module SMSd
private private
def init_logger def init_logger
if @options[:syslog]
@logger = Syslog::Logger.new($PROGRAM_NAME)
else
@logger = Logger.new( @logger = Logger.new(
Util::MultiIO.new(STDOUT, Util::MultiIO.new(STDOUT,
File.open(@options[:logfile] || 'smsd.log', 'a'))) File.open(@options[:logfile] || 'smsd.log', 'a')))
@ -42,6 +48,7 @@ module SMSd
"#{$PROGRAM_NAME}: #{datetime} [#{severity}] #{msg}\n" "#{$PROGRAM_NAME}: #{datetime} [#{severity}] #{msg}\n"
end end
end end
end
def catch_signals def catch_signals
signal_term = proc { @terminate = true } signal_term = proc { @terminate = true }

View File

@ -21,6 +21,10 @@ module SMSd
options[:logfile] = logfile options[:logfile] = logfile
end end
opts.on('-s', '--[no-]syslog', 'Use syslog as logger') do |syslog|
options[:syslog] = syslog
end
opts.on('-p', '--pin PIN', 'Specify the SIM PIN') do |pin| opts.on('-p', '--pin PIN', 'Specify the SIM PIN') do |pin|
options[:pin] = pin options[:pin] = pin
end end