1

以前有人问过这个问题,但似乎没有答案对我有用。我将把问题分解为 3 个组成部分:

1)我偶尔会收到 Heroku R14 内存(超出内存配额)(即该网站在 Heroku 上已经运行了 2 天,我在大约 10-15 百万的时间内两次收到此错误[我太情绪化了,无法准确计算时间])。

2)我按照 Heroku 的建议安装了 oink gem。

3)Oink 肯定会记录,因为当我在本地工作时,我会在 heroku 日志和 Webrick 中收到有关此效果的消息。但是,我无法访问显示哪些函数超过内存阈值的日志记录摘要。

返回结果(但错误的)的唯一行是:

oink --threshold=0 logfile_for_oink

但它返回空行如下:

---- MEMORY THRESHOLD ----
THRESHOLD: 0 MB

-- SUMMARY --
Worst Requests:

Worst Actions:

Aggregated Totals:

其他所有尝试(通常是复制 StackOverflow 上已有的建议)都会返回错误。

在此之后,我将列出我所做的不同尝试(因此没有人发布我可能已经尝试过的建议)。

heroku run bundle exec oink --threshold=75 log/*

此行返回以下错误:

/app/vendor/bundle/ruby/1.9.1/gems/oink-0.10.1/lib/oink/cli.rb:88:in `block in get_file_listing': 找不到“log/development.log”(RuntimeError )

这方面的每一个变化,例如 log/production.rb 或 /log/* 或你有什么失败。

我还尝试了以下链接的建议,但无济于事:

将 oink gem 与 heroku 一起使用

oink logs 命令在heroku上不起作用

oink logs 命令在heroku上不起作用

我怎样才能在heroku中运行oink?

谁能帮我?

4

1 回答 1

0

Heroku 在日志文件前面附加了一个时间戳,因此 oink 无法读取它。您可以使用正则表达式来修复它。

http://arches.io/2013/07/understand-memory-usage-on-heroku-rails-app-using-oink/

于 2014-03-22T16:21:35.397 回答