Pingdom Logo

Pingdom is a provider of website monitoring services. In April 2013, they launched a new service called Real User Monitoring. Real User Monitoring allows you to monitor the experience of the real users who browse your site, allowing you to track if your site loads slowly at particular times / from particular geographical locations / loading particular URLs / with particular browsers / etc. The data gained can then help with troubleshooting the way a website is designed.

What this module does

When you sign up for the Pingdom RUM service, you are given an inline Javascript snippet to paste into the HEAD section of the website you wish to monitor.

This module inserts that code for you.

Finding the project identifier

To use this module, you need to find the 24-character hexadecimal string that is the unique identifier for your project. You can find this in two ways.

  1. Go to https://my.pingdom.com/rum, where there is a link to your RUM project(s). The last part of the URL for your project is your project identifier. For example, if your project is managed from https://my.pingdom.com/rum/0123456789abcdef01234567, then your project Id is 0123456789abcdef01234567.
  2. Look at the Javascript snippet that Pingdom ask you to insert. It begins <script type="application/javascript">var _prum={id:"0123456789abcdef01234567"}
    and, again, 0123456789abcdef01234567 would be your project identifier.

Installation

Having found your project identifier, upload the module into /sites/all/modules, and enable the module on your Drupal installation.

Then go to /admin/config/services/pingdom. There is a box to enter the project identifier you found earlier. Save the settings page, and the Pingdom RUM javascript code will now appear in the HEAD section of every page on your site.

You can verify this is working by viewing the source of a page on your website. Near the top of the HEAD section, you should see the Javascript Pingdom gave you to insert.

You can then go to your Real User Monitor project on Pingdom, and choose the "real time" monitoring option. Visits to your webpage should come through in real time.

Finer control

You may not want the Pingdom RUM code appearing on every page of your website. The settings page allows you to specify the pages you want the code to appear on, or to specify that the code will be inserted on every page except the ones you list. You can use wildcards, so "admin*" will make sure that the Pingdom RUM code does not appear anywhere in the admin section.

You can also specify particular user roles for which you want the Pingdom RUM code to appear / not appear. For example, if you only want Pingdom monitoring anonymous page views, you would specify that you only want the Anonymous role to be monitored. Logged-in visitors to your site would then not be monitored.

Support

The issue queue is monitored for support requests. This module's task is simply to insert the Javascript given you by Pingdom into the right place. If that isn't working, please search the issue queue of this module for similar problems, and then open a new issue.

If the Javascript code is being inserted correctly, but you are having problems getting your pageviews to be monitored by Pingdom, you need to contact Pingdom's support. If Pingdom's support team say that the problem is because of the way the code appears in your HTML, then by all means open an issue.

All support in the issue queue is by volunteers in the Drupal community, so please be patient!

A note on which versions of Drupal core are supported

This module has been released for Drupal 7.

When Drupal 8 is released, it is my full intention to release a new version of this module that works with Drupal 8. I will continue to support and develop this module as necessary. I won't, at this stage, pledge that a working version will be released on the same day that Drupal 8 is released, but I would certainly aim for something close to that.

Note on Drupal 8 version: I am still maintaining this module, and am fully committed to porting it to Drupal 8. However, for the next 2-3 months, I don't have time to migrate the code due to other commitments. It is coming. If anyone else would like to open an issue for this, and propose a patch that can then become RTBC as someone else tests and reviews it, I will happily create an 8.x branch and commit the patch.

Project Information

Downloads