首页 > 解决方案 > Rails 和 Heroku 本地没有日志记录/信息

问题描述

我的 Rails 应用程序在 Heroku 上,需要访问 S3。因此,我.env的目录根目录中有一个文件,其中包含 AWS 身份验证位。简单运行rails s不会使用 env 文件,所以我需要使用heroku local. 但是,这不会吐出任何标准 rails 输出。我确实尝试heroku logsheroku logs -t

我的过程文件:

web: bundle exec puma -t 5:5 -p ${PORT:-3000} -e ${RACK_ENV:-development}

我的环境文件:

RACK_ENV=development
PORT=3000
AWS_ACCESS_KEY_ID=MYSECRETACCESSKEYID
AWS_SECRET_ACCESS_KEY=mySECRETaccessKEY
S3_BUCKET=my-bucket
AWS_REGION=us-east-1

运行后heroku local

[OKAY] Loaded ENV .env File as KEY=VALUE Format
1:33:45 PM web.1 |  Ignoring http_parser.rb-0.6.0 because its extensions are not built. Try: gem pristine http_parser.rb --version 0.6.0
1:33:46 PM web.1 |  Puma starting in single mode...
1:33:46 PM web.1 |  * Version 4.3.5 (ruby 2.6.3-p62), codename: Code Name
1:33:46 PM web.1 |  * Min threads: 5, max threads: 5
1:33:46 PM web.1 |  * Environment: development
1:33:48 PM web.1 |  * Listening on tcp://0.0.0.0:3000
1:33:48 PM web.1 |  Use Ctrl-C to stop

预期结果:每当我向端点发出请求时,我希望它像往常一样记录端点、SQL 命令和错误。

标签: ruby-on-railsrubyheroku

解决方案


我想我想通了。由于我们没有rails s直接调用(我的 procfile 正在调用bundle exec puma),因此我在 StackOverflow 上查看了涉及 puma 的类似问题并找到了 this

我需要打开第二个终端并运行tail -f logs/development.log.


推荐阅读