2

私は Sinatra アプリを書いて遊んでいます。構成ブロックから何かをログに記録したいと思います。enable :loggingただし、これはアプリケーション スコープで実行されます。configureブロックで行う場合、ロガー メソッドは含まれません。有効なログ構成を尊重しながら、構成ブロックからメッセージをログに記録する通常の方法はありますか?

現在、私は次のようなことをしています:

class Blah < Sinatra::Base
  configure do
    enable :logging
    @@log = Logger.new("/dev/stderr")
    @@log.info "blah"
  end
end

構成されているロガーを使用し、デフォルトで行ごとに 1 つのセットアップを使用したいと思いますenable :logger。次のようなものが理想的です。

class Blah < Sinatra::Base
  configure do
    enable :logging
    logger.info "blah"
  end
end
4

1 に答える 1

0

1.3の時点で(私は思う)Sinatraにはあなたが説明したようなロガーが付属していますが、デフォルトでSTDOUTとSTDERRに書き込みます。ファイルにヒットする場合は、これをconfig.ruに追加します。

logger = Logger.new('log/awesome_app.log')

use Rack::CommonLogger, logger
run AwesomeApp
于 2012-11-21T14:39:32.467 に答える