Skip to content
This repository has been archived by the owner on Jan 13, 2024. It is now read-only.

evanphx/Gauge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gauge, A live status viewer for Rubinius

Gauge is a non-database backed Rails 3.0 application that reads a heap dump from the Rubinius VM and then displays the heap dump in a manner which allows you to interact with the heap snapshot.

Creating a Heap Dump

Following the instructions from the "Memory Analysis" section of the Rubinius documentation (http://rubini.us/doc/en/tools/memory-analysis/), prepare a dump file. Here is a brief overview of the process. From the docs:

Rubinius provides access to the VM via an agent interface. The agent opens a network socket and responds to commands issued by the console program. The agent must be started with the program.

rbx -Xagent.start <script name>

Connect to the agent using the rbx console. This program opens an interactive session with the agent running inside the VM. Commands are issued to the agent. In this case we are saving a heap dump for offline analysis.

$ rbx console
VM: rbx -Xagent.start leak.rb tcp://127.0.0.1:5549 1024 100000000
Connecting to VM on port 60544
Connected to localhost:60544, host type: x86_64-apple-darwin10.5.0
console> set system.memory.dump heap.dump
console> exit

The command is set system.memory.dump . The heap dump file is written to the current working directory for the program running the agent.

Configuring Gauge

Set the ENV['DUMP'] environment variable in config/environment.rb, pointing to a heap dump file you want to analyze.

Run the Gauge app with:

rails server

and you will be greeted with a menu. Enjoy!

Screenshot

Screenshot

Details

Most recently tested with:

rubinius 2.0.0dev (1.8.7 96146df9 yyyy-mm-dd JI) [x86_64-apple-darwin10.7.3]

About

A live status viewer for Rubinius

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •