Vue.js
Real User Monitoring for Vue.js applications is available using the Raygun4JS provider.
Raygun4JS is a library you can easily add to your website and web applications which allows you to monitor frontend performance issues affecting your users.
Once Raygun is installed, it will automatically start monitoring your application for complete user sessions with Real User Monitoring.
Step 1: Install the Raygun4JS package
NPM
npm install raygun4js
Yarn
yarn add raygun4js
Bun
bun add raygun4js
Step 2: Enable Real User Monitoring
In your main.js
file, or where ever your main app setup is, paste the following code to configure Raygun.
import rg4js from 'raygun4js';
rg4js('apiKey', 'paste_your_api_key_here');
rg4js('enableRealUserMonitoring', true);
Track route changes
To track route changes, the trackEvent
method should be called when route change was successful.
rg4js('trackEvent', {
type: 'pageView',
path: location.pathname
});
More information about the trackEvent
method can be found here.
If you are using Vue Router, you can register a Global After Hook to then call the trackEvent
method automatically on each transition:
router.afterEach((to, from) => {
rg4js('trackEvent', {
type: 'pageView',
path: to.path
});
})
Step 1: Install the Raygun4JS package
Add the following snippet to the beginning of the <head>
tag within your markup. Please include this snippet before any other <script>
tag references are made to ensure that Raygun has the best chance to capture all error events on the page.
<script type="text/javascript">
!function(a,b,c,d,e,f,g,h){a.RaygunObject=e,a[e]=a[e]||function(){
(a[e].o=a[e].o||[]).push(arguments)},f=b.createElement(c),g=b.getElementsByTagName(c)[0],
f.async=1,f.src=d,g.parentNode.insertBefore(f,g),h=a.onerror,a.onerror=function(b,c,d,f,g){
h&&h(b,c,d,f,g),g||(g=new Error(b)),a[e].q=a[e].q||[],a[e].q.push({
e:g})}}(window,document,"script","//cdn.raygun.io/raygun4js/raygun.min.js","rg4js");
</script>
The above snippet will fetch the Raygun4JS script from our CDN asynchronously so it doesn't block the page load. It will also catch errors that are thrown while the page is loading, and send them when the script is ready.
Alternatively, you can download the production script (minified) or the development script (full source). Note: If you encounter a situation where no events are appearing within Raygun, you may need to hard code the protocol so that the CDN matches your hosting environment. This could look like one of the following:
https://cdn.raygun.io/raygun4js/raygun.min.js
http://cdn.raygun.io/raygun4js/raygun.min.js
This will be in replacement of //cdn.raygun.io/raygun4js/raygun.min.js
.
Step 2: Enable Real User Monitoring
In your main app setup code, paste the following to configure Raygun:
rg4js('apiKey', 'paste_your_api_key_here');
rg4js('enableRealUserMonitoring', true);
Track route changes
To track route changes, the trackEvent
method should be called when route change was successful.
rg4js('trackEvent', {
type: 'pageView',
path: location.pathname
});
More information about the trackEvent
method can
be found here.
If you are using Vue Router, you can register
a Global After Hook to then call
the trackEvent
method automatically on each transition:
router.afterEach((to, from) => {
rg4js('trackEvent', {
type: 'pageView',
path: to.path
});
})
Advanced Setup
For advanced setup instructions please refer to the Advanced Features documentation page.
Troubleshooting
For troubleshooting tips please refer to the Troubleshooting documentation page.
The provider is open source and available at the Raygun4js repository.