Rails在Heroku中有一个自定义Logger

时间:2016-06-30 14:47:33

标签: ruby-on-rails logging heroku

我需要一个自定义Logger来记录在Heroku中部署的应用程序中发生的特定操作。该日志供用户查看(这就是默认记录器在这里不合适的原因)。

在本地开发测试时,一切都很好。我有

logger = Logger.new(PATH)
logger.info("...")

PATH设置在环境变量上。

现在我想部署到Heroku,但我发现自己有一个问题:用户如何查看此日志?我需要在哪里保存它?

2 个答案:

答案 0 :(得分:1)

在heroku文件系统上是只读的,你应该登录到stdout。默认日志可以由rails_12factor gem指向那里(或由你自己配置,但前者更容易)

但是对于自定义日志,用户可以查看它更好地写入db,因为需要进一步访问控制的可能性很高

答案 1 :(得分:0)

Heroku有一个ephemeral filesystem表示您上传的文件不久后会被删除。 如果你需要Heroku上的自定义记录器,我会说你应该使用更持久的东西。您可以使用类似Redis的内容。

Look at this answer for more info.