我想格式化我的 Logger
输出以包含当前内存使用情况,以供长时间运行的进程使用。
Ruby 有没有为此内置的东西,有点像 PHP 的 memory_get_usage()
?还是我必须执行一些 shell 命令才能从 ps
获取它?
最佳答案
NewRelic gem 通过它们的MemorySampler
class 为许多操作系统和ruby 运行时提供简单的RSS 使用实现。 .
在您的 Gemfile
中包含 newrelic_rpm
gem 并调用它:
NewRelic::Agent::Samplers::MemorySampler.new.sampler.get_sample
它返回当前进程作为 RSS 持有的内存兆字节数。
实现更喜欢可用的进程内计数器(jruby),在 Linux 上使用 /proc/#{$$}/status
,然后回退到 ps
其他地方。
关于ruby - 获取当前 ruby 进程内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7220896/