Introducing Gigger, a Realtime Javascript Monitoring Framework

Go to Live Demo >>>

 

Monitoring your web application is essential for professional maintenance and development. Especially if you have a high load on your website and you want to keep the current users on your site, you definitely should stay alert for problems
and be able to react fast in case of problems. Monitoring is also crucial for A/B tests, since you have to evaluate somehow which version
of your website performs better. Many big players also measure constantly how much revenue the website produces. For them it is important to monitor if a new
feature increases or decreases the revenue and take decisions based on that information.

Mayflower is currently developing a javascript framework which provides a smart tool for realtime monitoring and measuring. Read the full article for more information.

Monitoring your web application is essential for professional maintenance and development. Especially if you have a high load on your website and you want to keep the current users on your site, you definitely should stay alert for problems
and be able to react fast in case of problems. Monitoring is also crucial for A/B tests, since you have to evaluate somehow which version
of your website performs better. Many big players also measure constantly how much revenue the website produces. For them it is important to monitor if a new
feature increases or decreases the revenue and take decisions based on that information.

The time it takes to get your monitoring results is crucial for many web applications. If reports reach you after one hour or even a day, its almost impossible to react on potential problems in time. Gigger allows you to monitor your
web application in realtime. Everything you want to track in the web application
is transmitted to the monitor in realtime where it can be processed and visualized.

Most of current monitoring solutions focus on page loads and backend monitoring,
but times change: Nowadays more and more web applications are single page
websites. This makes the old approach difficult, since the only page load happens
in the beginning, afterwards everything is loaded dynamically. Gigger solves this and
brings the monitoring task to the javascript and thus to the browser. It allows you
to monitor what is going on in the browser that runs the web application. Using
gigger you can monitor the web application closely and find out about potential
problems users run into.

From a technical point of view, gigger uses Faye to establish a publish/subscribe connection between
the browsers where the web application runs and the monitor (which also runs in the browser).
With gigger you can specify in the monitor, what should be monitored. The monitor transmits
the requests to the web application and the web application hooks into the desired events and
notifies the monitor when something happened. Since this approach is not perfect and only allows
you to monitor simple things (DOM events), gigger also has an API on the web application side
to manually emit signals. This requires some synchronization between the monitor and the web application,
it only makes sense if the monitor is listening on the right channels where the web application emits
its custom signal. Through this API you have the full flexibility to measure and monitor whatever you
want. You could for example measure how long it takes for your ajax requests to return and calculate
a mean ajax request time from a browser point of view.

We currently have a monitor running, which monitors simple events on blog.mayflower.de, you can find the
monitor on gigger.mayflower.de/monitor.html. We are currently measuring how many hits the blog gets every minute
and which topics are hot. There is also a log view which shows a new entry when someone hits the page and also
when someone clicks on a link.


DISCLAIMER: It’s pre alpha! Don’t expect it to be perfect. The project is in a very early stage, this is the first live test and it could happen that there are some problems with the service. It was tested with Firefox and Chrome.

3 Kommentare

    1. Thanks for the feedback John. What do you mean with memory or cpu usage? On the client or on the server?

      My framework currently focuses on client only, although there is an open ticket to support backend monitoring as well: https://github.com/Mayflower/gigger/issues/9

      I’m not sure yet if gigger should combine back and frontend monitoring, but definitely an interesting point to discuss.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert