Pulse is the newest product by Raygun. It has been on the market for a year and is focused on real-time performance monitoring of websites and mobile applications, including geographic information.
Raygun is an award-winning, New Zealand-based producer of development support products that are available via subscription as either a fully hosted Software-as-a-Service offering, or on-premises deployments.
What is Real User Monitoring?
Real user monitoring (RUM) is passively watching actual user interactions with a website or mobile application. It gathers real world response times, and user paths and errors as they are experienced. RUM is often used in conjunction with server monitoring and synthetic transactions to give a holistic view of an application’s health.
Ease of Use
Pulse and other products by Raygun have one thing in common. They are some of the easiest products I’ve worked with as far as the speed and simplicity of getting the basic tooling in place to start gathering metrics.
Once registered for the free trial, setting up Pulse only takes a few steps.
- “Create Pulse Application”
- Name the application
- Select your language (JavaScript / iOS / Android)
- Copy/paste the code snippets into your app or website and deploy.
A couple of nice touches are that the code snippets already have your application API key in them, so you can really just copy/paste. The other nice feature is that you can add multiple languages to a single application to give a business-friendly view across different mobile platforms and web applications.
After one day of use, it has enough data for valuable feedback, and will start to show what regions it is slow from, and what pages might need some fine-tuning.
Data Collected
Pulse sends data on every page view to your Pulse instance and stores it by application. It has an optional add-on script that can be included that will also pass along the logged in user.
The data includes page load time, as well as other typical web analytics information such as IP address, page viewed, date and time, browser agent information, and basic client information like OS.
Included Features
The data can be sliced and diced in multiple ways. The main dashboard is a summary of new and returning active sessions, average user satisfaction, and how many views have been crash-free. The dashboard also shows the number of sessions over the preceding twenty-four hours and the last few pages loaded.
Under the Pulse section of the Raygun console there are more detailed breakdowns of the collected data. This includes a live visualization of the world map, which shows real-time user sessions, average response time, and average session time.
Additional screens are available in the Pulse section. They show more traditional web analytics information like user paths, information about what individual sessions have been up to, and browser and operating system statistics.
Performance Monitoring with Insights
In November 2017 Raygun added a new feature to Pulse called Insights. The feature crawls all pages of a website periodically and generates reportsfrom the crawls containing performance metrics.
The goal of Insights is to identify performance issues introduced by updates to a website. Tweaks to PHP or Javascript code, the creation of new pages or other changes could create performance problems that would be hard to detect without a manual review of each page. That’s especially true if you have a large site that consists of hundreds or thousands of pages, and/or if your pages are dynamically generated (and therefore harder to monitor from the server side). Using Insights, you can track page load time, error codes and so on across your entire website without having to test each page manually.
You could also monitor performance on a page-by-page basis using something like Google PageSpeed, or even just Bash scripts that pull pages with wget. However, Pulse’s major value-add consists of two factors: automating the crawling process and providing visual reports that are easy to interpret. In this way, Insights streamlines the process of detecting performance problems on obscure problems.
Insights also offers convenient ChatOps integrations to simplify the process of alerting your whole team about performance difficulties.
Licensing and Deployment Options
Pricing for the most common plans is readily available on Raygun.com, and is in line with most other players in the market, like App Dynamics or New Relic. Established long-time vendors like IBM and HPE have RUM offerings that are much more expensive and assume you have large investments in their platforms already.
In reality, Raygun Pulse offers one very nice advantage over almost all other offerings on the market. It provides unlimited applications and team members in every plan. Other vendors charge a fee per application and per usage; Pulse is purely based on usage.
There are lower-cost offerings available on the market, but they are often standalone. The real value with Pulse was discovered when combining it with Raygun’s Crash Reporting to get a real view of where and when users were experiencing problems.
I also like that Raygun Pulse is available as an on-premises option. This will be especially valuable for larger enterprises or any company that does not operate on US soil but wants to have better control of their data. Whether it is for contractual or legal reasons around data sovereignty or just paranoia, it is an option that will be very appealing to some.
Limitations
Pulse has a very narrow focus on websites and mobile applications. JavaScript and WordPress are the only two options out of beta, and iOS, Android, and Xamarin are still in beta. It would be nice to have other mobile frameworks like React, Ionic, and even Unify supported to some degree with guides.
However, there are lots of pre-built Integration options listed inside Raygun’s unified console. The vast majority are focused around Raygun’s original Crash Reporting product.
Conclusion
Pulse is a solid addition to the Raygun family of products. I feel it provides valuable insight to a development team around application usage patterns, and where unseen performance problems might be happening.
Anyone already using Crash Reporting from Raygun would benefit from adding Pulse to the mix. The extra insight is great.