非常基本的ruby / sinatra / heroku /调试问题:如何看看puts和p的输出?

前端之家收集整理的这篇文章主要介绍了非常基本的ruby / sinatra / heroku /调试问题:如何看看puts和p的输出?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试构建一个部署在heroku上的非常简单的sinatra应用程序.

我们的应用程序不会将内容输出到Web浏览器,而是通过API与另一台计算机进行通信.所以我通常的技巧只是在我使用应用程序时向浏览器打印一些额外的调试信息不​​起作用.

我在相关应用程序中看到的示例代码显示了多个’puts’或’p’语句,用于查看正在发生的事情……

输出在哪里,我可以在程序执行时或之后看到输出.

一般来说,如果你在Heroku上托管的代码徘徊,那就是没有做你想要的,那么在代码输出消息中的各个地方最简单的方法就是“foo equals 123”,这样你就可以看到输出到弄清楚代码中发生了什么?

p和put不输出所以当我输入“heroku logs”时我可以看到的日志…

解决方法

根据 http://docs.heroku.com/logging,如果添加基本记录器(显然默认添加到2011年2月2日之后创建的所有应用程序),您应该可以使用puts和p转到您的日志.

对于使用Sinatra和Logger的非Heroku基本日志文件

require 'logger'
Dir.mkdir('logs') unless File.exist?('logs')
$log = Logger.new('logs/output.log','weekly')

configure :production do
  $log.level = Logger::WARN
end
configure :development do
  $log.level = Logger::DEBUG
end

get "/" do
  $log.debug "Hello,World!"
end

猜你在找的Ruby相关文章