With a 70% increase in internet usage, and digital teams adopting cloud-native technologies at a rapid rate, the importance of measuring customer experience on digital properties is not just a technical problem, but a business imperative. Frontend developers and SREs use Real User Monitoring (RUM) to understand critical components of their end-user experience, like how quickly users see content, when a page becomes interactive, and a page's visual stability. However, some digital businesses want to compare technical performance to user engagement and compare page performance to business outcome; in this case, it helps to add a level of customization to the data you collect. Today, we’re proud to announce the general availability of Custom Events functionality in Splunk RUM. Custom Events help you track and analyze your critical business logic with minimal changes to your application.
Digital experience monitoring spans far beyond errors and latency. You can harness the power of custom events to gain meaningful insights into your critical business logic and understand how page performance impacts user engagement and business results by measuring the impact of new features, versions, deployments, or site improvements. These business workflows could range from analyzing customer journeys from product page to checkout page on an e-commerce website to measuring agent wait time on a customer service page. By adding custom attributes like "username" you can compare all users from Splunk RUM's out-of-the-box events, like City, or Browser, so you can understand the performance from the user’s perspective from New York to London.
Let’s take an example of this sample e-commerce website where the SREs and DevOps engineers have been using Splunk RUM to measure the performance of their website.
With custom events, users can leverage Splunk RUM to get better insight into the performance of key functionality like time spent during the “add to cart” or “place order” function. While business owners can use these insights to identify the performance and popularity of products, technical owners can identify and isolate latency, errors, and anomalies for the most critical user pathways.
Custom events appear as the top row on the Splunk RUM overview page. Like any other out-of-box event, you will see the count, error rate, and latency of a custom event.
Let’s take a closer look:
In this e-commerce example, three custom events have been instrumented to the “product details,” “add to cart,” and “place order” workflows. As you can see, in the specified time frame four requests were made to AddToCart but only two requests were made to PlaceOrder. Therefore, our customer conversion rate is 50%. On the very right side, you can see that the top 75% (P75) of the PlaceOrder events are actually taking 3.55 seconds to complete. Perhaps with this slowness, customers are abandoning the purchase process. Let’s investigate further why PlaceOrder has a high latency by hopping on to Tag Spotlight.
Tag Spotlight shows us a couple of things. The 99th percentile of events are taking up to 25 seconds. Second, the issue is widespread across multiple browser types, and also across countries. To drill further, I narrow down the results by selecting a small portion of the spike and exploring an example session. I see the checkout endpoint on PlaceOrder event is taking too long to complete, and because I have APM integration in this instance, I can see the exact trace link to APM which shows me the exact backend service (checkoutservice in this case) causing the high latency.
The above example shows how custom events are an extremely powerful tool that can be instrumental in measuring any custom business logic. But with Splunk Observability Cloud, you can take it one step further. In the future, we will be releasing alerts and dashboards capabilities that will allow you to set up alerts on custom events and visualize them in the way you desire.
Splunk RUM uses open telemetry which makes implementing custom events really easy. Simply initialize custom events functionality once in your header file.
Next, each event just needs to be encapsulated between tracer.startSpan (marks the start of a custom event) and span.end(marks the end of a custom event). That is it. This will start emitting customer events with the enclosed custom javascript business logic. If desired, practitioners can add additional attributes like user id or user name to the custom events to compare performance across users.
Sign up for a free trial, or go to the Splunk Real User Monitoring product page for more!
The Splunk platform removes the barriers between data and action, empowering observability, IT and security teams to ensure their organizations are secure, resilient and innovative.
Founded in 2003, Splunk is a global company — with over 7,500 employees, Splunkers have received over 1,020 patents to date and availability in 21 regions around the world — and offers an open, extensible data platform that supports shared data across any environment so that all teams in an organization can get end-to-end visibility, with context, for every interaction and business process. Build a strong data foundation with Splunk.