Hi,

noreply / rubyforge.org <noreply / rubyforge.org> writes:

> If you try to log a message which could be substituted by printf to Syslog, you get an exception:
> 
> luke@sol10b(13) $ irb
> irb(main):001:0> require 'syslog'
> => true
> irb(main):002:0> Syslog.open("testing")
> => <#Syslog: opened=true, ident="testing", options=3, facility=8, mask=255>
> irb(main):003:0> Syslog.info("testing%s")
> ArgumentError: too few argument.
>         from (irb):3:in `info'
>         from (irb):3
> 
> I have not yet found a workaround.  Escaping the percent sign using a backslash (unsurprisingly) does not work.

% irb
>> require "syslog"
=> true
>> Syslog.open("testing")
=> <#Syslog: opened=true, ident="testing", options=3, facility=8, mask=255>
>> Syslog.info("testing%%s")
=> <#Syslog: opened=true, ident="testing", options=3, facility=8, mask=255>

-- 
eban