Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Debian packaging for bustle
Haskell C

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
Bustle
Bustle.hs
HACKING
LICENSE
Makefile
NEWS
README
Setup.lhs
bustle-count.hs
bustle-dbus-monitor.c
bustle-dot.hs
bustle-time.hs
bustle.cabal
bustle.glade
bustle.png
dfeet-method.png
dfeet-signal.png
run-uninstalled.sh

README

Compile the monitor:

    % make

Compile the charting application and utilities:

    % ./Setup.lhs configure --user
    % ./Setup.lhs build
    % ./Setup.lhs install

    If you've got the 'cabal' tool (on Debian systems, this is in the
    'cabal-install' package), you can simply run:

    % cabal install

    This will also pull in the non-Gtk dependencies from Hackage if
    necessary.

    If you're reading this, you probably don't have the Glasgow
    Haskell Compiler and Gtk bindings installed. On Debian-based
    distributions you need to install the following packages:

    # aptitude install libghc6-gtk-dev libghc6-parsec-dev libghc6-mtl-dev

    This will pull in lots of packages, comprising GHC and the Haskell
    standard libraries.

--

Capture some D-Bus traffic:

    % ./bustle-dbus-monitor > log
    ^C

Now chart it:

    % ~/bin/bustle log

Count the method calls and signal emissions:

    % ~/bin/bustle-count log

Make a .dot graph of method caller -> callee:

    % ~/bin/bustle-dot log >log.dot
    % dot -Tpng -o log-callers.png <log.dot

Count the total time spent in each method:

    % ~/bin/bustle-time log

--

FAQ

 - How do I log the system bus?
   * You need to edit /etc/dbus/system.conf to enable eavesdropping, and then
     remove the include of /etc/dbus-1/system.conf.d which seems to re-enable
     strictness. Please remember to undo your changes when you're done logging!
Something went wrong with that request. Please try again.