Sinatra Logger для ошибок веб-службы - PullRequest
0 голосов
/ 03 января 2012

Я использую Sinatra 1.3, и это Sinatra::Application.
У меня есть метод, который выбирает веб-сервис.
Я хочу войти в систему, когда эта служба успешно работает и что не удалось, поскольку она работает в фоновом режиме (задание cron)

def fetch_some_web_service  
  begin  
    #if successful  
    log.info "Success"  
  rescue SocketError => e  
    log.info "Failed"
  end   
end

Я не могу использовать Sinatra logger instance. Он генерирует ошибки для меня, и я предполагаю, что он делает это, потому что я вхожу в метод, а не в пределах маршрута?

Как лучше всего захватить errors и success в некотором файле журнала, используя Sinatra::Application

1 Ответ

1 голос
/ 04 января 2012

Я использую следующий код в Синатре для регистрации

raise "Log File not specified" if log_file_location == nil
log_file = File.new(log_file_location, "a")

$stdout.reopen(log_file)
$stderr.reopen(log_file)

$stdout.sync=true
$stderr.sync=true

Затем используйте logger для входа.

logger.info("it works !!!!")
...