1

非同期リクエストをシナトラ アプリに記録しようとしています。うまく機能しているsinatra synchronyを使用していますが、リクエスト情報が表示されません。この投稿はこれに対する解決策を示していますが、申し訳ありませんが、初心者の私はそれを機能させることができません!

app.rb

require_relative 'logger' # middleware

class MyApp < Sinatra::Base
  register Sinatra::Synchrony # async http requests up in this!
  use Logger::Middleware
  ...
end

ラックアップで私は得る:

/Users/nflacco/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/logger.rb:197:in `<top (required)>': Logger is not a class (TypeError)

少し見回しましたが、クラスベースのsinatraアプリでミドルウェアを使用することについての簡単な答えは見つかりませんでした. ありがとう!


更新: Rack:CommonLogger を少しいじり、(sinatra-synchrony を使用しても) サーバーにリクエストを表示するようにしましたが、ファイルには何も書き込まれませんでした。うーん。

app.rb

  configure do
    Dir.mkdir('log') unless File.exists?('log')
    use Rack::CommonLogger, Logger.new('log/elphi-api.log')
  end
4

0 に答える 0