出于安全原因,我不希望Sinatra打印标准输出中所请求的每个网址,我已尝试使用this answer中建议的set :logging, false
使用:
class SweetAppName< Sinatra::Base
set :show_exceptions, false
set :environment, :production
set :logging, false
然而,当我使用rackup和thin运行应用程序时,我仍然看到请求记录到终端:
127.0.0.1 - - [26 / May / 2015:09:32:34 -0700]&#34; GET / not-a-real-url HTTP / 1.0&#34; 404 - 0.0452
如何关闭它们?
答案 0 :(得分:9)
如果您使用rackup
,Rack will add some middleware, including logging启动应用。您可以使用安静选项(-q
或--quiet
)到rackup
,即从命令行使用
$ rackup -q
如果需要,您可以在config.ru
中添加此选项,这样您就不必记得每次启动应用时都输入该选项。 first line that starts with #\
is parsed as options,因此您可以config.ru
这样:
#\ --quiet
# other middleware etc...
run SweetAppName
如果您使用经典的Sinatra应用程序样式,则需要添加set :logging, false
行,否则Sinatra将添加自己的日志记录。使用模块化样式(就像您在问题中使用的那样),此设置默认为false
,因此您不需要它。