From 0757c2cfadc82e5027609f0bcac06e762e602c3a Mon Sep 17 00:00:00 2001 From: Matthew Bloch Date: Thu, 6 Nov 2014 01:25:34 +0000 Subject: Fixed and tested Syslog logging. --- lib/byteback/log.rb | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'lib/byteback') diff --git a/lib/byteback/log.rb b/lib/byteback/log.rb index 247d562..86564e4 100644 --- a/lib/byteback/log.rb +++ b/lib/byteback/log.rb @@ -3,15 +3,21 @@ require 'syslog' module Byteback # Translates Ruby's Logger calls to similar calls to Syslog - # (implemented in Ruby 2.0 as Syslog::Logger) + # (implemented in Ruby 2.0 as Syslog::Logger). + # + # We need to neuter % signs which are taken as format strings. # class SyslogProxy class << self - def debug(*a); Syslog.log(Syslog::LOG_DEBUG, *a); end - def info(*a); Syslog.log(Syslog::LOG_INFO, *a); end - def warn(*a); Syslog.log(Syslog::LOG_WARNING, *a); end - def error(*a); Syslog.log(Syslog::LOG_ERR, *a); end - def fatal(*a); Syslog.log(Syslog::LOG_EMERG, *a); end + def debug(m); log_nopc(Syslog::LOG_DEBUG, m); end + def info(m); log_nopc(Syslog::LOG_INFO, m); end + def warn(m); log_nopc(Syslog::LOG_WARNING, m); end + def error(m); log_nopc(Syslog::LOG_ERR, m); end + def fatal(m); log_nopc(Syslog::LOG_EMERG, m); end + + def log_nopc(level, m) + Syslog.log(level, m.gsub("%","%%")) + end end end -- cgit v1.2.3