Sinatra在请求外部记录

时间:2015-06-23 03:14:28

标签: ruby logging sinatra

我相信我错过了Sinatra记录的方式。我想定义一个自定义记录器,但也可以在Sinatra的路径之外使用它。

我的app.rb看起来像这样:

require 'sinatra'
require 'logger'

logger = Logger.new(STDOUT)

configure do
  use Rack::CommonLogger, logger
end

get '/' do
  logger.info 'In request'
  'Hello, world!'
end

logger.info 'Outside request'

config.ru就像这样:

require 'sinatra'
require_relative 'app'

configure do
  enable :logging
end

run Sinatra::Application

但是当我运行应用程序并卷曲URL时,我只在请求期间看到注销,而不是在应用程序加载时logger.info 'Outside request'

$ bundle exec rackup
I, [2015-06-22T23:09:32.789802 #6122]  INFO -- : Outside request
[2015-06-22 23:09:32] INFO  WEBrick 1.3.1
[2015-06-22 23:09:32] INFO  ruby 2.1.4 (2014-10-27) [x86_64-linux]
[2015-06-22 23:09:32] INFO  WEBrick::HTTPServer#start: pid=6122 port=9292
::1 - - [22/Jun/2015:23:09:48 -0400] "GET / HTTP/1.1" 200 13 0.0059
::1 - - [22/Jun/2015:23:09:48 -0400] "GET / HTTP/1.1" 200 13 0.0124
Hello, world!%

我知道我在这里缺少一些基本的东西,任何帮助都会受到赞赏。谢谢。

0 个答案:

没有答案