在heroku上查看rails4 db log

时间:2014-03-08 20:26:45

标签: ruby-on-rails heroku ruby-on-rails-4

我在雪松堆上运行了一个heroku应用程序(在生产环境中)。它使用postgres db。

在我的environment / productions.rb文件中,我已注释掉这一行

# config.log_level = :info

在Heroku中我有这个配置

$> heroku config
=== xxxx Config Vars
LOG_LEVEL:                    debug
RAILS_ENV:                    production

我想查看执行的所有数据库查询。在本地开发环境中,我可以看到这样的日志:

User Load (0.4ms)  SELECT "users".* FROM "users" WHERE "users"."email" = 'xyz@gmail.com'   AND "users"."ustatus" IN (10, 11) LIMIT 1

但在heroku logs他们永远不会出现。任何人都知道如何在heroku上启用db log?

3 个答案:

答案 0 :(得分:1)

编辑:我刚刚发现为什么heroku不应该根据你的作品显示查询日志。 rb配置。问题是如果你有一个所谓的业余爱好层计划,heroku将不会显示查询。您可能正在使用免费版本,这可以解释为什么不显示您的查询。如果要升级到标准或中等计划,heroku日志将显示已执行的查询。

这条heroku文章明确表示不会在业余爱好层级别显示postgres日志:https://devcenter.heroku.com/articles/heroku-postgres-plans#hobby-tier

答案 1 :(得分:1)

您可以通过运行以下命令从heroku上的rails控制台获取日志:

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

正如我在这里找到的那​​样

heroku - how to see all the logs

此处还有heroku日志记录文档:

https://devcenter.heroku.com/articles/logging

答案 2 :(得分:0)

自己做所有事情:

  heroku run bash