Skip to content

Commit

Permalink
added a picture of Heat Tracer in action and polished up the article
Browse files Browse the repository at this point in the history
  • Loading branch information
gflarity committed Feb 8, 2011
1 parent 50aa675 commit 622a639
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 6 deletions.
25 changes: 19 additions & 6 deletions articles/heat-tracer.markdown
Expand Up @@ -3,15 +3,16 @@ Author: Geoff Flarity
Date: Sun Feb 06 2011 20:36:43 GMT-0500 (EST)
Node: v0.3.8

This article was inspired by talk that Bryan Cantrill and Brendan Greg gave on Joyent's cool cloud analytics tools. This article outlines how create a realtime heatmap of your syscall latency using HTML5, some great node modules, and DTrace. While specific, the code provided could easily be adapted to provide a heatmap of any type of aggregation Dtrace is capable of providing.

This article outlines how create a realtime heatmap of your syscall latency using HTML5, some great node modules, and DTrace. It was inspired by talk that Bryan Cantrill and Brendan Greg gave on Joyent's cool cloud analytics tools. While specific, the code provided could easily be adapted to provide a heatmap of any type of aggregation Dtrace is capable of providing.

## System Requirements

First thing's first, you're going to need a system with DTrace. This likely means Solaris (or one of its decedents), OS X, or a BSD variant. There doesn't appear to be Dtrace available for Linux.

## Security

Secondly, please be aware that at the time of writing the demo code contains a fairly substantial secruity hole. Namely the d script is sent from the client with no authentication what so ever. If you bind to localhost this shouldn't be a big deal for a demo. Time permitting I intend to clean up the code.
Secondly, please be aware that at the time of writing the demo code contains a fairly substantial secruity vulnerabilty. Namely the d script is sent from the client with no authentication what so ever. If you bind to localhost this shouldn't be a big deal for a demo. Time permitting I intend to clean up the code.

## Dependencies

Expand All @@ -38,11 +39,23 @@ Finally the JavaScript client which translates the raw streaming data into pret

<heat-tracer/public/heat_tracer_client.js>

## Run It!

## Further Research
Run Heat Tacer with the following. Note, sudo is required by dtrace as it does kernal magic.

sudo node heat_tracer.js

If all goes well you should see something a moving version of something like the image below.

> ![Alt value of image](heat-tracer/heat_tracer.png)
You can find the latest version of Heat Tracer [here](https://github.com/gflarity/Heat-Tracer).
## Contribute


You can find the latest version of Heat Tracer [here](https://github.com/gflarity/Heat-Tracer). It is my hope that this article will provide the ground work for a much more abitious performance analytics project. If you're interested in contributing please let me know.

## Further Research

More information about Bryan and Brendan's demo can be found [here](http://dtrace.org/blogs/brendan/2011/01/24/cloud-analytics-first-video/)
More information about Bryan and Brendan's demo can be found [here](http://dtrace.org/blogs/brendan/2011/01/24/cloud-analytics-first-video/).

Socket.IO can be found [here](http://socket.io/)
Socket.IO can be found [here](http://socket.io/).
Binary file added articles/heat-tracer/heat_tracer.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 622a639

Please sign in to comment.