CINXE.COM
BugSnag docs › Product
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <!-- Always force latest IE rendering engine or request Chrome Frame --> <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="Learn about the core features of our error reporting libraries, dashboard, and configuration settings."> <title>BugSnag docs › Product</title> <link rel="icon" type="image/png" href="/assets/images/favicon2-96.png" sizes="96x96"> <link href="/assets/stylesheets/all.css" rel="stylesheet" /> <link rel="canonical" href="https://docs.bugsnag.com/product/"> <!-- BugSnag --> <script src="//d2wy8f7a9ursnm.cloudfront.net/v7/bugsnag.min.js"></script> <script> Bugsnag.start({ apiKey: '1adb72945c3fe4df9da3638ec54c5e4f', enabledReleaseStages: ['preview', 'production'], releaseStage: 'production' }) </script> <!-- CookieHub --> <script type="text/javascript"> var cpm = {}; (function(h,u,b){ var d=h.getElementsByTagName("script")[0],e=h.createElement("script"); e.async=true;e.src='https://cookiehub.net/c2/93363859.js'; e.onload=function(){u.cookiehub.load(b);} d.parentNode.insertBefore(e,d); })(document,window,cpm); </script> <!-- Segment --> <script type="text/plain" data-consent="analytics"> !function(){var analytics=window.analytics=window.analytics||[];if(!analytics.initialize)if(analytics.invoked)window.console&&console.error&&console.error("Segment snippet included twice.");else{analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","page","once","off","on"];analytics.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics}};for(var t=0;t<analytics.methods.length;t++){var e=analytics.methods[t];analytics[e]=analytics.factory(e)}analytics.load=function(t){var e=document.createElement("script");e.type="text/javascript";e.async=!0;e.src=("https:"===document.location.protocol?"https://":"http://")+"cdn.segment.com/analytics.js/v1/"+t+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(e,n)};analytics.SNIPPET_VERSION="3.1.0"; // Track page views in Segment unless PetalBot is the source of the request. // PetalBot requests translate to a lot of MTUs (unique monthly users) in Segment which are billable. if (!/PetalBot/i.test(window.navigator.userAgent)) { analytics.load("68nit8nqeCaJTiD3u6961Prq8ZrNFMSF"); analytics.page() }}}(); </script> <!-- Global site tag (gtag.js) - Google Ads: 987941250 --> <script type="text/plain" data-consent="marketing" async src="https://www.googletagmanager.com/gtag/js?id=AW-987941250"></script> <script type="text/plain" data-consent="marketing"> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'AW-987941250'); </script> <!-- Event snippet for Sign-up 2020-04-30 conversion page In your html page, add the snippet and call gtag_report_conversion when someone clicks on the chosen link or button. --> <script type="text/plain" data-consent="marketing"> function gtag_report_conversion(url) { var callback = function () { if (typeof(url) != 'undefined') { window.location = url; } }; gtag('event', 'conversion', { 'send_to': 'AW-987941250/AllYCPWI684BEIKTi9cD', 'event_callback': callback }); return false; } </script> <!-- 6sense --> <script type="text/plain" data-consent="marketing"> window._6si = window._6si || []; window._6si.push(['enableEventTracking', true]); window._6si.push(['setToken', '8e0ea75c2ca92b31dec5baa7e7cf66be']); window._6si.push(['setEndpoint', 'b.6sc.co']); (function() { var gd = document.createElement('script'); gd.type = 'text/javascript'; gd.async = true; gd.src = '//j.6sc.co/6si.min.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(gd, s); })(); </script> </head> <body class="product product_index"> <div class="Main"> <nav class="Sidebar"> <button class="Sidebar-toggle" onclick="document.body.classList.toggle('show-sidebar')"> <img class="Sidebar-icon Sidebar-icon-menu no-open" src="/assets/images/icons/menu.svg" /> <img class="Sidebar-icon Sidebar-icon-close no-open" src="/assets/images/icons/close.svg" /> </button> <div class="Sidebar-content"> <a class="Sidebar-logo" href="/"></a> <div class="Sidebar-search"> <input class="Sidebar-searchInput js-searchInput" type="search" placeholder="Search docs..."/> </div> <div class="Sidebar-sectionsScrollbarHider "> <div class="Sidebar-sections"> <div class="Sidebar-section"> <div class="Sidebar-sectionHeader">Product guides</div> <a href="/product/getting-started/" class="Sidebar-navLink"> Getting started guide </a><a href="/product/automatic-error-assignment/" class="Sidebar-navLink"> Automatic error assignment </a><a href="/product/custom-filters/" class="Sidebar-navLink"> Custom filters </a><a href="/product/email/" class="Sidebar-navLink"> Email notifications </a><a href="/product/error-grouping/" class="Sidebar-navLink"> Error grouping </a><a href="/product/error-status-and-actions/" class="Sidebar-navLink"> Error status and actions </a><a href="/product/features-experiments/" class="Sidebar-navLink"> Feature flags & experiments </a><a href="/product/integrations/" class="Sidebar-navLink"> Integrations </a><a href="/product/event-usage/" class="Sidebar-navLink"> Managing event usage </a><a href="/product/pivot-table/" class="Sidebar-navLink"> Pivot table </a><a href="/product/releases/" class="Sidebar-navLink"> Releases & versions </a><a href="/product/roles-and-permissions/" class="Sidebar-navLink"> Roles and permissions </a><a href="/product/searching-dashboard/" class="Sidebar-navLink"> Search & segmentation </a><a href="/product/single-sign-on/" class="Sidebar-navLink"> Single sign-on (SSO) </a><a href="/product/stability/" class="Sidebar-navLink"> Stability </a> </div> <div class="Sidebar-section"> <div class="Sidebar-sectionHeader">FAQs</div> <a href="/product/account-and-security/" class="Sidebar-navLink"> Account, security, & passwords </a><a href="/product/plans-and-billing/" class="Sidebar-navLink"> Billing, plans, & payments </a> </div> </div> </div> </div> </nav> <div class="Content"> <div class="TopBar"> <div class="TopBar-content Grid"> <div class="TopBar-breadcrumbs"> <a href="/" class="TopBar-breadcrumb"> Docs </a><a href="/product/" class="TopBar-breadcrumb"> Product </a> </div> <div class="TopBar-buttons"> <a class="TopBar-button" href="https://www.bugsnag.com">bugsnag.com</a> <a class="TopBar-button is-primary" href="https://app.bugsnag.com/user/new/" onclick="gtag_report_conversion();">Start Free Trial</a> </div> </div> </div> <div class="Typography Grid"> <h1>Product guides</h1> <p>Learn about the core features of our error reporting libraries, dashboard, and configuration settings.</p> <div class="Blocks"> <a class="Blocks-block" href="getting-started/" data-sidebar-label="Getting started guide"> <div class="Blocks-content"> <div class="Blocks-header">Getting started guide</div> <div class="Blocks-description">Understand how BugSnag works, how to add BugSnag to your apps, and estimated times for implementation.</div> </div> </a> <a class="Blocks-block" href="account-and-security/" data-sidebar-label="Account, security, & passwords"> <div class="Blocks-content"> <div class="Blocks-header">Account, security, & passwords</div> <div class="Blocks-description">Answers to questions about your user account, organization, account security, and password.</div> </div> </a> <a class="Blocks-block" href="automatic-error-assignment/" data-sidebar-label="Automatic error assignment"> <div class="Blocks-content"> <div class="Blocks-header">Automatic error assignment</div> <div class="Blocks-description">Learn how to implement a rules based approach to automatically assign an error to a collaborator or team</div> </div> </a> <a class="Blocks-block" href="plans-and-billing/" data-sidebar-label="Billing, plans, & payments"> <div class="Blocks-content"> <div class="Blocks-header">Billing, plans, & payments</div> <div class="Blocks-description">Answer common questions about billing, available plans, payments, and usage.</div> </div> </a> <a class="Blocks-block" href="custom-filters/" data-sidebar-label="Custom filters"> <div class="Blocks-content"> <div class="Blocks-header">Custom filters</div> <div class="Blocks-description">Filter error reports using custom error properties.</div> </div> </a> <a class="Blocks-block" href="email/" data-sidebar-label="Email notifications"> <div class="Blocks-content"> <div class="Blocks-header">Email notifications</div> <div class="Blocks-description">Learn how to set up notifications for BugSnag.</div> </div> </a> <a class="Blocks-block" href="error-grouping/" data-sidebar-label="Error grouping"> <div class="Blocks-content"> <div class="Blocks-header">Error grouping</div> <div class="Blocks-description">Learn about how and why events are grouped into errors.</div> </div> </a> <a class="Blocks-block" href="error-status-and-actions/" data-sidebar-label="Error status and actions"> <div class="Blocks-content"> <div class="Blocks-header">Error status and actions</div> <div class="Blocks-description">Learn about BugSnag鈥檚 error workflow which helps you understand the status of errors in your application to improve your debugging process.</div> </div> </a> <a class="Blocks-block" href="features-experiments/" data-sidebar-label="Feature flags & experiments"> <div class="Blocks-content"> <div class="Blocks-header">Feature flags & experiments</div> <div class="Blocks-description">Monitor errors as you roll out features or run experiments and A/B tests.</div> </div> </a> <a class="Blocks-block" href="integrations/" data-sidebar-label="Integrations"> <div class="Blocks-content"> <div class="Blocks-header">Integrations</div> <div class="Blocks-description">Find out how to connect BugSnag with the tools you use.</div> </div> </a> <a class="Blocks-block" href="event-usage/" data-sidebar-label="Managing event usage"> <div class="Blocks-content"> <div class="Blocks-header">Managing event usage</div> <div class="Blocks-description">Take control over which events we save and count towards your event quota.</div> </div> </a> <a class="Blocks-block" href="pivot-table/" data-sidebar-label="Pivot table"> <div class="Blocks-content"> <div class="Blocks-header">Pivot table</div> <div class="Blocks-description">The distribution of values for errors.</div> </div> </a> <a class="Blocks-block" href="releases/" data-sidebar-label="Releases & versions"> <div class="Blocks-content"> <div class="Blocks-header">Releases & versions</div> <div class="Blocks-description">Configure your application’s version and release stage to unlock powerful features.</div> </div> </a> <a class="Blocks-block" href="roles-and-permissions/" data-sidebar-label="Roles and permissions"> <div class="Blocks-content"> <div class="Blocks-header">Roles and permissions</div> <div class="Blocks-description">Grant roles to collaborators and teams to ensure the right permissions to access projects and actions.</div> </div> </a> <a class="Blocks-block" href="searching-dashboard/" data-sidebar-label="Search & segmentation"> <div class="Blocks-content"> <div class="Blocks-header">Search & segmentation</div> <div class="Blocks-description">Find the errors that matter using the search bar.</div> </div> </a> <a class="Blocks-block" href="single-sign-on/" data-sidebar-label="Single sign-on (SSO)"> <div class="Blocks-content"> <div class="Blocks-header">Single sign-on (SSO)</div> <div class="Blocks-description">Control access to BugSnag using a SAML single sign-on (SSO) provider.</div> </div> </a> <a class="Blocks-block" href="stability/" data-sidebar-label="Stability"> <div class="Blocks-content"> <div class="Blocks-header">Stability</div> <div class="Blocks-description">Monitor the stability of your application and measure progress against stability targets.</div> </div> </a> </div> </div> </div> </div> <div class="Background"> <div class="Background-left"></div> <div class="Background-right"></div> </div> <!-- Docs search --> <script src="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.js"></script><script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script><script src="/assets/javascripts/all.js"></script> <script type="text/javascript"> docsearch({ apiKey: '95e256f960a70c3f7fa9c722dbe28130', appId: 'F9ABIKS431', indexName: 'bugsnag', inputSelector: '.js-searchInput', debug: true, algoliaOptions: { hitsPerPage: 20 } }); </script> <!-- Zendesk Widget --> <script> // Standard Zendesk snippet window.zEmbed||function(e,t){var n,o,d,i,s,a=[],r=document.createElement("iframe");window.zEmbed=function(){a.push(arguments)},window.zE=window.zE||window.zEmbed,r.src="javascript:false",r.title="",r.role="presentation",(r.frameElement||r).style.cssText="display: none",d=document.getElementsByTagName("script"),d=d[d.length-1],d.parentNode.insertBefore(r,d),i=r.contentWindow,s=i.document;try{o=s}catch(e){n=document.domain,r.src='javascript:var d=document.open();d.domain="'+n+'";void(0);',o=s}o.open()._l=function(){var o=this.createElement("script");n&&(this.domain=n),o.id="js-iframe-async",o.src=e,this.t=+new Date,this.zendeskHost=t,this.zEQueue=a,this.body.appendChild(o)},o.write('<body onload="document._l();">'),o.close()}("https://assets.zendesk.com/embeddable_framework/main.js","bugsnag.zendesk.com"); // Don't allow the widget to set cookies: https://developer.zendesk.com/embeddables/docs/widget/settings#cookies window.zESettings = { cookies: false }; // Force the widget locale to be en-US to encourage customers to send in support queries in English zE('webWidget', 'setLocale', 'en-US'); // Some custom code to turn support@bugsnag.com links into Zendesk triggers $('[href="mailto:support@bugsnag.com"], [href="mailto:enterprise@bugsnag.com"], [href="mailto:notifiers@bugsnag.com"]').on('click', function(e) { // Only do this if Zendesk has loaded. Otherwise, fall back to mailto behavior if (window.zEmbed.activate) { window.zEmbed.activate(); e.preventDefault(); } }); </script> </body> </html>