RUM in the Cloud – part 1

haller mad scientist.PNGI like to consider myself a “mad scientist” and I recently had the opportunity to get into my lab and find out what Real User Monitoring (RUM) Probe to monitor Android/iOS native applications can do. (Insert evil laugh here.)

 

Did you know that the HP team that builds our customer facing demos already provides the ability to put a RUM Probe into an environment that is facing the public Internet.  This gives you the ability to demonstrate RUM for Native Applications and get measurements from users devices on the open Internet.

 

But I wanted to have my personal RUM 9.24 system -- located in an R&D lab inside the HP firewall -- to include the ability of monitoring Android/iOS native applications for users outside the firewall.

 

 

You can experience how RUM and applications performance montioring with the HP toolkit for Applicati...

 

I have already instrumented an Android application and pointed the measurements to an “inside the HP firewall” RUM Probe.  That was not so fun because only my fellow HP employees around the world (on the HP VPN) could send measurements to my system. (At this point I was a sad, mad scientist.)

 

RUM in cloud 1.PNG

 

Experiment #1 – RUM on EC2

 

My first learning experiment was to try RUM Probe out on an Amazon EC2 “t1.micro” instance.  The challenge here was that the RUM probe’s requirements stated 1GB memory and the “free for a year t1.micro instance” only comes with 615MB.

 

The installer checks would not let me install the RUM probe (due to insufficient memory) so I “cleverly” created a zip file from a working RUM Client Monitor probe on Windows and unpacked it on my “t1.micro” EC2 instance.  I had to edit (i.e. hack) the registry in order to register the RUM probe as a Windows service but I got it all working. 

 

I eventually found out from HP R&D some flags to disable the installer checks.  My RUM Probe is currently working fine and with my low-level of traffic, and with monitoring only one app, it has yet to fail me.  

 

Here are the steps I followed:

1)      Created an Amazon EC2 compute instance.  I used Windows.  I recommend one with the required 1GB of memory (which is the minimum supported requirement).


RUM in cloud 2.png

 

2)      Before you forget, I suggest you create and assign an Elastic IP to this VM.

 

RUM in cloud 3.png

3)      Install the RUM 9.24 probe – NOTE: if you really want to experiment on a free “t1.micro” instance use the flag “-DSKIPALL” to skip all checks when running the installer but remember, this is not an HP supported configuration!

 

4)      Start the RUM probe.

 

5)      If you are going to be using the RUM Browser monitor (this step is not required for native application monitoring) then copy the “clientmon.js” from the install package onto the <installDirectory>\apache-tomcat\webapps\ROOT directory.

 

6)      Open up the two required RUM probe ports in your windows instance for incoming traffic on the following two ports.  I used the default ports.

  1. 2020 for the RUM Engine integration.
  2. 8080 for the port that the Apache Tomcat instance that will receive your measurements.

 

 RUM in cloud 4.PNG

 

7)      NOTE: You must also allow traffic at your Amazon EC2 network border in addition to the VM firewall itself.  To this by adding two Inbound “Custom TCP Rules” in the Security Groups tab.

 

RUM in cloud 5.png

 

8)      Verify that your probe can be reached from the Internet.  Enter http://<yourElasticIP>:8080/hpclientmon/data into a browser.  It should respond with the following error as the page only supports POST operations.  This is good!

 

RUM in cloud 6.png

 

9)      Add this new RUM Probe to your RUM Engine.

 

 RUM in cloud 7.PNG

 

 RUM in Cloud 8.PNG

 

 

 10)      Configure your RUM application in BSM.  For an Android or iOS native application you should pick the “Mobile Application” template.  In my case I instrumented the “CBC News” Android application.

 

RUM in Cloud 9.PNG

 

11)   Instrument your application to send measurements to your new RUM Probe and invite your colleagues to install it to help you get a world-wide performance perspective.  The instrumentation tool for Android is available from the RUM Engine in Tools à Mobile Application Instrumentation.  For iOS you will need to follow the instructions in the RUM manual to adjust your build settings. 

 

In part two, I will document what I did for HP Helion.

Learn more about HP Real User Monitoring at the product page here or visit us at  http://www.hp.com/go/mobilemonitoring

 

You can also experience how RUM and applications performance montioring with the HP toolkit for Appl...

 

/dan

Leave a Comment

We encourage you to share your comments on this post. Comments are moderated and will be reviewed
and posted as promptly as possible during regular business hours

To ensure your comment is published, be sure to follow the Community Guidelines.

Be sure to enter a unique name. You can't reuse a name that's already in use.
Be sure to enter a unique email address. You can't reuse an email address that's already in use.
Type the characters you see in the picture above.Type the words you hear.
Search
Showing results for 
Search instead for 
Do you mean 
About the Author
Dan is a subject matter expert for BSM now working in a Technical Product Marketing role. Dan began his career in R&D as a devloper, and tea...
Featured


Follow Us
The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation.