我在heroku上有个小应用。每当我想要查看日志时,我就转到命令行并执行

heroku logs

它只显示了大约100行。是不是没有办法在heroku上查看我们应用程序的完整日志?


当前回答

我的解决方案是在应用程序第一次启动时获得完整的日志,例如:

heroku logs -n 1500 > log

然后添加fgrep -vf使其保持最新,例如:

heroku logs -n 1500 > newlog ; fgrep -vf log newlog >> log

对于连续日志,只需每x分钟(或秒)使用watch迭代一次。

其他回答

要查看详细的日志,需要在产品中放入两行。rb文件:

config.logger = Logger.new(STDOUT)
config.logger.level = Logger::DEBUG

然后通过跑步

heroku logs -t

您可以查看详细的日志。

Heroku logs -t显示了活动日志。 Heroku日志-n 1500表示日志数量

但我仍然建议使用纸质记录插件,它有一定的好处,并有免费的基本计划。

跟随Heroku记录

要查看您的日志,我们有:

Logs命令默认检索100行日志。

希罗库日志

显示最多200行,——num(或-n)选项。

Heroku log -n 200

实时显示日志

Heroku原木——尾巴

如果你在heroku上有很多应用程序

Heroku日志——应用your_app_name

我的解决方案是在应用程序第一次启动时获得完整的日志,例如:

heroku logs -n 1500 > log

然后添加fgrep -vf使其保持最新,例如:

heroku logs -n 1500 > newlog ; fgrep -vf log newlog >> log

对于连续日志,只需每x分钟(或秒)使用watch迭代一次。

更新(感谢dawmail333):

heroku logs -n 1500

或者,活生生地跟踪这些原木

heroku logs -t 

Heroku日志文档

如果你需要超过几千行,你可以使用heroku的Syslog排水

或者(旧方法):

$ heroku run rails c
File.open('log/production.log', 'r').each_line { |line| puts line }