El Domingo, 3 de Enero de 2010, Eric Wong escribió:

> Unfortunately, the stock Syslog module isn't compatible with the Ruby
> Logger implementation.  Try grabbing the "SyslogLogger" gem and using
> that instead.  I haven't had any experience with SyslogLogger, but a
> cursory look says it's OK.

Yes, in fact I already use a "bit" customized SyslogLogger :)

 
> If you really want to, you may be able to subclass SyslogLogger and give
> it IO-like methods (write/puts/flush) are require for Rack::Lint
> compatibility and then set $stderr:
> 
>   # Totally untested, stick this in your Unicorn config file and let
>   # us know if it works or blows up badly:
> 
>   require 'syslog_logger'
> 
>   class MySyslogLogger < SyslogLogger
>     alias puts error
>     alias write error
>     def flush; self; end
>   end
> 
>   $stderr = MySyslogLogger.new('foo')

Really great! It works fine :)

 
> > BTW, how to reset the $stderr so it points again to the default one (the
> > terminal)?
> 
> You would've had to dup stderr in the config file and keep it referenced
> before it got redirected.  But a daemonized process shouldn't be holding
> onto terminals...


Really thanks a lot. 


-- 
Iñaki Baz Castillo <[email protected]>
_______________________________________________
Unicorn mailing list - [email protected]
http://rubyforge.org/mailman/listinfo/mongrel-unicorn
Do not quote signatures (like this one) or top post when replying

Reply via email to