2013-01-31 4 views
2

logger.error 메시지가 SysLog에 나타나도록 올바르게 구성하는 방법에 대한 질문이 있습니다. SyslogLogger gem을 사용했습니다.레일스 logger.error가 syslog에 나타나지 않습니다.

if $programname == 'rails' and ($syslogseverity-text == 'emerg') then  @somehost                   

if $programname == 'rails' and ($syslogseverity-text == 'alert') then  @somehost                      

if $programname == 'rails' and ($syslogseverity-text == 'crit') then  @somehost                      

if $programname == 'rails' and ($syslogseverity-text == 'err') then @somehost                        

if $programname == 'rails' and ($syslogseverity-text == 'warn') then @somehost 

if $programname == 'rails' then                         ~ 

예외 또는 치명적인 오류가 발생, 스택 트레이스의 로그가 보여주는 것입니다 : 우리 Syslog config에서, 우리는이 같은 필터가 있습니다. 그러나 로그에 logger.error을 사용하면 모든 진술이 표시되지 않습니다.

답변

0

당신이 config/environments/production.rb#config.logger을 주석 처리 할 필요가 나타납니다.

그런 다음 config.logger = SyslogLogger.new 또는 분산 설정 config.logger = SyslogLogger.new "myApp"을 설정할 수 있습니다.

자세한 내용은 blog post 또는 stackoverflow post을 확인하시기 바랍니다.

+0

그건 문제가되지 않습니다. production.rb에서 올바르게 구성했습니다. 문제는 syslog 필터를 올바르게 설정하는 방법입니다. 레일에서 예외가 syslog에 나타납니다. 그냥 logger.error가 표시되지 않았습니다. – DrChanimal

관련 문제