Skip to content

Instantly share code, notes, and snippets.

@quake
Created October 15, 2009 02:12
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save quake/210607 to your computer and use it in GitHub Desktop.
Save quake/210607 to your computer and use it in GitHub Desktop.
module Rack
class MemoryBloat
def initialize(app, logger)
@app = app
@logger = logger
end
def call(env)
memory_usage_before = memory_usage
result = @app.call(env)
memory_usage_after = memory_usage
@logger.info "MemoryBloat: #{memory_usage_after - memory_usage_before} URL: #{Rack::Request.new(env).url}"
result
end
private
def memory_usage
`ps -o rss= -p #{$$}`.to_i
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment