codecamp

Sinatra Logging

在请求范围域中,logger 辅助方法揭示了 Logger 实例:

get '/' do
  logger.info "loading data"
  # ...
end

logger 将自动的考虑 Rack 处理器的设置。如果日志被关闭,该方法将返回一个虚拟的对象,所以,不需要在路由和过滤器中担心它。

注意,日志仅在​Sinatra::Application​中是默认启动的,如果,从​Sinatra::Base​中继承,则需要手动的启动日志:

class MyApp < Sinatra::Base
  configure :production, :development do
    enable :logging
  end
end

想要避免启动日志中间件,可以将​ logging ​设置为 nil。记住,此时 logger 换回为 nil。通用的使用情况是,如果,想要设置自己的 logger,Sinatra 将会使用​ env['rack.logger']​ 中指定的日志对象。


Sinatra Streaming Responses
Sinatra 媒体 (MIME) 类型
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Sinatra 配置

Sinatra 错误处理

Sinatra Sinatra::Base - 中间件,程序库和模块化应用

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }