It’s bleak to have leaks.
Please see here for up-to-date documentation.
There is now a pure-C heap instrumentation as well as the Ruby/ObjectSpace one. You really should be using the C version. It requires you to compile a custom binary, though. Just go to the plugin’s folder (
vendor/plugins/bleak_house in your app, or
bleak_house-5.1/ in your system’s
gems/) and run:
sudo rake ruby:build
I had to junk Rublique because it was introducing its own leaks (via method unbinding) and used an unreliable delta algorithm. Instead the plugin now uses BleakHouse::MemLogger, which is faster and more accurate. Rublique gave me the original idea, so I can’t complain.
A gem version is now available, too. Install and then
require 'bleak_house' in
config/environment.rb. Usage is the same, but you have to manually install the Rake task in each app (the gem install message will explain).
That’s all. Go scale something already.