<script>
var _rollbarConfig = {
    accessToken: "sign up get access token",
    captureUncaught: true,
    captureUnhandledRejections: true,
    payload: {
        environment: "production"
    }
};
// Rollbar Snippet
!function(r){function o(e){if(n[e])return n[e].exports;var t=n[e]={exports:{},id:e,loaded:!1};return r[e].call(t.exports,t,t.exports,o),t.loaded=!0,t.exports}var n={};return o.m=r,o.c=n,o.p="",o(0)}([function(r,o,n){"use strict";var e=n(1),t=n(4);_rollbarConfig=_rollbarConfig||{},_rollbarConfig.rollbarJsUrl=_rollbarConfig.rollbarJsUrl||"https://cdnjs.cloudflare.com/ajax/libs/rollbar.js/2.1.3/rollbar.min.js",_rollbarConfig.async=void 0===_rollbarConfig.async||_rollbarConfig.async;var l=e.setupShim(window,_rollbarConfig),a=t(_rollbarConfig);window.rollbar=e.Rollbar,l.loadFull(window,document,!_rollbarConfig.async,_rollbarConfig,a)},function(r,o,n){"use strict";function e(r){return function(){try{return r.apply(this,arguments)}catch(r){try{console.error("[Rollbar]: Internal error",r)}catch(r){}}}}function t(r,o){this.options=r,this._rollbarOldOnError=null;var n=s++;this.shimId=function(){return n},window&&window._rollbarShims&&(window._rollbarShims[n]={handler:o,messages:[]})}function l(r,o){var n=o.globalAlias||"Rollbar";if("object"==typeof r[n])return r[n];r._rollbarShims={},r._rollbarWrappedError=null;var t=new d(o);return e(function(){return o.captureUncaught&&(t._rollbarOldOnError=r.onerror,i.captureUncaughtExceptions(r,t,!0),i.wrapGlobals(r,t,!0)),o.captureUnhandledRejections&&i.captureUnhandledRejections(r,t,!0),r[n]=t,t})()}function a(r){return e(function(){var o=this,n=Array.prototype.slice.call(arguments,0),e={shim:o,method:r,args:n,ts:new Date};window._rollbarShims[this.shimId()].messages.push(e)})}var i=n(2),s=0,c=n(3),p=function(r,o){return new t(r,o)},d=c.bind(null,p);t.prototype.loadFull=function(r,o,n,t,l){var a=function(){var o;if(void 0===r._rollbarDidLoad){o=new Error("rollbar.js did not load");for(var n,e,t,a,i=0;n=r._rollbarShims[i++];)for(n=n.messages||[];e=n.shift();)for(t=e.args||[],i=0;i<t.length;++i)if(a=t[i],"function"==typeof a){a(o);break}}"function"==typeof l&&l(o)},i=!1,s=o.createElement("script"),c=o.getElementsByTagName("script")[0],p=c.parentNode;s.crossOrigin="",s.src=t.rollbarJsUrl,n||(s.async=!0),s.onload=s.onreadystatechange=e(function(){if(!(i||this.readyState&&"loaded"!==this.readyState&&"complete"!==this.readyState)){s.onload=s.onreadystatechange=null;try{p.removeChild(s)}catch(r){}i=!0,a()}}),p.insertBefore(s,c)},t.prototype.wrap=function(r,o){try{var n;if(n="function"==typeof o?o:function(){return o||{}},"function"!=typeof r)return r;if(r._isWrap)return r;if(!r._rollbar_wrapped&&(r._rollbar_wrapped=function(){try{return r.apply(this,arguments)}catch(e){var o=e;throw"string"==typeof o&&(o=new String(o)),o._rollbarContext=n()||{},o._rollbarContext._wrappedSource=r.toString(),window._rollbarWrappedError=o,o}},r._rollbar_wrapped._isWrap=!0,r.hasOwnProperty))for(var e in r)r.hasOwnProperty(e)&&(r._rollbar_wrapped[e]=r[e]);return r._rollbar_wrapped}catch(o){return r}};for(var u="log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleUnhandledRejection".split(","),f=0;f<u.length;++f)t.prototype[u[f]]=a(u[f]);r.exports={setupShim:l,Rollbar:d}},function(r,o){"use strict";function n(r,o,n){if(r){var t;"function"==typeof o._rollbarOldOnError?t=o._rollbarOldOnError:r.onerror&&!r.onerror.belongsToShim&&(t=r.onerror,o._rollbarOldOnError=t);var l=function(){var n=Array.prototype.slice.call(arguments,0);e(r,o,t,n)};l.belongsToShim=n,r.onerror=l}}function e(r,o,n,e){r._rollbarWrappedError&&(e[4]||(e[4]=r._rollbarWrappedError),e[5]||(e[5]=r._rollbarWrappedError._rollbarContext),r._rollbarWrappedError=null),o.handleUncaughtException.apply(o,e),n&&n.apply(r,e)}function t(r,o,n){if(r){"function"==typeof r._rollbarURH&&r._rollbarURH.belongsToShim&&r.removeEventListener("unhandledrejection",r._rollbarURH);var e=function(r){var n=r.reason,e=r.promise,t=r.detail;!n&&t&&(n=t.reason,e=t.promise),o&&o.handleUnhandledRejection&&o.handleUnhandledRejection(n,e)};e.belongsToShim=n,r._rollbarURH=e,r.addEventListener("unhandledrejection",e)}}function l(r,o,n){if(r){var e,t,l="EventTarget,Window,Node,ApplicationCache,AudioTrackList,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(",");for(e=0;e<l.length;++e)t=l[e],r[t]&&r[t].prototype&&a(o,r[t].prototype,n)}}function a(r,o,n){if(o.hasOwnProperty&&o.hasOwnProperty("addEventListener")){for(var e=o.addEventListener;e._rollbarOldAdd&&e.belongsToShim;)e=e._rollbarOldAdd;var t=function(o,n,t){e.call(this,o,r.wrap(n),t)};t._rollbarOldAdd=e,t.belongsToShim=n,o.addEventListener=t;for(var l=o.removeEventListener;l._rollbarOldRemove&&l.belongsToShim;)l=l._rollbarOldRemove;var a=function(r,o,n){l.call(this,r,o&&o._rollbar_wrapped||o,n)};a._rollbarOldRemove=l,a.belongsToShim=n,o.removeEventListener=a}}r.exports={captureUncaughtExceptions:n,captureUnhandledRejections:t,wrapGlobals:l}},function(r,o){"use strict";function n(r,o){this.impl=r(o,this),this.options=o,e(n.prototype)}function e(r){for(var o=function(r){return function(){var o=Array.prototype.slice.call(arguments,0);if(this.impl[r])return this.impl[r].apply(this.impl,o)}},n="log,debug,info,warn,warning,error,critical,global,configure,handleUncaughtException,handleUnhandledRejection,_createItem,wrap,loadFull,shimId".split(","),e=0;e<n.length;e++)r[n[e]]=o(n[e])}n.prototype._swapAndProcessMessages=function(r,o){this.impl=r(this.options);for(var n,e,t;n=o.shift();)e=n.method,t=n.args,this[e]&&"function"==typeof this[e]&&this[e].apply(this,t);return this},r.exports=n},function(r,o){"use strict";r.exports=function(r){return function(o){if(!o&&!window._rollbarInitialized){r=r||{};for(var n,e,t=r.globalAlias||"Rollbar",l=window.rollbar,a=function(r){return new l(r)},i=0;n=window._rollbarShims[i++];)e||(e=n.handler),n.handler._swapAndProcessMessages(a,n.messages);window[t]=e,window._rollbarInitialized=!0}}}}]);
// End Rollbar Snippet
</script>
window.onerror("TestError: Hello World",
window.location.href)

Add the Rollbar JavaScript SDK

Send a test to your console

Rollbar is quick & easy to install

Rollbar is quick & easy to install

JavaScript Error Logging with Rollbar

Real-time monitoring, alerting, and analytics for JavaScript exceptions

Start 14-Day Trial

Join 100,000+ developers, improving millions of software experiences

5,000 errors always free

Connect

Lightweight, easy to install

Rollbar lets us be proactive and fix impactful issues that could be a disaster for us in terms of how people perceive us and the quality of our product.

Before Rollbar we were flying blind. Now when errors occur, we go from problem identified to root cause to resolution within minutes. Before users notice.

CTO, Clubhouse

Engineering Lead, Instacart

Andrew Childs

Arnaud Ferreri

Rollbar works where you do

Start 14-Day Trial

Quick setup - No credit card required - 5,000 errors/month free forever

Plans start as low as $49 a month

Follow Rollbar on Twitter and GitHubCall 1-888-568-3350 or Contact us     

Copyright ©2012-18 Rollbar Inc. 51 Federal Street, Suite 401, San Francisco, CA 94107. All rights reserved.  Privacy Policy |  Terms of Service

Follow on Twitter , Google+, GitHub    
Call 1-888-568-3350 or Contact Us   

Copyright ©2012-2015 Rollbar Inc. 221 Main Street Suite 780, San Francisco, CA 94105  . All rights reserved.    
Privacy Policy |  Terms of Service

JavaScript Error Logging with Rollbar

Join 100,000+ developers, improving millions of software experiences

Real-time monitoring, alerting, and analytics for JavaScript exceptions

Plans start as low as $49 a month

Rollbar works where you do

Follow Rollbar on Twitter and GitHub
Call 1-888-568-3350 or Contact us     

Copyright ©2012-18 Rollbar Inc. 51 Federal Street, Suite 401, San Francisco, CA 94107. 
All rights reserved.  

Privacy Policy |  Terms of Service

Integrations

Features

Setup

Detect, diagnose, and debug with ease

Source Maps

Rollbar supports JavaScript source maps to get meaningful stack traces when using minified JavaScript in production. Once you enable source mapping, you'll see the original source filename, line number, method name, and code snippet in the error stack trace.

Telemetry provides a timeline of events in the browser leading up to when a JavaScript error occurred. This helps to identify the root cause of JavaScript errors faster by providing critical information on user behavior, network activity, and more.

JavaScript Telemetry

See what environments experience each error to identify patterns affecting specific browsers, operating systems, IPs, etc. And, get insight into users who've experienced JavaScript errors, or which deployments are suspected to have caused the error.

Contextual Data

Rollbar offers a handful of options to help, reduce the noise and focus on impactful JavaScript errors. Rollbar automatically groups errors using fingerprints, merge similar JavaScript errors, and custom rules to ignore specific errors.

Reduce JavaScript Noise

Detect, diagnose, and debug with ease

Source Maps

Rollbar supports JavaScript source maps to get meaningful stack traces when using minified JavaScript in production. Once you enable source mapping, you'll see the original source filename, line number, method name, and code snippet in the error stack trace.

JavaScript Telemetry

Telemetry provides a timeline of events in the browser leading up to when a JavaScript error occurred. This helps to identify the root cause of JavaScript errors faster by providing critical information on user behavior, network activity, and more.

Contextual Data

See what environments experience each error to identify patterns affecting specific browsers, operating systems, IPs, etc. And, get insight into users who've experienced errors, or which deployments are suspected to have caused the error.

Reduce JavaScript Noise

Rollbar offers a handful of options to help, reduce the noise and focus on impactful JavaScript errors. Rollbar automatically groups errors using fingerprints, merge similar errors, and custom rules to ignore specific errors.

Classify notifications by JavaScript error type, source, frequency, and more to support and enhance your workflow. Instantly notifications in the tools you use every day. View all errors, immediately post-deployment and instantly spot impactful issues and abnormalities in production.

Quickly Fix JavaScript Issues

Classify notifications by JavaScript error type, source, frequency, and more to support and enhance your workflow. Instantly notifications in the tools you use every day. View all errors, immediately post-deployment and instantly spot impactful issues and abnormalities in production.

Quickly Fix JavaScript Issues

Start 14-Day Trial

Start your 14-day free trial

Join 100,000+ developers, improving millions of software experiences

Start your
14-day free trial

Join 100,000+ developers, improving millions of software experiences

Fix the following errors:
Hide