Files
nexus/sreweekly/articles/254/06-incident-management-in-2021-from-basics-to-best-practices.html
2026-09-12 17:23:01 +08:00

1990 lines
134 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class='bg-[#0B0C14]!' lang='en' prefix='og: https://ogp.me/ns#'>
<head>
<script nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
(function() {
var theme = 'system';
try {
theme = localStorage.getItem('articles_theme') || 'system';
} catch (_) {}
var prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
var useDark = theme === 'dark' || (theme === 'system' && prefersDark);
if (useDark) {
document.documentElement.classList.add('dark');
document.documentElement.dataset.theme = 'dark';
} else {
document.documentElement.classList.remove('dark');
document.documentElement.dataset.theme = 'light';
}
})();
//]]>
</script><meta content='text/html; charset=UTF-8' http-equiv='Content-Type'>
<title>What Is Incident Management? Beginner’s Guide | Better Stack Community</title>
<meta content='width=device-width,initial-scale=1' name='viewport'>
<link crossorigin='' href='https://cdnjs.betterstack.com' rel='preconnect'>
<link href='https://cdnjs.betterstack.com' rel='dns-prefetch'>
<link crossorigin='' href='https://www.googletagmanager.com' rel='preconnect'>
<link href='https://www.googletagmanager.com' rel='dns-prefetch'>
<link crossorigin='' href='https://plausible.io' rel='preconnect'>
<link href='https://plausible.io' rel='dns-prefetch'>
<link crossorigin='' href='https://forms.hsforms.com' rel='preconnect'>
<link href='https://forms.hsforms.com' rel='dns-prefetch'>
<link crossorigin='' href='https://js.hsforms.net' rel='preconnect'>
<link href='https://js.hsforms.net' rel='dns-prefetch'>
<link crossorigin='' href='https://connect.facebook.net' rel='preconnect'>
<link href='https://connect.facebook.net' rel='dns-prefetch'>
<link crossorigin='' href='https://static.ads-twitter.com' rel='preconnect'>
<link href='https://static.ads-twitter.com' rel='dns-prefetch'>
<link crossorigin='' href='https://bat.bing.com' rel='preconnect'>
<link href='https://bat.bing.com' rel='dns-prefetch'>
<link crossorigin='' href='https://snap.licdn.com' rel='preconnect'>
<link href='https://snap.licdn.com' rel='dns-prefetch'>
<link crossorigin='' href='https://googleads.g.doubleclick.net' rel='preconnect'>
<link href='https://googleads.g.doubleclick.net' rel='dns-prefetch'>
<link crossorigin='' href='https://analytics.twitter.com' rel='preconnect'>
<link href='https://analytics.twitter.com' rel='dns-prefetch'>
<link crossorigin='' href='https://chat-assets.frontapp.com' rel='preconnect'>
<link href='https://chat-assets.frontapp.com' rel='dns-prefetch'>
<link crossorigin='' href='https://t.betterstack.com' rel='preconnect'>
<link href='https://t.betterstack.com' rel='dns-prefetch'>
<link href='/assets/favicon-64296699.png' rel='shortcut icon'>
<meta content='Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems.' name='description'>
<meta content='website' property='og:type'>
<meta content='What Is Incident Management? Beginner’s Guide | Better Stack Community' property='og:title'>
<meta content='Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems.' property='og:description'>
<meta content='https://betterstack.com/og-image/what-is-incident-management.png' property='og:image'>
<meta content='summary_large_image' property='twitter:card'>
<meta content='betterstackhq' property='twitter:site'>
<meta content='What Is Incident Management? Beginner’s Guide | Better Stack Community' property='twitter:title'>
<meta content='Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems.' property='twitter:description'>
<meta content='https://betterstack.com/og-image/what-is-incident-management.png' property='twitter:image'>
<meta content='no-cache' name='turbo-cache-control'>
<link href='https://betterstack.com/community/guides/incident-management/what-is-incident-management/' rel='canonical'>
<link href='https://betterstack.com/community/guides/incident-management/what-is-incident-management.md' rel='alternate' type='text/markdown'>
<meta content='https://betterstack.com/community/guides/incident-management/what-is-incident-management/' property='og:url'>
<meta name="csrf-param" content="authenticity_token" />
<meta name="csrf-token" content="jjQLmTjdFscSoIA8W7si2WmQIvSQpdLjhWg0rheEdCWn8BLboEAOWoSBhgv3XuNJE4aXtPVluzagPUM-9ZcT8A" />
<meta name="csp-nonce" content="2c9588afc24c2f0312f695a91890f034" />
<meta content='marketing.articles' name='bs-surface'>
<link href='https://cdnjs.betterstack.com/@vueform/multiselect@2.5.7/themes/default.css' rel='stylesheet'>
<link href='https://cdnjs.betterstack.com/floating-vue@2.0.0-beta.24/dist/style.css' rel='stylesheet'>
<link href='https://cdnjs.betterstack.com/@docsearch/css@3.5.2/dist/style.css' rel='stylesheet'>
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Regular-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Medium-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Bold-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowDisplay-Medium-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowDisplay-Bold-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<style>
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Regular'),
local('HelveticaNowText-Regular'),
url('/static/fonts/Helvetica/HelveticaNowText-Regular-1.0.woff2') format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Medium'),
local('HelveticaNowText-Medium'),
url('/static/fonts/Helvetica/HelveticaNowText-Medium-1.0.woff2') format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Bold'),
local('HelveticaNowText-Bold'),
url('/static/fonts/Helvetica/HelveticaNowText-Bold-1.0.woff2') format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Display';
src: local('Helvetica Now Display Medium'),
local('HelveticaNowDisplay-Medium'),
url('/static/fonts/Helvetica/HelveticaNowDisplay-Medium-1.0.woff2') format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Display';
src: local('Helvetica Now Display Bold'),
local('HelveticaNowDisplay-Bold'),
url('/static/fonts/Helvetica/HelveticaNowDisplay-Bold-1.0.woff2') format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
</style>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
// Store pixel IDs and configuration globally
window.trackingConfig = {
gaId: 'G-9FLKD0MQYY',
adwordsId: 'AW-10805602682',
facebookId: '1062799887416376',
twitterId: 'qbv2s',
microsoftId: '17516957',
linkedinId: '8770794',
redditId: 't2_bywzx23t',
openaiId: '8F4u2fGW2vBkWMMpukDbgf',
plausibleDomain: 'betterstack.com',
domains: ["betterstack.com","betterstack.test","betteruptime.com","uptime.betterstack.com","logtail.com","telemetry.betterstack.com","errors.betterstack.com","warehouse.betterstack.com","chat.betterstack.com","rum.betterstack.com"],
initialized: {
ga: false,
facebook: false,
twitter: false,
microsoft: false,
linkedin: false,
reddit: false,
openai: false,
plausible: false
}
};
</script>
<script async src='https://www.googletagmanager.com/gtag/js?id=G-9FLKD0MQYY'></script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
// Setup gtag function but don't initialize tracking
window.dataLayer = window.dataLayer || [];
function gtag(){window.dataLayer.push(arguments);}
// Initialize Google Analytics only when consent is granted
function initializeGoogleAnalytics() {
if (window.trackingConfig.initialized.ga) return;
gtag('js', new Date());
gtag('set', 'linker', { 'domains': window.trackingConfig.domains });
gtag('config', window.trackingConfig.gaId, {
linker: { domains: window.trackingConfig.domains }
});
gtag('config', window.trackingConfig.adwordsId, {
linker: { domains: window.trackingConfig.domains }
});
window.trackingConfig.initialized.ga = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
// Initialize Facebook Pixel only when consent is granted
function initializeFacebookPixel() {
if (window.trackingConfig.initialized.facebook) return;
!function(f,b,e,v,n,t){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;(b.head||b.documentElement).appendChild(t)}(window,
document,'script','https://connect.facebook.net/en_US/fbevents.js');
fbq('init', window.trackingConfig.facebookId);
fbq('track', 'PageView');
window.trackingConfig.initialized.facebook = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializeTwitterPixel() {
if (window.trackingConfig.initialized.twitter) return;
!function(e,t,n,s,u){e.twq||(s=e.twq=function(){s.exe?s.exe.apply(s,arguments):s.queue.push(arguments);
},s.version='1.1',s.queue=[],u=t.createElement(n),u.async=!0,u.src='https://static.ads-twitter.com/uwt.js',
(t.head||t.documentElement).appendChild(u))}(window,document,'script');
twq('config', window.trackingConfig.twitterId);
twq('track','PageView');
window.trackingConfig.initialized.twitter = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializeMicrosoftAds() {
if (window.trackingConfig.initialized.microsoft) return;
!function(e,t,n,a,o){var c,r,m;e[o]=e[o]||[],c=function(){
// A throw from bat.js's load handler escapes initializeAllTracking's catch
if(typeof UET==="undefined")return;
var t={ti:window.trackingConfig.microsoftId};
t.q=e[o],e[o]=new UET(t),e[o].push("pageLoad")
},
(r=t.createElement(n)).src="//bat.bing.com/bat.js",r.async=1,
r.onload=r.onreadystatechange=function(){
var e=this.readyState;
e&&"loaded"!==e&&"complete"!==e||(c(),r.onload=r.onreadystatechange=null)
},
m=t.querySelector("[nonce]"),
m&&r.setAttribute("nonce",m.nonce||m.getAttribute("nonce")),
(t.head||t.documentElement).appendChild(r)
}(window,document,"script",0,"uetq");
window.trackingConfig.initialized.microsoft = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializeLinkedInPixel() {
if (window.trackingConfig.initialized.linkedin) return;
_linkedin_partner_id = window.trackingConfig.linkedinId;
window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || [];
window._linkedin_data_partner_ids.push(_linkedin_partner_id);
(function(l) {
if (!l){
window.lintrk = function(a,b){window.lintrk.q.push([a,b])};
window.lintrk.q=[];
}
var b = document.createElement("script");
b.type = "text/javascript";
b.async = true;
b.src = "https://snap.licdn.com/li.lms-analytics/insight.min.js";
(document.head || document.documentElement).appendChild(b);
})(window.lintrk);
window.trackingConfig.initialized.linkedin = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializeRedditPixel() {
if (window.trackingConfig.initialized.reddit) return;
!function(w,d){
if(!w.rdt){
var p=w.rdt=function(){
p.sendEvent?p.sendEvent.apply(p,arguments):p.callQueue.push(arguments)
};
p.callQueue=[];
var t=d.createElement("script");
t.src="https://www.redditstatic.com/ads/pixel.js",
t.async=!0;
(d.head||d.documentElement).appendChild(t)
}
}(window,document);
rdt('init', window.trackingConfig.redditId, {
"optOut":false,
"useDecimalCurrencyValues":true
});
rdt('track', 'PageVisit');
window.trackingConfig.initialized.reddit = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializeOpenAIPixel() {
if (window.trackingConfig.initialized.openai) return;
(function (w, d, s, u) {
if (w.oaiq) return;
var q = function () { q.q.push(arguments); };
q.q = [];
w.oaiq = q;
var js = d.createElement(s);
js.async = true;
js.src = u;
(d.head || d.documentElement).appendChild(js);
})(window, document, "script", "https://bzrcdn.openai.com/sdk/oaiq.min.js");
oaiq("init", { pixelId: window.trackingConfig.openaiId });
window.trackingConfig.initialized.openai = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
function initializePlausible() {
if (window.trackingConfig.initialized.plausible) return;
if (document.querySelector('script[data-domain]')) return;
var script = document.createElement('script');
script.defer = true;
script.setAttribute('data-domain', window.trackingConfig.plausibleDomain);
script.src = 'https://plausible.io/js/plausible.js';
document.head.appendChild(script);
window.trackingConfig.initialized.plausible = true;
}
</script>
<script nonce='2c9588afc24c2f0312f695a91890f034'>
// Function to initialize all tracking pixels
function initializeAllTracking() {
// Isolated so one vendor snippet throwing cannot stop the pixels after it from initializing
[
initializeGoogleAnalytics,
initializeFacebookPixel,
initializeTwitterPixel,
initializeMicrosoftAds,
initializeLinkedInPixel,
initializeRedditPixel,
initializeOpenAIPixel,
initializePlausible
].forEach(function(initializePixel) {
try {
initializePixel();
} catch (error) {
// Rethrown out of band so it still reaches error tracking, which loads asynchronously
setTimeout(function() { throw error; });
}
});
}
// Function to check consent and initialize if granted
function checkConsentAndInitialize() {
// Check for cookie consent
var consent = document.cookie.match(/cookie_consent=([^;]+)/);
if (consent && consent[1] === 'accept_all') {
// Full consent - initialize all tracking
initializeAllTracking();
}
}
// Check consent on page load
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', checkConsentAndInitialize);
} else {
checkConsentAndInitialize();
}
// Listen for consent being granted
document.addEventListener('cookie-consent-granted', function(event) {
if (event.detail.consentType === 'accept_all') {
initializeAllTracking();
}
});
// Handle Turbo navigation
document.addEventListener('turbo:load', function() {
checkConsentAndInitialize();
// Track page views only if pixels are initialized
if (window.trackingConfig.initialized.ga && typeof gtag === 'function') {
gtag('set', 'page_path', location.pathname);
gtag('event', 'page_view');
}
if (window.trackingConfig.initialized.facebook && typeof fbq === 'function') {
fbq('track', 'PageView');
}
if (window.trackingConfig.initialized.twitter && typeof twq === 'function') {
twq('track','PageView');
}
if (window.trackingConfig.initialized.microsoft && typeof uetq !== 'undefined' && window.uetq) {
uetq.push('event', 'page_view', { 'page_path': location.pathname });
}
if (window.trackingConfig.initialized.reddit && typeof rdt === 'function') {
rdt('track', 'PageVisit');
}
});
// Remove noscript elements which break DOMParser (keep this as-is)
document.addEventListener('turbo:before-render', function(event) {
event.detail.newBody.querySelectorAll('noscript').forEach((e) => e.remove());
});
</script>
<script type="application/javascript" nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
// Recovers from the module load failures a fresh page load fixes: hashed bundles gone stale after
// a deploy, and an origin that briefly fails to serve a hashed module.
//
// partials/_javascript_importmap_tags inlines this as a classic script ahead of every module
// script, which is the point of the file: when a module in the entry graph fails to fetch, no
// module in that graph evaluates, so a handler living inside the graph is never installed for the
// very failure it exists to catch. Never import it. Every byte here ships on every page, so keep
// it small.
;(function () {
// Our CSP nonce is per request, so Turbo sees this tag as a new head script on every visit and
// re-runs it (Snapshot#copyNewHeadScriptElements). The listeners are on window and outlive the
// visit, so without this guard they would stack up one set per navigation.
if (window.bsModuleLoadRecoveryInstalled) return
window.bsModuleLoadRecoveryInstalled = true
const RELOAD_FLAG_KEY = 'bs:module-load-reloaded'
// es-module-shims' doFetch throws "<status> <statusText> <url>[ imported from <parent>]" for an
// HTTP error (the reported "504 Gateway Timeout ...") and "Unable to fetch <url> ..." when the
// request never completes. Anchoring on the leading status instead of the "imported from" suffix
// also catches parentless top-level loads, and ignores prose that merely says "imported from".
const isRecoverableMessage = (message) =>
/Failed to fetch dynamically imported module/i.test(message) || // Chrome
/error loading dynamically imported module/i.test(message) || // Firefox
/Importing a module script failed/i.test(message) || // Safari
/^\d{3} .*https?:\/\//.test(message) ||
/^Unable to fetch https?:\/\/.* - see network log for details/i.test(message)
const reloadOnce = () => {
try {
if (window.sessionStorage.getItem(RELOAD_FLAG_KEY) === '1') return
window.sessionStorage.setItem(RELOAD_FLAG_KEY, '1')
} catch (_e) {
// Private browsing or storage disabled: without the flag we cannot bound the reloads
return
}
window.location.reload()
}
// A <script type="module"> fires `error` on the element when its graph fails to fetch or parse,
// and not when the graph throws while executing, so app bugs cannot reach this. Browsers without
// import map support never resolve our bare specifiers natively and so always fire it (they are
// the ones es-module-shims loads the page for), hence the check.
const isFailedModuleScript = (target) =>
target?.tagName === 'SCRIPT' &&
target.type === 'module' &&
HTMLScriptElement.supports?.('importmap')
window.addEventListener('error', (event) => {
if (isFailedModuleScript(event.target)) {
reloadOnce()
return
}
if (isRecoverableMessage(event.error?.message ?? event.message ?? '')) reloadOnce()
}, true)
window.addEventListener('unhandledrejection', (event) => {
if (!isRecoverableMessage(event.reason?.message ?? event.reason?.toString?.() ?? '')) return
// Drop the browser's own "Uncaught (in promise)" reporting since we are handling it by
// reloading. Error tracking still sees the rejection through its own listener.
event.preventDefault?.()
reloadOnce()
})
})()
//]]>
</script>
<script type="importmap" data-turbo-track="reload" nonce="2c9588afc24c2f0312f695a91890f034">{
"imports": {
"admin_controllers/article_form_controller": "/assets/admin_controllers/article_form_controller-95d029c4.js",
"admin_controllers": "/assets/admin_controllers/index-577d86b7.js",
"admin_controllers/version_remove_controller": "/assets/admin_controllers/version_remove_controller-25fe23d4.js",
"api/NaturalLanguageParserApi": "/assets/api/NaturalLanguageParserApi-6338d3e0.js",
"application_controllers/account_settings_controller": "/assets/application_controllers/account_settings_controller-3db785e5.js",
"application_controllers/command_controller": "/assets/application_controllers/command_controller-0bb2b651.js",
"application_controllers/command_palette_controller": "/assets/application_controllers/command_palette_controller-c8ef377a.js",
"application_controllers/command_palette_hierarchy_controller": "/assets/application_controllers/command_palette_hierarchy_controller-471f9137.js",
"application_controllers/dismissible_onboarding_message_controller": "/assets/application_controllers/dismissible_onboarding_message_controller-51b86556.js",
"application_controllers/dropdown_controller": "/assets/application_controllers/dropdown_controller-cd5a7d95.js",
"application_controllers/front_chat_controller": "/assets/application_controllers/front_chat_controller-7f7483ef.js",
"application_controllers/hotkeys_controller": "/assets/application_controllers/hotkeys_controller-8f7b8a5a.js",
"application_controllers/incident_grouping_warning_controller": "/assets/application_controllers/incident_grouping_warning_controller-27bd9c43.js",
"application_controllers": "/assets/application_controllers/index-27c5a1ae.js",
"application_controllers/input_self_select_controller": "/assets/application_controllers/input_self_select_controller-501017f3.js",
"application_controllers/marketing_banner_controller": "/assets/application_controllers/marketing_banner_controller-94b92f59.js",
"application_controllers/marketing_banner_form_controller": "/assets/application_controllers/marketing_banner_form_controller-df791955.js",
"application_controllers/members/list_actions_controller": "/assets/application_controllers/members/list_actions_controller-5cbd4e77.js",
"application_controllers/menu_controller": "/assets/application_controllers/menu_controller-74d4b11b.js",
"application_controllers/nav_toggle_controller": "/assets/application_controllers/nav_toggle_controller-a05915d3.js",
"application_controllers/notification_toast_controller": "/assets/application_controllers/notification_toast_controller-9ae0e943.js",
"application_controllers/notification_toasts_controller": "/assets/application_controllers/notification_toasts_controller-e12edc4a.js",
"application_controllers/payment/calculator_controller": "/assets/application_controllers/payment/calculator_controller-223526b4.js",
"application_controllers/payment/change_plan_controller": "/assets/application_controllers/payment/change_plan_controller-26bedf06.js",
"application_controllers/payment/enter_card_controller": "/assets/application_controllers/payment/enter_card_controller-2948de25.js",
"application_controllers/payment/plan_controller": "/assets/application_controllers/payment/plan_controller-ed75908a.js",
"application_controllers/payment/refund_controller": "/assets/application_controllers/payment/refund_controller-40b79f6e.js",
"application_controllers/plan_product_controller": "/assets/application_controllers/plan_product_controller-12023246.js",
"application_controllers/plan_product_variable_controller": "/assets/application_controllers/plan_product_variable_controller-9e792f37.js",
"application_controllers/roles/permission_toggle_controller": "/assets/application_controllers/roles/permission_toggle_controller-06f00cc6.js",
"application_controllers/search/base_controller": "/assets/application_controllers/search/base_controller-3684d31d.js",
"application_controllers/single_sign_on/generic_controller": "/assets/application_controllers/single_sign_on/generic_controller-2b999970.js",
"application_controllers/single_sign_on/okta_controller": "/assets/application_controllers/single_sign_on/okta_controller-050106f0.js",
"application_controllers/transition_controller": "/assets/application_controllers/transition_controller-55e4e0fc.js",
"articles/tabs": "/assets/articles/tabs-c42fbc0f.js",
"articles_controllers/body_controller": "/assets/articles_controllers/body_controller-b7ed1f98.js",
"articles_controllers/code_controller": "/assets/articles_controllers/code_controller-a3b80b9c.js",
"articles_controllers": "/assets/articles_controllers/index-2a641587.js",
"articles_controllers/lightbox_controller": "/assets/articles_controllers/lightbox_controller-9e772aad.js",
"articles_controllers/pill_scroller_controller": "/assets/articles_controllers/pill_scroller_controller-56e6ad4d.js",
"articles_controllers/preview_diff_controller": "/assets/articles_controllers/preview_diff_controller-d021df3a.js",
"articles_controllers/search_controller": "/assets/articles_controllers/search_controller-6cbf77e4.js",
"articles_controllers/theme_controller": "/assets/articles_controllers/theme_controller-df419c92.js",
"articles_controllers/toc_controller": "/assets/articles_controllers/toc_controller-372f9d3c.js",
"articles_controllers/toggle_controller": "/assets/articles_controllers/toggle_controller-447bdd4f.js",
"betterstack_v2/carousel": "/assets/betterstack_v2/carousel-9e6623b0.js",
"betterstack_v2/collapse": "/assets/betterstack_v2/collapse-5e9e0fbd.js",
"betterstack_v2/gallery": "/assets/betterstack_v2/gallery-989fbe63.js",
"betterstack_v2/menu": "/assets/betterstack_v2/menu-57c876ee.js",
"betterstack_v2/search": "/assets/betterstack_v2/search-18938513.js",
"betterstack_v2/slide": "/assets/betterstack_v2/slide-5dbecfaf.js",
"betterstack_v2/toggle": "/assets/betterstack_v2/toggle-b0145939.js",
"betterstack_v2/typeformTracking": "/assets/betterstack_v2/typeformTracking-95d1395a.js",
"channels": "/assets/channels/index-746bc0ef.js",
"channels/turbo_betterstack": "/assets/channels/turbo_betterstack-9c9119c4.js",
"common/aos": "/assets/common/aos-f5c6bb9a.js",
"common/billing": "/assets/common/billing-f8a38000.js",
"common/copy": "/assets/common/copy-e9580a10.js",
"common/data-disable-with-spinner": "/assets/common/data-disable-with-spinner-ce85e302.js",
"common/drag-n-drop": "/assets/common/drag-n-drop-9b7df6f9.js",
"common/lazy": "/assets/common/lazy-3f5ba6f1.js",
"common/links": "/assets/common/links-ae98a9e4.js",
"common/modals": "/assets/common/modals-3906d5a2.js",
"common/moduleLoadRecovery": "/assets/common/moduleLoadRecovery-8bffe4b6.js",
"common/railsSetup": "/assets/common/railsSetup-25c4cf53.js",
"common/recaptchaSubmit": "/assets/common/recaptchaSubmit-e4783e18.js",
"common/side-menu-scroll": "/assets/common/side-menu-scroll-4d201e25.js",
"common/signupConversions": "/assets/common/signupConversions-f9e02d75.js",
"common/site_settings_bootstrap": "/assets/common/site_settings_bootstrap-c104a0e6.js",
"common/site_settings_panel": "/assets/common/site_settings_panel-812b3a51.js",
"common/stripe": "/assets/common/stripe-11d3a577.js",
"common_controllers/auth_controller": "/assets/common_controllers/auth_controller-b172459c.js",
"common_controllers/careers_roles_controller": "/assets/common_controllers/careers_roles_controller-83a48712.js",
"common_controllers/carousel_controller": "/assets/common_controllers/carousel_controller-981b577e.js",
"common_controllers/clipboard_controller": "/assets/common_controllers/clipboard_controller-d6bd31ec.js",
"common_controllers/cloud_downtime_controller": "/assets/common_controllers/cloud_downtime_controller-d41c242d.js",
"common_controllers/cloud_fit_controller": "/assets/common_controllers/cloud_fit_controller-2f9024d0.js",
"common_controllers/cloud_pricing_controller": "/assets/common_controllers/cloud_pricing_controller-5f4f58e2.js",
"common_controllers/collapse_controller": "/assets/common_controllers/collapse_controller-c1e140f6.js",
"common_controllers/comparison_table_controller": "/assets/common_controllers/comparison_table_controller-132abf18.js",
"common_controllers/copy_prompt_controller": "/assets/common_controllers/copy_prompt_controller-a705d39f.js",
"common_controllers/dev_bar_controller": "/assets/common_controllers/dev_bar_controller-8dae09df.js",
"common_controllers/flash_appear_controller": "/assets/common_controllers/flash_appear_controller-bb83796e.js",
"common_controllers/header_controller": "/assets/common_controllers/header_controller-a3d9ce2a.js",
"common_controllers/homepage_hero_controller": "/assets/common_controllers/homepage_hero_controller-43f0e439.js",
"common_controllers": "/assets/common_controllers/index-48f61257.js",
"common_controllers/modal_opener_controller": "/assets/common_controllers/modal_opener_controller-0b1595e8.js",
"common_controllers/oauth_redirect_controller": "/assets/common_controllers/oauth_redirect_controller-b4b35c10.js",
"common_controllers/oauth_scope_picker_controller": "/assets/common_controllers/oauth_scope_picker_controller-01e79351.js",
"common_controllers/onboarding/features_controller": "/assets/common_controllers/onboarding/features_controller-38589028.js",
"common_controllers/onboarding/payment_controller": "/assets/common_controllers/onboarding/payment_controller-d9cacb71.js",
"common_controllers/onboarding/plan_controller": "/assets/common_controllers/onboarding/plan_controller-74fa6b4a.js",
"common_controllers/onboarding/telemetry_bundles_controller": "/assets/common_controllers/onboarding/telemetry_bundles_controller-1cf06818.js",
"common_controllers/onboarding/test_call_controller": "/assets/common_controllers/onboarding/test_call_controller-8b34faf3.js",
"common_controllers/org_nav_controller": "/assets/common_controllers/org_nav_controller-2899c4ca.js",
"common_controllers/org_nav_row_controller": "/assets/common_controllers/org_nav_row_controller-c6cb77b8.js",
"common_controllers/pricing_controller": "/assets/common_controllers/pricing_controller-47fff143.js",
"common_controllers/recaptcha_controller": "/assets/common_controllers/recaptcha_controller-3bc13838.js",
"common_controllers/scroll_into_view_controller": "/assets/common_controllers/scroll_into_view_controller-989870ac.js",
"common_controllers/side_nav_controller": "/assets/common_controllers/side_nav_controller-b8c260c3.js",
"common_controllers/signup_controller": "/assets/common_controllers/signup_controller-6234698c.js",
"common_controllers/status_page_layout_controller": "/assets/common_controllers/status_page_layout_controller-e8e44b26.js",
"common_controllers/tabs_controller": "/assets/common_controllers/tabs_controller-15f6ffaa.js",
"common_controllers/timezone_controller": "/assets/common_controllers/timezone_controller-583829fb.js",
"common_controllers/video_modal_controller": "/assets/common_controllers/video_modal_controller-41524ff9.js",
"common_controllers/warehouse_code_block_controller": "/assets/common_controllers/warehouse_code_block_controller-c2c3abe7.js",
"components/DatePicker": "/assets/components/DatePicker-c4134f3e.js",
"components/InviteLinkDropdown": "/assets/components/InviteLinkDropdown-35f3fe83.js",
"components/Modal": "/assets/components/Modal-4b145c81.js",
"components/NativeSelect": "/assets/components/NativeSelect-33371fd7.js",
"components/SideNavigation": "/assets/components/SideNavigation-a1dc27bc.js",
"components/ThemeSwitcher": "/assets/components/ThemeSwitcher-d50ce36b.js",
"components/Toasts": "/assets/components/Toasts-ac15198b.js",
"components/UserMenu": "/assets/components/UserMenu-d2eed9cb.js",
"components/WithSpinner": "/assets/components/WithSpinner-19730ca7.js",
"components/admin/AiArticle": "/assets/components/admin/AiArticle-0f485faf.js",
"components/admin/AiArticlesList": "/assets/components/admin/AiArticlesList-67d19e53.js",
"components/admin/AiAssistant": "/assets/components/admin/AiAssistant-eb225e70.js",
"components/admin/AiSummary": "/assets/components/admin/AiSummary-79559c3f.js",
"components/admin/ArticleLink": "/assets/components/admin/ArticleLink-f0f3c2a4.js",
"components/admin/ArticlesSelect": "/assets/components/admin/ArticlesSelect-1bfd3e34.js",
"components/admin/MenuBuilder": "/assets/components/admin/MenuBuilder-77e35318.js",
"components/admin/utils/menuTree": "/assets/components/admin/utils/menuTree-56b0d957.js",
"components/billing/BillableBadge": "/assets/components/billing/BillableBadge-02da648d.js",
"components/billing/ChangePlans": "/assets/components/billing/ChangePlans-3cc40d22.js",
"components/billing/FeatureCountSlider": "/assets/components/billing/FeatureCountSlider-d31eeeb7.js",
"components/billing/PaymentMethodsSelect": "/assets/components/billing/PaymentMethodsSelect-ff23fd24.js",
"components/billing/ProductVariables": "/assets/components/billing/ProductVariables-359a003b.js",
"components/billing/RegionDropdown": "/assets/components/billing/RegionDropdown-1afaf96a.js",
"components/billing/ResponderSeatsSelector": "/assets/components/billing/ResponderSeatsSelector-96e83ba7.js",
"components/billing/UpcomingPlan": "/assets/components/billing/UpcomingPlan-7e6e404d.js",
"components/charts/BarChart": "/assets/components/charts/BarChart-433ec399.js",
"components/charts/theme": "/assets/components/charts/theme-c7b0f807.js",
"components/charts/utils/formatTooltip": "/assets/components/charts/utils/formatTooltip-209a7d5f.js",
"components/command_palette/CommandPalette": "/assets/components/command_palette/CommandPalette-b76680c1.js",
"components/dev_bar/CopyImpersonateLink": "/assets/components/dev_bar/CopyImpersonateLink-ac5cc00a.js",
"components/docs/Code": "/assets/components/docs/Code-39228c52.js",
"components/docs/CodeTab": "/assets/components/docs/CodeTab-a65a976e.js",
"components/docs/CopyDropdown": "/assets/components/docs/CopyDropdown-4d4698d3.js",
"components/docs/TokenLoader": "/assets/components/docs/TokenLoader-c39cc5c1.js",
"components/docs/TokenNotice": "/assets/components/docs/TokenNotice-a2188092.js",
"components/docs/TokenPicker": "/assets/components/docs/TokenPicker-95e85505.js",
"components/forms/AIPromptEditor": "/assets/components/forms/AIPromptEditor-d93d8813.js",
"components/forms/AuditLogsToggle": "/assets/components/forms/AuditLogsToggle-0af5a9c0.js",
"components/forms/BasicForm": "/assets/components/forms/BasicForm-a9f858ec.js",
"components/forms/Collapse": "/assets/components/forms/Collapse-d2b96d60.js",
"components/forms/CopyOnClick": "/assets/components/forms/CopyOnClick-51d525f4.js",
"components/forms/DotsDropdown": "/assets/components/forms/DotsDropdown-965de662.js",
"components/forms/DotsDropdownNew": "/assets/components/forms/DotsDropdownNew-0c629056.js",
"components/forms/Dropdown": "/assets/components/forms/Dropdown-3327ca7b.js",
"components/forms/GatedToggle": "/assets/components/forms/GatedToggle-9a5537f3.js",
"components/forms/HeadersJson": "/assets/components/forms/HeadersJson-1a0a512a.js",
"components/forms/HighlightedTextarea": "/assets/components/forms/HighlightedTextarea-50b49322.js",
"components/forms/HolidayModeForm": "/assets/components/forms/HolidayModeForm-92b31c4a.js",
"components/forms/LogoField": "/assets/components/forms/LogoField-f35ad206.js",
"components/forms/ModalTemplate": "/assets/components/forms/ModalTemplate-16854a22.js",
"components/forms/MultiplyingInput": "/assets/components/forms/MultiplyingInput-92ae04d5.js",
"components/forms/Select": "/assets/components/forms/Select-2d0e048c.js",
"components/forms/SelectWithSearch": "/assets/components/forms/SelectWithSearch-3b92cbec.js",
"components/forms/SessionsForm": "/assets/components/forms/SessionsForm-7dff6538.js",
"components/forms/Slider": "/assets/components/forms/Slider-d2c532b7.js",
"components/forms/Spinner": "/assets/components/forms/Spinner-b7c5b935.js",
"components/forms/TimezoneSelect": "/assets/components/forms/TimezoneSelect-fc1b95cb.js",
"components/forms/Toggle": "/assets/components/forms/Toggle-cf1a8471.js",
"components/forms/Tooltip": "/assets/components/forms/Tooltip-18ae06ee.js",
"components/forms/uppyLoader": "/assets/components/forms/uppyLoader-16803d05.js",
"components": "/assets/components/index-d406f1c5.js",
"components/monaco/editor": "/assets/components/monaco/editor-0590c3fb.js",
"components/notifications/Dropdown": "/assets/components/notifications/Dropdown-35167b74.js",
"components/notifications/Item": "/assets/components/notifications/Item-bdf035ef.js",
"components/onboarding/PhonePrefixSelect": "/assets/components/onboarding/PhonePrefixSelect-43778322.js",
"components/roles/CollectorPermissions": "/assets/components/roles/CollectorPermissions-23e81031.js",
"components/roles/IntegrationPermissions": "/assets/components/roles/IntegrationPermissions-c575de40.js",
"components/roles/ResourceGroupPermissions": "/assets/components/roles/ResourceGroupPermissions-c3a3d875.js",
"components/roles/ServicePermissions": "/assets/components/roles/ServicePermissions-0bf60768.js",
"components/sessions/EmailPrompt": "/assets/components/sessions/EmailPrompt-f5ab0a9a.js",
"components/shared/DatePickerRangeSelector": "/assets/components/shared/DatePickerRangeSelector-99c9cbab.js",
"components/shared/DateRangeSelector": "/assets/components/shared/DateRangeSelector-bcd70467.js",
"components/stores/DocsStore": "/assets/components/stores/DocsStore-7fbbd320.js",
"components/stores/MainStore": "/assets/components/stores/MainStore-6e855ac2.js",
"components/stores/RegionStore": "/assets/components/stores/RegionStore-b2ff0da4.js",
"components/stores/ToastStore": "/assets/components/stores/ToastStore-85ec6bb2.js",
"components/stores/UsageStore": "/assets/components/stores/UsageStore-37848617.js",
"components/stores/index": "/assets/components/stores/index-feac8304.js",
"components/usage/Chart": "/assets/components/usage/Chart-361c804a.js",
"components/usage/DateRangeSelector": "/assets/components/usage/DateRangeSelector-b5a36521.js",
"components/usage/DimensionTab": "/assets/components/usage/DimensionTab-feb62639.js",
"components/usage/ProductLink": "/assets/components/usage/ProductLink-28e5cbe8.js",
"components/usage/ResolutionSelector": "/assets/components/usage/ResolutionSelector-679dded4.js",
"components/usage/Table": "/assets/components/usage/Table-f27294b3.js",
"composables/useCollapseHeight": "/assets/composables/useCollapseHeight-9d34f482.js",
"composables/useCommand": "/assets/composables/useCommand-54188fbb.js",
"composables/useHotkey": "/assets/composables/useHotkey-1b637420.js",
"composables/useTheme": "/assets/composables/useTheme-4aeb28da.js",
"entrypoints/admin_articles": "/assets/entrypoints/admin_articles-5afb028d.js",
"entrypoints/application": "/assets/entrypoints/application-0bf2e279.js",
"entrypoints/articles": "/assets/entrypoints/articles-8493a2b0.js",
"entrypoints/auth": "/assets/entrypoints/auth-420d62af.js",
"entrypoints/betterstack_v2": "/assets/entrypoints/betterstack_v2-5b1213a7.js",
"entrypoints/front": "/assets/entrypoints/front-027ace13.js",
"entrypoints/logtail": "/assets/entrypoints/logtail-1a871854.js",
"entrypoints/mobile": "/assets/entrypoints/mobile-26886af7.js",
"entrypoints/onboarding": "/assets/entrypoints/onboarding-bc97beb4.js",
"entrypoints/playwright": "/assets/entrypoints/playwright-edccfe8b.js",
"entrypoints/uptime": "/assets/entrypoints/uptime-dbe508ae.js",
"front/externalLinks": "/assets/front/externalLinks-63ea793c.js",
"front/router": "/assets/front/router-1c6ed265.js",
"logtail_controllers": "/assets/logtail_controllers/index-abb89f05.js",
"logtail_controllers/plans_controller": "/assets/logtail_controllers/plans_controller-153fac3c.js",
"mixins/withAbortController": "/assets/mixins/withAbortController-8adee905.js",
"mixins/withLiveBlanketPermission": "/assets/mixins/withLiveBlanketPermission-9695e8db.js",
"mobile/turbo-error-handler": "/assets/mobile/turbo-error-handler-ae0d058e.js",
"mobile_controllers/ButtonBridgeComponent": "/assets/mobile_controllers/ButtonBridgeComponent-c7a2bc9e.js",
"mobile_controllers/EventBridgeComponent": "/assets/mobile_controllers/EventBridgeComponent-4014e59a.js",
"mobile_controllers": "/assets/mobile_controllers/index-28e58582.js",
"mobile_controllers/otp_entry_controller": "/assets/mobile_controllers/otp_entry_controller-28d11d45.js",
"routes": "/assets/routes-b3cc0358.js",
"services/ClipboardService": "/assets/services/ClipboardService-2e240c3d.js",
"services/ModalManager": "/assets/services/ModalManager-1b69d01c.js",
"services/ThemeSwitcher": "/assets/services/ThemeSwitcher-f4023b19.js",
"services/WebStorageService": "/assets/services/WebStorageService-96eacd27.js",
"services/command_palette/CommandContext": "/assets/services/command_palette/CommandContext-61b0e09e.js",
"services/command_palette/CommandIndexWorker": "/assets/services/command_palette/CommandIndexWorker-3e5f1a23.js",
"services/command_palette/CommandSearch": "/assets/services/command_palette/CommandSearch-e56061fc.js",
"services/command_palette/Commands": "/assets/services/command_palette/Commands-5acb5990.js",
"services/command_palette/CommandsManager": "/assets/services/command_palette/CommandsManager-69d6cbf6.js",
"services/command_palette/HotkeyManager": "/assets/services/command_palette/HotkeyManager-c7aac698.js",
"timezones": "/assets/timezones-b1c6ab25.js",
"uptime_controllers": "/assets/uptime_controllers/index-ea83dbdd.js",
"uptime_controllers/plans_controller": "/assets/uptime_controllers/plans_controller-275e54b2.js",
"utils/RangeTimestamp": "/assets/utils/RangeTimestamp-5d741097.js",
"utils/RelativeTimestamp": "/assets/utils/RelativeTimestamp-4aceda0e.js",
"utils/authToken": "/assets/utils/authToken-3f69e5ee.js",
"utils/cardBrands": "/assets/utils/cardBrands-4e01a21a.js",
"utils/chartTooltipPosition": "/assets/utils/chartTooltipPosition-223d8a7b.js",
"utils/date": "/assets/utils/date-30bf4654.js",
"utils/diff": "/assets/utils/diff-54c7567c.js",
"utils/externalRoutes": "/assets/utils/externalRoutes-3f77f06a.js",
"utils/fetchJson": "/assets/utils/fetchJson-d5204866.js",
"utils/formatters": "/assets/utils/formatters-2ed5b123.js",
"utils/highlight": "/assets/utils/highlight-1975cdab.js",
"utils/hotkeyLabel": "/assets/utils/hotkeyLabel-957a7ffb.js",
"utils/importmap": "/assets/utils/importmap-2cb6bb64.js",
"utils/incidents/prompt_variables": "/assets/utils/incidents/prompt_variables-7e3382de.js",
"utils/isTouchDevice": "/assets/utils/isTouchDevice-ef97088e.js",
"utils/levenshtein": "/assets/utils/levenshtein-a23ae51b.js",
"utils/loadScript": "/assets/utils/loadScript-b2fe518e.js",
"utils/miniBindVueApp": "/assets/utils/miniBindVueApp-d1573a63.js",
"utils/mountVueApp": "/assets/utils/mountVueApp-d57cdb84.js",
"utils/naturalLanguageTimeParser": "/assets/utils/naturalLanguageTimeParser-ecfa0c29.js",
"utils/permissions": "/assets/utils/permissions-60f6a799.js",
"utils/platformDetection": "/assets/utils/platformDetection-ab98f3d1.js",
"utils/platforms": "/assets/utils/platforms-89317042.js",
"utils/queryParams": "/assets/utils/queryParams-18ae7afd.js",
"utils/rebindComponents": "/assets/utils/rebindComponents-e80ed3c4.js",
"utils/stripFallthroughAttributes": "/assets/utils/stripFallthroughAttributes-698b4f73.js",
"utils/timeago": "/assets/utils/timeago-d754ee58.js",
"utils/timestampToDayjs": "/assets/utils/timestampToDayjs-ec6d48be.js",
"utils/timezone": "/assets/utils/timezone-88296191.js",
"utils/vueProps": "/assets/utils/vueProps-a58a1369.js",
"vendor/aos@2.3.4": "/assets/vendor/aos@2.3.4-516f027d.js",
"vendor/cuid@2.1.8": "/assets/vendor/cuid@2.1.8-da32fb7d.js",
"vendor/domurl@2.3.4": "/assets/vendor/domurl@2.3.4-4f2f3541.js",
"vendor/floating-vue@5.2.0": "/assets/vendor/floating-vue@5.2.0-577e3eb1.js",
"vendor/frontapp-ui-bridge@2.0.0-beta1": "/assets/vendor/frontapp-ui-bridge@2.0.0-beta1-60e5015b.js",
"vendor/mime-match@1.0.2": "/assets/vendor/mime-match@1.0.2-d4882d07.js",
"vendor/monaco-editor-markdown@0.52.2": "/assets/vendor/monaco-editor-markdown@0.52.2-0245f0a5.js",
"vendor/monaco-editor-worker@0.52.2": "/assets/vendor/monaco-editor-worker@0.52.2-022da1df.js",
"vendor/monaco-editor@0.52.2": "/assets/vendor/monaco-editor@0.52.2-55952c28.js",
"vendor/namespace-emitter@2.0.1": "/assets/vendor/namespace-emitter@2.0.1-2dc3d975.js",
"vendor/pinia@3.0.0": "/assets/vendor/pinia@3.0.0-6bc36112.js",
"vendor/pinia@3.0.0.prod": "/assets/vendor/pinia@3.0.0.prod-dc83e9f4.js",
"vendor/primevue@4.0.7": "/assets/vendor/primevue@4.0.7-92d8ca1f.js",
"vendor/sentry-vue@10.30.0": "/assets/vendor/sentry-vue@10.30.0-41c96982.js",
"vendor/transloadit-prettier-bytes@0.0.9": "/assets/vendor/transloadit-prettier-bytes@0.0.9-54cf75df.js",
"vendor/turbo-rails@8.0.4": "/assets/vendor/turbo-rails@8.0.4-40d5bb50.js",
"vendor/vueform-multiselect@2.6.10": "/assets/vendor/vueform-multiselect@2.6.10-ec29cd25.js",
"vendor/wildcard@1.1.2": "/assets/vendor/wildcard@1.1.2-e197d4f1.js",
"vue": "https://cdnjs.betterstack.com/vue@3.5.13/dist/vue.esm-browser.prod.js",
"pinia": "/assets/vendor/pinia@3.0.0.prod-dc83e9f4.js",
"vue-turbolinks": "https://cdnjs.betterstack.com/vue-turbolinks@2.2.2/index.js",
"@sentry/vue": "/assets/vendor/sentry-vue@10.30.0-41c96982.js",
"@headlessui/vue": "https://cdnjs.betterstack.com/@headlessui/vue@1.7.4/dist/headlessui.esm.js",
"primevue": "/assets/vendor/primevue@4.0.7-92d8ca1f.js",
"vueform-multiselect": "/assets/vendor/vueform-multiselect@2.6.10-ec29cd25.js",
"vueform-slider": "https://cdnjs.betterstack.com/@vueform/slider@2.1.10/dist/slider.js",
"@hotwired/stimulus": "/assets/stimulus.min-5ea87a62.js",
"@hotwired/stimulus-loading": "/assets/stimulus-loading-449f59d0.js",
"@hotwired/turbo-rails": "/assets/vendor/turbo-rails@8.0.4-40d5bb50.js",
"@hotwired/hotwire-native-bridge": "https://cdnjs.betterstack.com/@hotwired/hotwire-native-bridge@1.2.2/dist/hotwire-native-bridge.js",
"@rails/actioncable": "https://cdnjs.betterstack.com/@rails/actioncable@8.0/app/assets/javascripts/actioncable.esm.js",
"@rails/activestorage": "https://cdnjs.betterstack.com/@rails/activestorage@8.0/app/assets/javascripts/activestorage.js",
"js-cookie": "https://cdnjs.betterstack.com/js-cookie@3.0.7/dist/js.cookie.min.mjs",
"lazysizes": "https://cdnjs.betterstack.com/lazysizes@5.3.2/lazysizes.min.js",
"el-transition": "https://cdnjs.betterstack.com/el-transition@0.0.7/index.js",
"dayjs": "https://cdnjs.betterstack.com/dayjs@1.11.7/esm/index.js",
"dayjs/": "https://cdnjs.betterstack.com/dayjs@1.11.7/esm/",
"dayjs/plugin/quarterOfYear.js": "https://cdnjs.betterstack.com/dayjs@1.11.7/esm/plugin/quarterOfYear/index.js",
"dayjs/plugin/timezone.js": "https://cdnjs.betterstack.com/dayjs@1.11.7/esm/plugin/timezone/index.js",
"dayjs/plugin/utc.js": "https://cdnjs.betterstack.com/dayjs@1.11.7/esm/plugin/utc/index.js",
"underscore/": "https://cdnjs.betterstack.com/underscore@1.13.8/modules/",
"nanoevents": "https://cdnjs.betterstack.com/nanoevents@7.0.1/index.js",
"decimal": "https://cdnjs.betterstack.com/decimal.js@10.4.3/decimal.mjs",
"lodash/": "https://cdnjs.betterstack.com/lodash-es@4.18.1/",
"lodash.throttle": "https://cdnjs.betterstack.com/lodash-es@4.18.1/throttle",
"aos": "/assets/vendor/aos@2.3.4-516f027d.js",
"domurl": "/assets/vendor/domurl@2.3.4-4f2f3541.js",
"@floating-ui/dom": "https://cdnjs.betterstack.com/@floating-ui/dom@1.4.4/dist/floating-ui.dom.browser.min.mjs",
"@floating-ui/core": "https://cdnjs.betterstack.com/@floating-ui/core@1.3.1/dist/floating-ui.core.browser.min.mjs",
"floating-vue": "/assets/vendor/floating-vue@5.2.0-577e3eb1.js",
"overtype": "https://cdnjs.betterstack.com/overtype@1.2.4/dist/overtype.min.js",
"echarts": "https://cdnjs.betterstack.com/echarts@5.4.0/dist/echarts.esm.min.js",
"echarts/core": "https://cdnjs.betterstack.com/echarts@5.4.0/dist/echarts.esm.min.js",
"vue-echarts": "https://cdnjs.betterstack.com/vue-echarts@6.6.1/dist/index.esm.min.js",
"resize-detector": "https://cdnjs.betterstack.com/resize-detector@0.3.0/esm/index.js",
"vue-demi": "https://cdnjs.betterstack.com/vue-demi@0.14.10/lib/index.mjs",
"@uppy/aws-s3": "https://cdnjs.betterstack.com/@uppy/aws-s3@3.2.0/lib/index.js",
"@uppy/aws-s3-multipart": "https://cdnjs.betterstack.com/@uppy/aws-s3-multipart@3.4.0/lib/index.js",
"@uppy/core": "https://cdnjs.betterstack.com/@uppy/core@3.2.1/lib/index.js",
"@uppy/core/": "https://cdnjs.betterstack.com/@uppy/core@3.2.1/",
"@uppy/companion-client": "https://cdnjs.betterstack.com/@uppy/companion-client@3.1.3/lib/index.js",
"@uppy/utils/": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/",
"@uppy/utils/lib/AbortController": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/AbortController.js",
"@uppy/utils/lib/ErrorWithCause": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/ErrorWithCause.js",
"@uppy/utils/lib/EventManager": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/EventManager.js",
"@uppy/utils/lib/NetworkError": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/NetworkError.js",
"@uppy/utils/lib/ProgressTimeout": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/ProgressTimeout.js",
"@uppy/utils/lib/RateLimitedQueue": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/RateLimitedQueue.js",
"@uppy/utils/lib/Translator": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/Translator.js",
"@uppy/utils/lib/emitSocketProgress": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/emitSocketProgress.js",
"@uppy/utils/lib/fetchWithNetworkError": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/fetchWithNetworkError.js",
"@uppy/utils/lib/fileFilters": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/fileFilters.js",
"@uppy/utils/lib/findDOMElement": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/findDOMElement.js",
"@uppy/utils/lib/generateFileID": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/generateFileID.js",
"@uppy/utils/lib/getFileNameAndExtension": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/getFileNameAndExtension.js",
"@uppy/utils/lib/getFileType": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/getFileType.js",
"@uppy/utils/lib/getSocketHost": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/getSocketHost.js",
"@uppy/utils/lib/getTextDirection": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/getTextDirection.js",
"@uppy/utils/lib/getTimeStamp": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/getTimeStamp.js",
"@uppy/utils/lib/isNetworkError": "https://cdnjs.betterstack.com/@uppy/utils@5.4.0/lib/isNetworkError.js",
"@uppy/store-default": "https://cdnjs.betterstack.com/@uppy/store-default@3.0.3/lib/index.js",
"mime-match": "/assets/vendor/mime-match@1.0.2-d4882d07.js",
"namespace-emitter": "/assets/vendor/namespace-emitter@2.0.1-2dc3d975.js",
"nanoid/non-secure": "https://cdnjs.betterstack.com/nanoid@4.0.1/non-secure/index.js",
"preact": "https://cdnjs.betterstack.com/preact@10.11.0/dist/preact.module.js",
"@transloadit/prettier-bytes": "/assets/vendor/transloadit-prettier-bytes@0.0.9-54cf75df.js",
"wildcard": "/assets/vendor/wildcard@1.1.2-e197d4f1.js",
"@frontapp/plugin-sdk": "https://cdnjs.betterstack.com/@frontapp/plugin-sdk@1.0.1/dist/index.es.js",
"@frontapp/ui-bridge": "/assets/vendor/frontapp-ui-bridge@2.0.0-beta1-60e5015b.js",
"cuid": "/assets/vendor/cuid@2.1.8-da32fb7d.js",
"rxjs": "https://cdnjs.betterstack.com/rxjs@^7.4.0/dist/esm/index.js",
"rxjs/": "https://cdnjs.betterstack.com/rxjs@^7.4.0/dist/esm/",
"tslib": "https://cdnjs.betterstack.com/tslib@2.3.1/tslib.es6.js",
"virtua": "https://cdnjs.betterstack.com/virtua@0.39.0/lib/vue/index.mjs",
"flexsearch": "https://cdnjs.betterstack.com/flexsearch@0.7.43/dist/flexsearch.light.module.min.js",
"monaco-editor": "/assets/vendor/monaco-editor@0.52.2-55952c28.js",
"monaco-editor-markdown": "/assets/vendor/monaco-editor-markdown@0.52.2-0245f0a5.js",
"monaco-editor-worker": "/assets/vendor/monaco-editor-worker@0.52.2-022da1df.js",
"marked": "https://cdnjs.betterstack.com/marked@4.3.0/lib/marked.esm.js"
}
}</script>
<link rel="modulepreload" href="https://cdnjs.betterstack.com/vue@3.5.13/dist/vue.esm-browser.prod.js" nonce="2c9588afc24c2f0312f695a91890f034">
<link rel="modulepreload" href="/assets/vendor/pinia@3.0.0.prod-dc83e9f4.js" nonce="2c9588afc24c2f0312f695a91890f034">
<link rel="modulepreload" href="https://cdnjs.betterstack.com/vue-turbolinks@2.2.2/index.js" nonce="2c9588afc24c2f0312f695a91890f034">
<script type="esms-options" nonce="2c9588afc24c2f0312f695a91890f034">{"nonce":"2c9588afc24c2f0312f695a91890f034"}</script>
<script src="/assets/es-module-shims.min-806a0b27.js" defer="defer" data-turbo-track="reload" nonce="2c9588afc24c2f0312f695a91890f034"></script>
<script type="module" nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
!function(b,e,t,r){
b[t]=b[t]||function(...args){(b[t].q=b[t].q||[]).push(args)};
b[t].l=+new Date;
var s=e.createElement('script'); s.async=1; s.crossOrigin='anonymous';
s.src='https://betterstack.net/b.js?t='+r;
(e.head||e.getElementsByTagName('head')[0]).appendChild(s);
}(window,document,'betterstack','aVNoLWfbToe2t8eM7abofTHL');
betterstack('init', { environment: window.cfg.environment, release: window.cfg.app_version })
function setBetterstackUser() {
betterstack('user', {
...(window.cfg.sentry_user || {}),
group_id: window.cfg.organization_id,
group_name: window.cfg.organization_name,
locale: Intl.NumberFormat().resolvedOptions().locale,
surface: document.querySelector('meta[name="bs-surface"]')?.content,
})
}
setBetterstackUser()
// Turbo swaps head metas per visit but doesn't re-run this script; refresh so events carry the current page's surface.
document.addEventListener('turbo:load', setBetterstackUser)
//]]>
</script>
<script type="module" nonce="2c9588afc24c2f0312f695a91890f034">import "entrypoints/articles"</script>
<script type="application/javascript" nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
if (!HTMLScriptElement?.supports?.('importmap')) {
alert('Your browser is not supported. Please upgrade to a newer version of Chrome, Firefox, Safari or other modern browser.')
}
//]]>
</script>
<script type="module" nonce="2c9588afc24c2f0312f695a91890f034">import "channels"</script>
<link rel="stylesheet" href="https://betterstack.com/assets/articles-30168a5f.css" media="all" data-turbo-track="reload" />
<style>
@supports (-webkit-hyphens:none) {
.book, .book:hover {
filter: unset;
}
}
</style>
<script type="application/ld+json" nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
[{"@context":"https://schema.org","@type":"Article","headline":"What Is Incident Management? Beginner’s Guide","author":"Jan Tovarys and Andrej Hoos","image":"/og-image/what-is-incident-management.png","genre":"","keywords":"","publisher":{"@type":"Organization","name":"Better Stack","logo":{"@type":"ImageObject","url":"https://betterstack.com/assets/logo-553d2ba4.png"}},"url":"https://betterstack.com/community/guides/incident-management/what-is-incident-management/","mainEntityOfPage":{"@type":"WebPage","@id":"https://google.com/article"},"datePublished":"2022-03-31T09:00:51Z","dateCreated":"2022-03-31T09:00:51Z","dateModified":"2025-09-15T14:42:55Z","description":"Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems."}]
//]]>
</script><link as='font' crossorigin='anonymous' href='https://betterstack.com/static/fonts/Roobert/Roobert-Regular-1.0.woff2' rel='preload'>
<link as='font' crossorigin='anonymous' href='https://betterstack.com/static/fonts/Roobert/Roobert-Medium-1.0.woff2' rel='preload'>
<link as='font' crossorigin='anonymous' href='https://betterstack.com/static/fonts/Roobert/Roobert-SemiBold-1.0.woff2' rel='preload'>
<link as='font' crossorigin='anonymous' href='https://betterstack.com/static/fonts/Roobert/Roobert-Bold-1.0.woff2' rel='preload'>
<style>
@font-face {
font-family: "Roobert";
font-style: normal;
font-weight: 400;
font-display: swap;
src:
url("https://betterstack.com/static/fonts/Roobert/Roobert-Regular-1.0.woff2") format("woff2"),
url("https://betterstack.com/static/fonts/Roobert/Roobert-Regular-1.0.woff") format("woff");
}
@font-face {
font-family: "Roobert";
font-style: normal;
font-weight: 500;
font-display: swap;
src:
url("https://betterstack.com/static/fonts/Roobert/Roobert-Medium-1.0.woff2") format("woff2"),
url("https://betterstack.com/static/fonts/Roobert/Roobert-Medium-1.0.woff") format("woff");
}
@font-face {
font-family: "Roobert";
font-style: normal;
font-weight: 600;
font-display: swap;
src:
url("https://betterstack.com/static/fonts/Roobert/Roobert-SemiBold-1.0.woff2") format("woff2"),
url("https://betterstack.com/static/fonts/Roobert/Roobert-SemiBold-1.0.woff") format("woff");
}
@font-face {
font-family: "Roobert";
font-style: normal;
font-weight: 700;
font-display: swap;
src:
url("https://betterstack.com/static/fonts/Roobert/Roobert-Bold-1.0.woff2") format("woff2"),
url("https://betterstack.com/static/fonts/Roobert/Roobert-Bold-1.0.woff") format("woff");
}
</style>
<link as='font' crossorigin='anonymous' href='https://betterstack.com/static/fonts/Inter/Inter-latin-3.15.woff2' rel='preload'>
<style>
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 400 700;
font-display: swap;
src: url("https://betterstack.com/static/fonts/Inter/Inter-latin-3.15.woff2") format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
</style>
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Regular-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Medium-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowText-Bold-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowDisplay-Medium-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/static/fonts/Helvetica/HelveticaNowDisplay-Bold-1.0.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<style>
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Regular'),
local('HelveticaNowText-Regular'),
url('/static/fonts/Helvetica/HelveticaNowText-Regular-1.0.woff2') format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Medium'),
local('HelveticaNowText-Medium'),
url('/static/fonts/Helvetica/HelveticaNowText-Medium-1.0.woff2') format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Text';
src: local('Helvetica Now Text Bold'),
local('HelveticaNowText-Bold'),
url('/static/fonts/Helvetica/HelveticaNowText-Bold-1.0.woff2') format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Display';
src: local('Helvetica Now Display Medium'),
local('HelveticaNowDisplay-Medium'),
url('/static/fonts/Helvetica/HelveticaNowDisplay-Medium-1.0.woff2') format('woff2');
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Helvetica Now Display';
src: local('Helvetica Now Display Bold'),
local('HelveticaNowDisplay-Bold'),
url('/static/fonts/Helvetica/HelveticaNowDisplay-Bold-1.0.woff2') format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
</style>
<meta content='Guides' name='meta-docsearch-hierarchy1'>
<meta content='Incident management' name='meta-docsearch-hierarchy2'>
<meta content='Incident response and on-call' name='meta-docsearch-hierarchy3'>
<meta content='What Is Incident Management? Beginner’s Guide' name='meta-docsearch-hierarchy4'>
<meta content='What Is Incident Management? Beginner’s Guide' name='meta-docsearch-name'>
<meta content='What Is Incident Management? Beginner’s Guide' name='meta-docsearch-title'>
<meta content='Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems.' name='meta-docsearch-description'>
<meta content='Learn what is incident management, why is it important, what are specific steps from incident detection to incident resolution and postmortems.' name='meta-docsearch-og_description'>
<meta content='Jan Tovarys,Andrej Hoos' name='meta-docsearch-authors'>
</head>
<body>
<script type="application/javascript" nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
window.cfg = {"base_host":"betterstack.com","base_url":"https://betterstack.com","better_stack_url":"https://betterstack.com","uptime_url":"https://uptime.betterstack.com","logtail_url":"https://telemetry.betterstack.com","errors_url":"https://errors.betterstack.com","aisre_url":"https://chat.betterstack.com","rum_url":"https://rum.betterstack.com","cloud_url":"https://cloud.betterstack.com","warehouse_url":"https://warehouse.betterstack.com","controller":"articles","action":"show","app":"betterstack","environment":"production","app_version":"8d25e6a961ddaeae351be8c892b5d08730719ee4"};
//]]>
</script>
<div class='main articles bg-[#0B0C14]'>
<header class='z-40 top-0 left-0 right-0 flex justify-center helvetica bg-[#0B0C14]/80 relative before:absolute before:-z-10 before:inset-0 before:backdrop-blur-2xl' data-controller='header' id='navbar'>
<nav class='grow flex justify-between border-b mx-5 max-w-[1110px] h-[52px] text-[13px] leading-[100%] text-[#C9D3EE] border-[#727DA1]/15'>
<div class='flex items-stretch gap-3'>
<a aria-label='Go to homepage' class='flex items-center py-3' href='/'>
<svg width='154' height='21' class='scale-[65%] -mx-6' alt='Better Stack' style='--currentColor: currentColor;'><use href='/assets/v2/better-stack-logo-f5a76de1.svg#root' /></svg>
</a>
<div class='hidden md:flex items-stretch gap-4'>
<button aria-controls='platform-menu' aria-haspopup='menu' class='pl-3 py-3 pr-6 -mr-3 group relative flex items-center'>
<div class='transition group-hover:text-white'>Platform</div>
<span class='absolute right-2 text-[#656A7B]'><svg class='group-hover:rotate-180 transition w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-down-d602e268.svg#root' /></svg></span>
<div class='hidden group-hover:block absolute z-40 top-full left-0 text-left' id='platform-menu' role='menu' tabindex='-1'>
<div class='rounded-lg border backdrop-blur-2xl flex w-[667px] min-[1100px]:w-[950px] xl:w-[1005px] bg-[#181926]/80 border-[#1F2433]/75'>
<div class='grid md:grid-cols-2 w-full min-[1100px]:grid-cols-3'>
<div class='flex-1 py-3 flex flex-col gap-1 border-b md:border-r relative md:pl-[17px] md:pr-[17px] border-[#727DA112] min-[1100px]:border-b-0'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/ai-sre"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='scale-[85%]' style='--currentColor: currentColor;'><use href='/assets/v2/ai-sre-9ed692c8.svg#root' /></svg></span>
<div>
<div class='font-medium'>AI SRE</div>
<div class='mt-1 text-xs text-neutral-200'>Agentic root cause analysis</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/incident-management"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/calendar-f8fa6928.svg#root' /></svg></span>
<div>
<div class='font-medium'>Incident management &amp; on-call</div>
<div class='mt-1 text-xs text-neutral-200'>Move fast when things break</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/status-page"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-1px] left-[2px]' style='--currentColor: currentColor;'><use href='/assets/v2/page-a4cac846.svg#root' /></svg></span>
<div>
<div class='font-medium'>Status page</div>
<div class='mt-1 text-xs text-neutral-200'>Communicate downtime &amp; build trust</div>
</div>
</a>
</div>
<div class='flex-1 py-3 flex flex-col gap-1 border-b relative md:pl-[17px] md:pr-[17px] border-[#727DA112] min-[1100px]:border-b-0 min-[1100px]:border-r'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/tracing"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative' style='--currentColor: currentColor;'><use href='/assets/v2/telescope-bf9dc2b9.svg#root' /></svg></span>
<div>
<div class='font-medium'>Tracing</div>
<div class='mt-1 text-xs text-neutral-200'>eBPF-based OpenTelemetry-native tracing</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/log-management"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/code-insert-dbc41857.svg#root' /></svg></span>
<div>
<div class='font-medium'>Log management</div>
<div class='mt-1 text-xs text-neutral-200'>Collect insights across your stack</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/infrastructure-monitoring"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/server-f03364f4.svg#root' /></svg></span>
<div>
<div class='font-medium'>Infrastructure monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>OpenTelemetry-native infrastructure monitoring</div>
</div>
</a>
</div>
<div class='flex-1 mt-2 md:mt-0 py-3 flex flex-col gap-1 md:pl-[17px] md:pr-5'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/uptime"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/radar-4182d855.svg#root' /></svg></span>
<div>
<div class='font-medium'>Uptime monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>The most reliable uptime monitoring</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/real-user-monitoring"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative' style='--currentColor: currentColor;'><use href='/assets/v2/rum-dbe53d43.svg#root' /></svg></span>
<div>
<div class='font-medium'>Real user monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>Session replay, web vitals &amp; product analytics</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/error-tracking"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative scale-[75%] top-px left-px' style='--currentColor: currentColor;'><use href='/assets/v2/exclamation-circle-de67a698.svg#root' /></svg></span>
<div>
<div class='font-medium'>Error tracking</div>
<div class='mt-1 text-xs text-neutral-200'>AI‑native error tracking built on Better Stack</div>
</div>
</a>
</div>
</div>
</div>
</div>
</button>
<a class='hidden lg:flex p-3 hover:text-white transition items-center' href='https://betterstack.com/docs/'>
<span>Documentation</span>
</a>
<a class='hidden lg:flex p-3 hover:text-white transition items-center' href='/pricing'>
<span>Pricing</span>
</a>
<form action='https://betterstack.com/community' class='m-0 flex items-stretch'>
<button aria-controls='community-menu' aria-haspopup='menu' class='p-3 group relative flex items-center' type='submit'>
<div class='transition group-hover:text-white'>Community</div>
<span class='absolute -right-1 text-[#656A7B]'><svg class='group-hover:rotate-180 transition w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-down-d602e268.svg#root' /></svg></span>
<div class='hidden group-hover:block absolute z-40 top-full left-0 text-left' id='community-menu' role='menu' tabindex='-1'>
<div class='rounded-lg border backdrop-blur-2xl flex flex-col gap-1 w-[174px] p-[6px] bg-[#181926]/80 border-[#1F2433]/75'>
<a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%] md:hidden" href="https://betterstack.com/community"><span class='text-neutral-200'><svg class='mx-[2px] w-4 h-4 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/users-c09a1e92.svg#root' /></svg></span>
Community home
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/guides"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/guides-fa8300b6.svg#root' /></svg></span>
Guides
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/questions"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/questions-ae0ab73b.svg#root' /></svg></span>
Questions
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/comparisons"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/comparisons-e0f4ca1e.svg#root' /></svg></span>
Comparisons
</a>
</div>
</div>
</button>
</form>
<button aria-controls='company-menu' aria-haspopup='menu' class='p-3 group relative flex items-center'>
<div class='transition group-hover:text-white'>Company</div>
<span class='absolute -right-1 text-[#656A7B]'><svg class='group-hover:rotate-180 transition w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-down-d602e268.svg#root' /></svg></span>
<div class='hidden group-hover:block absolute z-40 top-full left-0 text-left' id='company-menu' role='menu' tabindex='-1'>
<div class='rounded-lg border backdrop-blur-2xl flex flex-col gap-1 w-[190px] p-[6px] bg-[#181926]/80 border-[#1F2433]/75'>
<a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/careers"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/ship-38e68322.svg#root' /></svg></span>
Work at Better Stack
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/careers/engineering"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/code-05597a86.svg#root' /></svg></span>
Engineering
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/security"><span class='text-neutral-200'><svg width='20' height='20' alt='' class='w-5 h-5 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/shield-check-f947ade1.svg#root' /></svg></span>
Security
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/blog"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/blog-0647ef17.svg#root' /></svg></span>
Blog
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/tag/changelog"><span class='text-neutral-200'><svg class='w-5 h-5 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/newspaper-ea89647a.svg#root' /></svg></span>
Changelog
</a>
</div>
</div>
</button>
<a class='hidden lg:flex p-3 hover:text-white transition items-center' href='/enterprise'>
<span>Enterprise</span>
</a>
</div>
</div>
<div class='flex items-center sm:gap-2 whitespace-nowrap -mr-3 md:mr-0'>
<a class="p-2 transition hover:text-white" data-turbo="false" href="/users/sign-in">Sign in</a>
<a class="px-2 h-[27px] flex items-center rounded bg-button-gradient text-white font-medium" data-turbo="false" href="/users/sign-up">Sign up</a>
<button aria-label='Open menu' class='p-2 group relative md:hidden text-neutral-300' id='open-menu'>
<svg class='w-5 h-5 inline' style='--currentColor: currentColor;stroke-width:1.8;'><use href='/assets/icons/heroicons_v2/outline/bars-3-76c83e3d.svg#root' /></svg>
</button>
<button aria-label='Close menu' class='hidden p-2 group relative md:hidden text-neutral-300' id='close-menu'>
<svg class='w-5 h-5 inline' style='--currentColor: currentColor;stroke-width:1.8;'><use href='/assets/icons/heroicons_v2/outline/x-mark-0f864e39.svg#root' /></svg>
</button>
</div>
<div class='hidden md:hidden p-5 fixed z-40 left-0 right-0 backdrop-blur-2xl top-[52px] bg-[#181926]/80 text-[#C9D3EE] max-h-[calc(100dvh-52px)] overflow-y-scroll' id='mobile-menu'>
<div class='js-menu-section flex flex-col gap-1' data-section='root'>
<button class='p-3 group relative flex items-center' data-section='platform'>
Platform
<span class='text-[#656A7B]'><svg class='ml-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-right-72e32d8a.svg#root' /></svg></span>
</button>
<a class="p-3" href="https://betterstack.com/docs/">Documentation</a>
<a class="p-3" href="/pricing">Pricing</a>
<button class='p-3 group relative flex items-center' data-section='community'>
Community
<span class='text-[#656A7B]'><svg class='ml-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-right-72e32d8a.svg#root' /></svg></span>
</button>
<button class='p-3 group relative flex items-center' data-section='company'>
Company
<span class='text-[#656A7B]'><svg class='ml-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-right-72e32d8a.svg#root' /></svg></span>
</button>
<a class="p-3" href="/enterprise">Enterprise</a>
</div>
<div class='js-menu-section hidden' data-section='platform'>
<button class='mb-2 p-3 group relative flex items-center' data-section='root'>
<svg class='mr-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-left-1c3f2e01.svg#root' /></svg>
Back
</button>
<div class='grid md:grid-cols-2 w-full min-[1100px]:grid-cols-3'>
<div class='flex-1 py-3 flex flex-col gap-1 border-b md:border-r relative md:pl-[17px] md:pr-[17px] border-[#727DA112] min-[1100px]:border-b-0'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/ai-sre"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='scale-[85%]' style='--currentColor: currentColor;'><use href='/assets/v2/ai-sre-9ed692c8.svg#root' /></svg></span>
<div>
<div class='font-medium'>AI SRE</div>
<div class='mt-1 text-xs text-neutral-200'>Agentic root cause analysis</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/incident-management"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/calendar-f8fa6928.svg#root' /></svg></span>
<div>
<div class='font-medium'>Incident management &amp; on-call</div>
<div class='mt-1 text-xs text-neutral-200'>Move fast when things break</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/status-page"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-1px] left-[2px]' style='--currentColor: currentColor;'><use href='/assets/v2/page-a4cac846.svg#root' /></svg></span>
<div>
<div class='font-medium'>Status page</div>
<div class='mt-1 text-xs text-neutral-200'>Communicate downtime &amp; build trust</div>
</div>
</a>
</div>
<div class='flex-1 py-3 flex flex-col gap-1 border-b relative md:pl-[17px] md:pr-[17px] border-[#727DA112] min-[1100px]:border-b-0 min-[1100px]:border-r'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/tracing"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative' style='--currentColor: currentColor;'><use href='/assets/v2/telescope-bf9dc2b9.svg#root' /></svg></span>
<div>
<div class='font-medium'>Tracing</div>
<div class='mt-1 text-xs text-neutral-200'>eBPF-based OpenTelemetry-native tracing</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/log-management"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/code-insert-dbc41857.svg#root' /></svg></span>
<div>
<div class='font-medium'>Log management</div>
<div class='mt-1 text-xs text-neutral-200'>Collect insights across your stack</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/infrastructure-monitoring"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/server-f03364f4.svg#root' /></svg></span>
<div>
<div class='font-medium'>Infrastructure monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>OpenTelemetry-native infrastructure monitoring</div>
</div>
</a>
</div>
<div class='flex-1 mt-2 md:mt-0 py-3 flex flex-col gap-1 md:pl-[17px] md:pr-5'>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/uptime"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative top-[-2px] scale-[90%]' style='--currentColor: currentColor;'><use href='/assets/v2/radar-4182d855.svg#root' /></svg></span>
<div>
<div class='font-medium'>Uptime monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>The most reliable uptime monitoring</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/real-user-monitoring"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative' style='--currentColor: currentColor;'><use href='/assets/v2/rum-dbe53d43.svg#root' /></svg></span>
<div>
<div class='font-medium'>Real user monitoring</div>
<div class='mt-1 text-xs text-neutral-200'>Session replay, web vitals &amp; product analytics</div>
</div>
</a>
<a class="block px-2 flex gap-2 transition py-[10px] hover:bg-[#727DA1]/15 rounded leading-[145%]" href="/error-tracking"><span class='text-[#7C87F7]'><svg width='25' height='24' alt='' class='relative scale-[75%] top-px left-px' style='--currentColor: currentColor;'><use href='/assets/v2/exclamation-circle-de67a698.svg#root' /></svg></span>
<div>
<div class='font-medium'>Error tracking</div>
<div class='mt-1 text-xs text-neutral-200'>AI‑native error tracking built on Better Stack</div>
</div>
</a>
</div>
</div>
</div>
<div class='js-menu-section hidden flex flex-col gap-1' data-section='community'>
<button class='mb-2 p-3 group relative flex items-center' data-section='root'>
<svg class='mr-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-left-1c3f2e01.svg#root' /></svg>
Back
</button>
<a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%] md:hidden" href="https://betterstack.com/community"><span class='text-neutral-200'><svg class='mx-[2px] w-4 h-4 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/users-c09a1e92.svg#root' /></svg></span>
Community home
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/guides"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/guides-fa8300b6.svg#root' /></svg></span>
Guides
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/questions"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/questions-ae0ab73b.svg#root' /></svg></span>
Questions
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/comparisons"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/comparisons-e0f4ca1e.svg#root' /></svg></span>
Comparisons
</a>
</div>
<div class='js-menu-section hidden pb-5 flex flex-col gap-1' data-section='company'>
<button class='mb-2 p-3 group relative flex items-center' data-section='root'>
<svg class='mr-[6px] w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-left-1c3f2e01.svg#root' /></svg>
Back
</button>
<a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/careers"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/ship-38e68322.svg#root' /></svg></span>
Work at Better Stack
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/careers/engineering"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/code-05597a86.svg#root' /></svg></span>
Engineering
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="/security"><span class='text-neutral-200'><svg width='20' height='20' alt='' class='w-5 h-5 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/shield-check-f947ade1.svg#root' /></svg></span>
Security
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/community/blog"><span class='text-neutral-200'><svg width='20' height='20' alt='' style='--currentColor: currentColor;'><use href='/assets/v2/blog-0647ef17.svg#root' /></svg></span>
Blog
</a><a class="block px-2 flex items-center gap-2 transition py-[6px] hover:bg-[#727DA1]/15 rounded-[6px] leading-[145%]" href="https://betterstack.com/tag/changelog"><span class='text-neutral-200'><svg class='w-5 h-5 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/solid/newspaper-ea89647a.svg#root' /></svg></span>
Changelog
</a>
</div>
</div>
</nav>
</header>
<header class='dark sticky top-0 z-30 flex justify-center leading-none w-full backdrop-blur-2xl bg-[#0B0C14]/80 text-[13px]' data-controller='header'>
<div class='mx-2 flex grow relative max-w-[1110px] min-[650px]:mx-5 min-[650px]:overflow-x-scroll min-[650px]:no-scrollbars'>
<nav class='grow flex items-center border-b h-[49px] border-[#727DA1]/15'>
<div class='grow flex items-stretch gap-5 justify-between'>
<div class='relative group min-[650px]:hidden'>
<button aria-controls='article-menu' aria-haspopup='menu' class='pl-3 py-3 pr-6 -mr-3 relative flex items-center' id='article-menu-trigger'>
<div class='transition group-hover:text-white text-[#C9D3EE]'>
Guides
</div>
<span class='absolute right-2 text-[#656A7B]'>
<svg class='transition group-hover:rotate-180 group-data-open:rotate-180 w-[11px] h-[11px] inline' style='--currentColor: currentColor;stroke-width:3.2727;'><use href='/assets/icons/heroicons_v2/outline/chevron-down-d602e268.svg#root' /></svg>
</span>
</button>
<div class='hidden absolute z-40 left-0 text-left group-hover:block! top-[100%]' id='article-menu' role='menu' tabindex='-1'>
<div class='rounded-lg border backdrop-blur-2xl flex flex-col gap-1 w-[190px] p-[6px] bg-[#181926] border-[#1F2433]/75'>
<a class='block px-2 flex items-center transition hover:bg-[#727DA1]/15 py-[6px] rounded-[6px] leading-[145%]' href='/community/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Community
</a>
<a class='block px-2 flex items-center transition hover:bg-[#727DA1]/15 py-[6px] bg-[#727DA1]/15 text-white rounded-[6px] leading-[145%]' href='/community/guides/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Guides
</a>
<a class='block px-2 flex items-center transition hover:bg-[#727DA1]/15 py-[6px] rounded-[6px] leading-[145%]' href='/community/questions/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Questions
</a>
<a class='block px-2 flex items-center transition hover:bg-[#727DA1]/15 py-[6px] rounded-[6px] leading-[145%]' href='/community/comparisons/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Comparisons
</a>
<a class='block px-2 flex items-center transition hover:bg-[#727DA1]/15 py-[6px] rounded-[6px] leading-[145%]' href='/community/blog/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Blog
</a>
</div>
</div>
</div>
<ul class='hidden items-center gap-5 whitespace-nowrap min-[650px]:flex'>
<li class='flex relative dropdown-trigger hover:text-white'>
<a class='w-full p-2' href='/community/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Community
</a>
</li>
<li class='flex relative dropdown-trigger hover:text-white'>
<a class='w-full p-2 text-white rounded bg-[#98A4F714]' href='/community/guides/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Guides
</a>
</li>
<li class='flex relative dropdown-trigger hover:text-white'>
<a class='w-full p-2' href='/community/questions/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Questions
</a>
</li>
<li class='flex relative dropdown-trigger hover:text-white'>
<a class='w-full p-2' href='/community/comparisons/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Comparisons
</a>
</li>
<li class='flex relative dropdown-trigger hover:text-white'>
<a class='w-full p-2' href='/community/blog/?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management'>
Blog
</a>
</li>
</ul>
<div class='sticky z-10 right-4 top-0 bottom-0 flex items-center gap-5 whitespace-nowrap md:absolute md:right-0'>
<a class='flex items-center hover:text-white md:hidden' href='https://betterstack.com/docs/'>Docs</a>
<a class='hover:text-white hidden md:block' href='https://betterstack.com/docs/'>Documentation</a>
<div class='flex items-center gap-x-2'>
<div aria-label='Theme switcher' class='flex items-center gap-0.5 bg-[#171A25] rounded-md p-0.5' data-controller='theme' role='group'>
<button aria-label='Light theme' class='flex items-center justify-center size-6 rounded-[5px] data-[active=true]:bg-elevation-2' data-action='click-&gt;theme#select' data-theme='light' data-theme-target='btn'>
<svg class='icon-secondary data-[active=true]:icon-primary size-3.5 inline' style='--currentColor: currentColor;stroke-width:2.5714;'><use href='/assets/icons/heroicons_v2/outline/sun-0d840de8.svg#root' /></svg>
</button>
<button aria-label='System theme' class='flex items-center justify-center size-6 rounded-[5px] data-[active=true]:bg-elevation-2' data-action='click-&gt;theme#select' data-theme='system' data-theme-target='btn'>
<svg class='size-3.5 icon-secondary data-[active=true]:icon-primary' style='--currentColor: currentColor;'><use href='/assets/icons/custom/system-theme-docs-ca18489c.svg#root' /></svg>
</button>
<button aria-label='Dark theme' class='flex items-center justify-center size-6 rounded-[5px] data-[active=true]:bg-elevation-2' data-action='click-&gt;theme#select' data-theme='dark' data-theme-target='btn'>
<svg class='icon-secondary data-[active=true]:icon-primary size-3.5 inline' style='--currentColor: currentColor;stroke-width:2.5714;'><use href='/assets/icons/heroicons_v2/outline/moon-e3058542.svg#root' /></svg>
</button>
</div>
<div id='docsearch-container'></div>
<script src='https://cdnjs.betterstack.com/@docsearch/js@3.5.2/dist/umd/index.js'></script>
<script nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
function loadDocsearch() {
if (!window.docsearch) {
setTimeout(loadDocsearch, 50);
return;
}
window.docsearch({
container: '#docsearch-container',
appId: '4N04E5JBP3',
indexName: 'betterstack22',
apiKey: '1acd2b32f9173069cd6467c9d186e21f',
maxResultsPerGroup: 20,
searchParameters: {
hitsPerPage: 20,
},
});
// This hack prevents scrolling after closing the modal in Safari.
// https://github.com/algolia/docsearch/issues/1260
document.getElementsByClassName('DocSearch DocSearch-Button')[0]?.addEventListener('click', function (event) {
document.querySelectorAll('.js-docsearch-anchor').forEach((element) => {
element.parentNode.removeChild(element);
});
const input = document.createElement('input')
input.setAttribute('type', 'text')
const div = document.createElement('div');
div.appendChild(input);
div.classList.add('fixed', 'js-docsearch-anchor');
document.body.appendChild(div);
});
// Without this CMD+K would open one modal per visited page with the search.
// Docsearch does not support 'destroy', so we need to hack it.
document.addEventListener('keydown', function (event) {
if (event.key === 'k' && event.metaKey) {
event.stopPropagation();
event.preventDefault();
document.getElementsByClassName('DocSearch DocSearch-Button')[0]?.click();
}
});
}
loadDocsearch();
//]]>
</script>
</div>
</div>
</div>
</nav>
</div>
<div class='hidden absolute pointer-events-none top-0 bottom-0 right-0 bg-linear-to-l w-28 from-[#0B0C14] via-[#0B0C14] min-[650px]:block'></div>
</header>
<div class='bg-white dark:bg-[#0B0C14]'>
<main>
<div class='dark bg-primary-hero'>
<div class='mx-auto pt-4 pb-8 px-7 max-w-[1130px]'>
<a class='text-base text-[#C9D3EE]' href='/community/guides/incident-management/'>
<svg class='inline mr-2 -mt-[2px] w-4 h-4 inline' style='--currentColor: currentColor;stroke-width:2.25;'><use href='/assets/icons/heroicons_v2/outline/arrow-left-0267a460.svg#root' /></svg>
Back to Incident management guides
</a>
<div class='pt-10 md:pt-16 lg:pt-20'>
<h1 class='font-helveticaDisplay font-bold text-center text-white overflow-hidden text-ellipsis mx-auto text-[36px] md:text-[48px] lg:text-[54px] leading-[120%] max-w-[640px]'>
What Is Incident Management? Beginner’s Guide
</h1>
<div class='mt-4 flex justify-center text-base flex-wrap'>
<a class="px-[10px] py-[2px] mr-2 mt-2 rounded-lg bg-white/[0.04] hover:bg-white/[0.05] border border-white/[0.05] text-white whitespace-nowrap" href="/tag/incident-management?utm_content&amp;utm_medium=guides&amp;utm_source=community&amp;utm_term=what-is-incident-management">Incident Management</a>
</div>
<div class='mt-10 md:mt-16 mt-20 text-center'>
<div class='text-white'>Jenda Tovarys</div>
<div class='mt-1 uppercase whitespace-nowrap text-xs font-medium text-neutral-300 tracking-[1.56px]'>
Updated on September 15, 2025
</div>
</div>
</div>
</div>
</div>
<div class='container mx-auto py-8 lg:py-16 max-w-[1130px]'>
<div class='lg:flex' data-controller='toc'>
<div class='grow xl:flex'>
<div class='sticky hidden xl:block mr-12 shrink-0 w-[190px]' data-toc-target='toc'>
<div class='text-base text-secondary sticky scroll-smooth overflow-y-auto pretty-scrollbars max-h-screen top-[100px] pb-40'>
<h6 class='font-bold text-neutral-800 dark:text-white'>Contents</h6>
<div class='table-of-contents flat'>
<ul>
<li>
<a href="#why-is-incident-management-important">Why is incident management important?</a>
</li>
<li>
<a href="#steps-of-the-incident-management-process">Steps of the incident management process</a>
</li>
<li>
<a href="#1-detecting-the-incident">1. Detecting the incident</a>
</li>
<li>
<a href="#2-communicating-with-stakeholders">2. Communicating with stakeholders</a>
</li>
<li>
<a href="#3-resolving-the-incident">3. Resolving the incident</a>
</li>
<li>
<a href="#4-writing-postmortems">4. Writing postmortems</a>
</li>
<li>
<a href="#what-tools-to-use-for-incident-management">What tools to use for incident management?</a>
</li>
</ul>
</div>
</div>
</div>
<div class='grow shrink-0 prose max-w-[616px]' data-controller='body' data-toc-target='content'>
<p><strong>Incident management</strong> is the process used by developer and IT operations teams
to respond to system failures (incidents) and restore normal service operations
as quickly as possible.</p><p><strong>Incident</strong> is a broad term describing any event that causes either a decrease
in the quality or complete disruption of a given service. Incidents usually
require immediate response of the development or operations team, often referred
to as <a rel="" target="" class="" href="/community/guides/incident-management/on-call-scheduling/">on-call</a> or response teams in incident management.</p><p><a rel="" target="" class="" href="https://betterstack.com/better-uptime/"><div data-controller='lightbox' class='relative cursor-pointer'>
<figure data-action='click->lightbox#open' data-lightbox-target='picture'>
<picture>
<source media="(max-width: 800px)" data-srcset="https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/md1x 1x, https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/md2x 2x" width=500 height=307 />
<source media="(min-width: 801px)" data-srcset="https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/lg1x 1x, https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/lg2x 2x" width=650 height=400 />
<img alt="Better Uptime Dashboard" width="1247" height="768" class="w-full lazyload" data-src="https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/orig" src="" />
</picture>
</figure>
<figure class='hidden lightbox' data-lightbox-target='container'>
<img alt="Better Uptime Dashboard" width="1247" height="768" loading="lazy" data-action="click-&gt;lightbox#close" data-lightbox-target="img" src="https://imagedelivery.betterstackcdn.com/xZXo0QFi-1_4Zimer-T0XQ/a0d98078-b9ad-4614-434d-4bcc76455200/orig" />
</figure>
</div>
</a></p>
<article class='callout flex py-[13px] pl-4 pr-5 my-8 rounded-lg border text-brand-primary-200 dark:text-brand-primary-100 marker:text-brand-primary-200 border-[#BECCFB]/80 dark:border-brand-primary-100/30 bg-brand-primary-100/10'>
<div class='shrink-0 not-prose mr-3 -mt-1'><svg class='text-brand-primary-200 dark:text-brand-primary-100 w-4 h-4 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/mini/information-circle-fbffd64b.svg#root' /></svg></div>
<div class='content'><h3>🔮 Want to collaborate on solving incidents from one place?</h3>
<p>Go to <a href="https://betterstack.com/better-uptime/" target="_blank">Better Uptime</a> and start managing your incidents in 2 minutes.</p>
</div>
</article>
<h2 id="why-is-incident-management-important">Why is incident management important?</h2>
<p>Incident management is an absolutely vital process for any organization that
aims to provide reliable service to its customers. Service outages usually come
with significant costs to the business, and teams need to have a solid strategy
to deal with them efficiently.</p>
<article class='callout flex py-[13px] pl-4 pr-5 my-8 rounded-lg border text-brand-primary-200 dark:text-brand-primary-100 marker:text-brand-primary-200 border-[#BECCFB]/80 dark:border-brand-primary-100/30 bg-brand-primary-100/10'>
<div class='shrink-0 not-prose mr-3 -mt-1'><svg class='text-brand-primary-200 dark:text-brand-primary-100 w-4 h-4 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/mini/information-circle-fbffd64b.svg#root' /></svg></div>
<div class='content'><h3>🔻 Real cost of downtime</h3>
<p>Facebook downtimes in the last few years are a great example of just how big of an impact outages have. In 2019 Facebook platform didn't work for 14 hours. The cost of this incident is estimated to be around <a href="https://www.managementstudyguide.com/economic-impact-of-facebook-outage.htm" target="_blank">$90 million</a>. In another downtime in 2021, the cost amounted to <a href="https://www.forbes.com/sites/abrambrown/2021/10/05/facebook-outage-lost-revenue/?sh=17709351231a" target="_blank">$65 million</a> in just a few hours.</p>
</div>
</article>
<p>Incidents come at great costs, be it directly in the form of loss of potential
revenue and loss of current customers or indirectly in the form of degradation
of the company’s public image or increased stress for employees.</p><p>Well-crafted incident management process minimizes these negative effects and
allows teams to:</p>
<ul>
<li><strong>Detect and resolve</strong> incidents quickly</li>
<li><strong>Communicate</strong> incidents to customers and stakeholders and minimize any
negative effects</li>
<li><strong>Collaborate</strong> effectively to solve incidents at hand and decrease any
barriers in the way</li>
<li><strong>Learn</strong> from past incidents to continuously improve and build more reliable
systems</li>
</ul>
<h2 id="steps-of-the-incident-management-process">Steps of the incident management process</h2>
<p>Incident management processes tend to be quite different depending on the type
of the company. As different companies use different tools and systems, have
different customers and stakeholders, there is no one fits all process.</p><p>Companies with software products generally tend to have a more standardized
approach to incident management with the steps as follows:</p>
<h2 id="1-detecting-the-incident">1. Detecting the incident</h2>
<p>The founding stone of any incident management is a centralized source of truth,
which integrates different monitoring and reporting tools into one easily
navigable place. <a rel="" target="" class="" href="/community/comparisons/incident-management-tools/">Incident management tools</a> like
<a rel="" target="" class="" href="https://betterstack.com/better-uptime">Better Uptime</a> allow for on-call, support, and other
teams to collaborate in detecting, communicating, and solving incidents.</p><p>There are two ways a new incident can be started within those incident
management solutions. First is fully automatic via a monitoring integration, for
example, an <a rel="" target="" class="" href="/community/guides/monitoring/what-is-uptime-monitoring/">uptime monitor</a> creating an incident
when it spots that homepage is unavailable. The second is a manual report. For
example when a customer submits a support ticket that their profile is not
loading correctly.</p>
<h3 id="automatic-monitoring-for-incidents">Automatic monitoring for incidents</h3>
<p>In the case of automatically reported incidents, the incident management
solution creates an incident once a monitor reports an error. Once the incident
is logged, it needs to be communicated to the team - this is done by alerting
the current on-call team member.</p><p>Alerts usually come in the form of automated phone calls for major incidents.
Slack &amp; Microsoft teams and email alerts are used for less mission-critical
incidents. To make for easier communication of incidents, <a rel="" target="" class="" href="/community/guides/incident-management/severity-levels/">severity levels</a> are often used when describing incidents.</p>
<h3 id="manually-reported-incidents">Manually reported incidents</h3>
<p>For manually reported incidents, the on-call person is alerted by other team
members. Those are often on support or customer success teams and will pass on
the incident report from customers.</p><p>Support and other teams responsible for reporting manual incidents usually
submit their incident reports either via calling the on-call number (a static
number that automatically reroutes the call to the current on-call person) or by
filling in an incident form (usually on a dedicated sharable URL).</p><p>Before alerting the on-call team with any manually reported incident, it’s
necessary always to check whether the issue is really due to a system failure or
whether there might be a misconfiguration on the client side. This saves the
on-call team time and prevents alert fatigue.</p>
<h2 id="2-communicating-with-stakeholders">2. Communicating with stakeholders</h2>
<p>After an incident is detected and communicated to the respective on-call person,
it’s necessary to communicate it both internally and externally. Incident
communication is not just acknowledging that an incident exists but also posting
any new findings that occur during the investigation and resolution of the
incident. The communication and incident resolution processes work very much in
tandem.</p><p>The best practice is to center any incident communication around a <a rel="" target="" class="" href="/community/guides/incident-management/what-is-status-page/">status
page</a>, as it allows for easy internal (using
password-protected pages with email subscriptions) as well as external
communications (using a public status page).</p>
<h3 id="internal-communication">Internal communication</h3>
<p>Internal communication includes any teams within the company that might be
influenced by the incident. It can include sales, which might be giving demos of
non-functioning products, or marketing spending on online ads bringing traffic
to a landing page that is down.</p><p>The goal of internal incident communication is to align company operations so
that the company’s resources loss is minimized by the incident.</p>
<h3 id="external-communication">External communication</h3>
<p>External communication of incidents is helpful for <a rel="" target="" class="" href="/community/guides/incident-management/what-is-status-page/">multiple
reasons</a>; the two main ones are saving customer support
resources and maintaining trust with customers.</p><p>By establishing a company status page as the first place to look for any
incident information and by communicating clearly what is going on during each
incident, customers might restrain from bombarding customer support with
questions. And when done properly, customers might even appreciate the honesty
of your downtime communication.</p>
<h2 id="3-resolving-the-incident">3. Resolving the incident</h2>
<p>After an incident is detected and communicated to the respective on-call person,
the investigation and resolution process can start. This process follows along
the lines of the scientific method:</p>
<ul>
<li>Observing what is happening and confirming that the observations are correct</li>
<li>Exploring hypotheses about why is it happening</li>
<li>Preparing and executing experiments that either prove or disprove the
hypothesis</li>
<li>Repeating until the incident is resolved</li>
</ul>
<p>In an ideal scenario, the first on-call person is also the person who is able to
solve the given incident. According to the practice of “you build it, you run
it” the developers being on-call should be the same people who built the
software. Those team members are generally more able to solve any issues as they
have a much better understanding of the system.</p><p>In some cases however the current on-call team members are unable to resolve the
issue without other team members. In that case, it’s necessary to escalate the
incident to a relevant person, usually more senior or with specific expertise in
the affected system.</p>
<h3 id="response-team-crisis-room">Response team crisis room</h3>
<p>In case of incidents when multiple people are needed to collaborate, it’s
necessary to set up team communication channels. It’s best to use a tool that is
normally used within the company so that everyone is familiar with it. Tools
like Slack, Microsoft Teams, or Zoom are a great fit.</p><p>Chat tools like Slack are useful as they create a timestamped incident timeline,
which can be later revisited for postmortem analysis and learnings as well as
for incident management KPIs (key performance indicators) like
<a rel="" target="" class="" href="/community/guides/incident-management/mttr-and-other-incident-metrics/">MTTR</a>.</p><p>Video call tools like Zoom are great because they allow for the fastest
communication between team members while also creating a shared mental picture
of the situation.</p><p>By having the whole incident response team on the same call, troubleshooting can
be done in real-time, keeping everyone on the same page and allowing for any
brainstorming of ideas as well.</p>
<h2 id="4-writing-postmortems">4. Writing postmortems</h2>
<p>Once the incident is resolved, it’s necessary to do a root causes analysis and
find out why did it happen and what can be done, so it doesn&#39;t occur in the
future.</p><p>Postmortems should be written for all major incidents. They should include a
detailed timeline of what happened and when. It’s important to include
timestamps of:</p>
<ul>
<li>Time when the first alert was received</li>
<li>Time when the first incident communication went out (internal and external)</li>
<li>Times when any status page updates were posted</li>
<li>Times when remediations run (new deployments etc.)</li>
<li>Time the incident was resolved</li>
</ul>
<p>They should also include any learnings that came from the incident and what
changes can be applied to the system going forward to make it more resilient to
similar incidents.</p>
<h2 id="what-tools-to-use-for-incident-management">What tools to use for incident management?</h2>
<ul>
<li><strong>Monitoring</strong> - to know that something is wrong with your system, you need to
have <a rel="" target="" class="" href="/community/comparisons/website-monitoring-tools/">monitoring solutions</a> in place. Those can be
<a rel="" target="" class="" href="/community/comparisons/open-source-website-monitoring/">open-source tools</a> like
<a rel="" target="_blank" class="" href="https://prometheus.io/">Prometheus<span class="whitespace-nowrap"><svg class='relative -top-[1px] ml-1 w-4 h-4 inline' style='--currentColor: currentColor;'><use href='/assets/icons/heroicons_v2/mini/arrow-top-right-on-square-22902095.svg#root' /></svg></span></a> or commercial ones like Better Uptime.</li>
<li><strong>Incident tracking</strong> - to keep track of incidents across multiple services,
it’s great to have an incident management tool that will serve as a single
centralized source of truth.</li>
<li><strong>On-call scheduling and alerting</strong> - to always alert the right person on your
team, you need a reliable on-call alerting, ideally with scheduling
capabilities so you can practice on-call rotations. Most incident management
tools like Better Uptime have this capability.</li>
<li><strong>Chat room</strong> - to keep a timestamped record of what was going on during an
incident and have a real-time chat platform during the downtime - Slack or
Microsoft Teams come in handy.</li>
<li><strong>Video call</strong> - to host a fast response call with all the team members
involved, video call tools like Zoom or Around are vital.</li>
<li><strong>Status page</strong> - to communicate <a rel="" target="" class="" href="/community/guides/incident-management/incident-templates/">incident updates</a> both
externally and internally.</li>
<li><strong>Documentation tool</strong> - to centralize postmortem and use them as a learning
resource in the future.</li>
</ul>
<div class='docsearch-ignore'>
<div class='mt-11 text-center'>
<div class='text-secondary mt-6'>
Got an article suggestion?
<a class="underline! text-secondary!" href="mailto:hello@betterstack.com?subject=Suggestion%20for%20What%20Is%20Incident%20Management%3F%20Beginner%E2%80%99s%20Guide&amp;body=">Let us know</a>
</div>
<div class='flex justify-center items-center space-x-3 mt-4'>
<a href='https://twitter.com/share?ref_src=twsrc%5Etfw&amp;url=https://betterstack.com/community/guides/incident-management/what-is-incident-management/&amp;text=What+Is+Incident+Management%3F+Beginner%E2%80%99s+Guide+%7C+Better+Stack+Community&amp;via=betterstackhq' rel='nofollow noopener' target='_blank'>
<svg width='16' height='16' alt='Share on Twitter' class='rounded-none! m-0!' style='--currentColor: currentColor;'><use href='/assets/articles/icons/twitter-47698571.svg#root' /></svg>
</a>
<a href='https://www.facebook.com/sharer/sharer.php?u=https://betterstack.com/community/guides/incident-management/what-is-incident-management/' rel='nofollow noopener' target='_blank'>
<svg width='16' height='16' alt='Share on Facebook' class='rounded-none! m-0!' style='--currentColor: currentColor;'><use href='/assets/articles/icons/facebook-901b4e3f.svg#root' /></svg>
</a>
<a href='mailto:?subject=What%20Is%20Incident%20Management%3F%20Beginner%E2%80%99s%20Guide&amp;body=https%3A%2F%2Fbetterstack.com%2Fcommunity%2Fguides%2Fincident-management%2Fwhat-is-incident-management%2F'>
<svg width='16' height='16' alt='Share via e-mail' class='rounded-none! m-0!' style='--currentColor: currentColor;'><use href='/assets/articles/icons/mail-0ac83b4d.svg#root' /></svg>
</a>
</div>
</div>
<div class='mt-20 text-center heading-h5'>Next article</div>
<a class='mt-5 rounded-lg flex bg-neutral-40 dark:bg-[#171824] hover:no-underline!' href='/community/guides/incident-management/on-call-scheduling/'>
<div class='p-5 grow'>
<div class='text-xl font-bold text-neutral-800 dark:text-white'>How to Create a Developer-Friendly On-Call Schedule in 7 steps</div>
<div class='mt-2 text-secondary'>Trying to build a new on-call schedule or just fix an existing one that doesn&#39;t work? Here is how to do it the right way.</div>
</div>
<div class='p-5 flex items-center'>→</div>
</a>
<div class='mt-24 flex flex-col items-center'>
<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' rel='nofollow noopener' target='_blank'>
<img alt="Licensed under CC-BY-NC-SA" class="m-0 lazyload" width="89" height="31" data-src="https://betterstack.com/assets/articles/cc-by-nc-sa-198c1f75.png" src="" />
</a>
<p class='mt-5 text-center text-secondary max-w-[365px]'>This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.</p>
</div>
</div>
</div>
</div>
<div class='hidden lg:block ml-12 xl:-mr-8 shrink-0 w-[205px]'>
<ol class='-mt-2 mb-7 text-base overflow-y-auto pb-24'>
<li class='text-secondary' data-controller='collapse'>
<div class='flex space-x-2 text-neutral-800 dark:text-white open py-1 side-menu-item cursor-pointer font-bold border-b border-neutral-50 dark:border-neutral-800' data-action='click-&gt;collapse#toggle'>
<a class='grow py-2' href=''>Incident response and on-call</a>
</div>
<ol class='mb-4' data-collapse-target='content'>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a aria-current='page' class='grow py-2 text-brand-primary-200 dark:text-brand-primary-100' href='/community/guides/incident-management/what-is-incident-management/'>What Is Incident Management? Beginner’s Guide</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/on-call-scheduling/'>How to Create a Developer-Friendly On-Call Schedule in 7 steps</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/on-call-templates/'>4 On-Call Schedule Templates (With Benefits and Downsides)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/on-call-pay/'> On-call Compensation Models (and How to Solve On-Call Pay)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/escalation-policies/'>How to Design Escalation Policies (for Easy Incident Management)?</a>
</div>
</li>
</ol>
</li>
<li class='text-secondary' data-controller='collapse'>
<div class='flex space-x-2 py-1 side-menu-item cursor-pointer font-bold border-b border-neutral-50 dark:border-neutral-800' data-action='click-&gt;collapse#toggle'>
<a class='grow py-2' href=''>Incident communication</a>
</div>
<ol class='mb-4 hidden' data-collapse-target='content'>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/what-is-status-page/'>What Is a Status Page? (And 5 Benefits of Getting One)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/why-are-status-pages-important/'>Why are status pages important: 5 Reasons (And How to Get Started)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/incident-templates/'>4 Copy-Pastable Incident Templates for Status Pages</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/status-page-examples/'>7 Great Status Page Examples to Learn From</a>
</div>
</li>
</ol>
</li>
<li class='text-secondary' data-controller='collapse'>
<div class='flex space-x-2 py-1 side-menu-item cursor-pointer font-bold border-b border-neutral-50 dark:border-neutral-800' data-action='click-&gt;collapse#toggle'>
<a class='grow py-2' href=''>Incident metrics</a>
</div>
<ol class='mb-4 hidden' data-collapse-target='content'>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/mttr-and-other-incident-metrics/'>Explained: All Meanings of MTTR and Other Incident Metrics</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/severity-levels/'>What Are Incident Severity Levels? (SEV1 to SEV3 explained)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/availability-table/'>Availability Table (90%-99.999% Uptime)</a>
</div>
</li>
<li class='text-secondary'>
<div class='flex space-x-2'>
<a class='grow py-2' href='/community/guides/incident-management/sla-vs-slo-vs-sli/'>SLA vs. SLO vs. SLI: What’s the Difference? (Plus 5 Tips to Make a Great SLA)</a>
</div>
</li>
</ol>
</li>
</ol>
</div>
</div>
</div>
</main>
</div>
<div class='dark'>
<nav class='bg-white text-base border-t dark:bg-[#0B0C14] border-neutral-300/10 text-[#363D4E] dark:text-neutral-200'>
<div class='mx-auto px-5 md:px-10 pt-8 max-lg:pb-8 lg:pt-14 md:flex max-w-[1110px]'>
<div class='flex-2 lg:grow flex gap-5'>
<div class='flex-1 lg:flex-2 flex flex-col lg:flex-row'>
<div class='lg:mr-12 flex-1 lg:min-w-[200px]'>
<div class='mb-12'>
<div class='font-medium text-black dark:text-white'>Solutions</div>
<a class="inline-block -mx-1 px-1 mt-3" href="/ai-sre">AI SRE</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/tracing">OpenTelemetry tracing</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/telemetry">Log management</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/infrastructure-monitoring">Infrastructure monitoring</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/error-tracking">Error tracking</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/real-user-monitoring">Real user monitoring</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/incident-management">Incident management</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/uptime">Uptime monitoring</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/status-page">Status page</a>
</div>
</div>
<div class='flex-1'>
<div class='mb-12 lg:hidden'>
<div class='font-medium text-black dark:text-white'>Company</div>
<a class="inline-block -mx-1 px-1 mt-3" href="/careers">Work at Better Stack</a>
<br class='lg:hidden'>
<a class="inline-block -mx-1 px-1 mt-3" href="/careers/engineering">Engineering</a>
<br class='lg:hidden'>
<a class="inline-block -mx-1 px-1 mt-3" href="/security">Security</a>
</div>
<div class='mb-12 hidden lg:block'>
<div class='font-medium text-black dark:text-white'>Resources</div>
<a class="inline-block -mx-1 px-1 mt-3 whitespace-nowrap" href="/help">Help &amp; Support</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="https://betterstack.com/docs/">Documentation</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/enterprise">Enterprise</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/integrations">Integrations</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/dashboards">Dashboards</a>
</div>
</div>
</div>
<div class='lg:ml-12 flex-1 flex flex-col'>
<div class='mb-12 hidden lg:flex flex-col items-start lg:min-w-[200px]'>
<div class='font-medium text-black dark:text-white'>Company</div>
<a class="inline-block -mx-1 px-1 mt-3" href="/careers">Work at Better Stack</a>
<br class='lg:hidden'>
<a class="inline-block -mx-1 px-1 mt-3" href="/careers/engineering">Engineering</a>
<br class='lg:hidden'>
<a class="inline-block -mx-1 px-1 mt-3" href="/security">Security</a>
</div>
<div class='mb-12 lg:hidden'>
<div class='font-medium text-black dark:text-white'>Resources</div>
<a class="inline-block -mx-1 px-1 mt-3 whitespace-nowrap" href="/help">Help &amp; Support</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="https://betterstack.com/docs/">Documentation</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/enterprise">Enterprise</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/integrations">Integrations</a>
<br>
<a class="inline-block -mx-1 px-1 mt-3" href="/dashboards">Dashboards</a>
</div>
</div>
</div>
<div class='md:ml-12 flex-1 flex flex-col items-start grow max-w-[450px]'>
<div class='md:mb-12'>
<div class='font-medium text-black dark:text-white'>Community</div>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/guides/incident-management/what-is-incident-management/">What Is Incident Management? Beginner’s Guide</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/datadog-log-management-alternatives/">Best Datadog Alternatives to Consider in 2026</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/free-status-page-tools/">8 Best Free &amp; Open Source Status Page Tools in 2026</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/sentry-alternatives/">13 Best Sentry Alternatives in 2026</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/grafana-alternatives/">15 Best Grafana Alternatives in 2026</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/incident-io-alternative/">The 10 Best Incident.io Alternatives in 2026</a>
<a class="inline-block -mx-1 px-1 mt-4" href="https://betterstack.com/community/comparisons/incident-management-tools/">5 Most Used Incident Management Tools</a>
</div>
</div>
</div>
</nav>
<footer class='bg-[#F3F4F7] dark:bg-[#0B0C14]'>
<div class='mx-auto text-base lg:px-5 max-w-[1110px] text-[#363D4E] dark:text-neutral-200'>
<div class='px-5 lg:px-2 lg:mx-3 pt-7 flex flex-col lg:flex-row justify-between items-center lg:items-end border-t border-neutral-300/10'>
<div>
<svg width='154' height='21' alt='' class='text-black dark:text-white scale-75 lg:scale-100' style='--currentColor: currentColor;'><use href='/assets/v2/better-stack-logo-f5a76de1.svg#root' /></svg>
<p class='mt-3 hidden lg:block max-w-[342px]'>
30x cheaper than Datadog. Predictable pricing. Exceptional customer support.
</p>
</div>
<div class='flex items-center gap-6 whitespace-nowrap'>
<a class="hidden lg:block -mx-1 px-1" href="tel:+1 (628) 900-3830">+1 (628) 900-3830</a>
<a class="hidden lg:block -mx-1 px-1" href="mailto:hello@betterstack.com">hello@betterstack.com</a>
<div class='hidden lg:block h-4 border-l border-neutral-300/10'></div>
<div class='hidden lg:flex'><div class='flex gap-4 text-neutral-300'>
<a aria-label='Better Stack on Instagram' href='https://www.instagram.com/betterstackhq/' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/instagram-d9614e51.svg#root' /></svg></a>
<a aria-label='Better Stack on TikTok' href='https://www.tiktok.com/@betterstack' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/tiktok-ad9068a9.svg#root' /></svg></a>
<a aria-label='Better Stack on LinkedIn' href='https://www.linkedin.com/company/betterstack' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/linkedin-143ab64c.svg#root' /></svg></a>
<a aria-label='Better Stack on Twitter' href='https://twitter.com/betterstackhq' rel='nofollow noopener' target='_blank'><svg width='16' height='16' style='--currentColor: currentColor;'><use href='/assets/v2/twitter-4512e356.svg#root' /></svg></a>
<a aria-label='Better Stack on Github' href='https://github.com/BetterStackHQ/' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/github-8e0718fe.svg#root' /></svg></a>
<a aria-label='Better Stack on YouTube' href='https://www.youtube.com/@betterstack' rel='nofollow noopener' target='_blank'><svg width='22' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/youtube-72dade15.svg#root' /></svg></a>
</div>
</div>
</div>
</div>
<div class='px-5 lg:px-2 lg:mx-3 mt-5 py-3 lg:border-t flex flex-col lg:flex-row justify-between items-center border-neutral-300/10 text-[12px] leading-[18px]'>
<div class='flex items-center gap-6 whitespace-nowrap dark:text-neutral-300'>
<a class="-mx-1 px-1" href="/terms">Terms of Use</a>
<a class="-mx-1 px-1" href="/privacy">Privacy Policy</a>
<a class="-mx-1 px-1" href="/dpa">GDPR</a>
<a class='hidden sm:block -mx-1 px-1' href='https://status.betterstack.com/' target='_blank'>
<svg width='14' height='15' alt='All services are up' class='mr-1 hidden lg:inline' style='--currentColor: currentColor;'><use href='/assets/v2/status-green-4e79760e.svg#root' /></svg>
System status
</a>
</div>
<div class='mt-8 mb-2 flex lg:hidden'><div class='flex gap-4 text-neutral-300'>
<a aria-label='Better Stack on Instagram' href='https://www.instagram.com/betterstackhq/' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/instagram-d9614e51.svg#root' /></svg></a>
<a aria-label='Better Stack on TikTok' href='https://www.tiktok.com/@betterstack' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/tiktok-ad9068a9.svg#root' /></svg></a>
<a aria-label='Better Stack on LinkedIn' href='https://www.linkedin.com/company/betterstack' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/linkedin-143ab64c.svg#root' /></svg></a>
<a aria-label='Better Stack on Twitter' href='https://twitter.com/betterstackhq' rel='nofollow noopener' target='_blank'><svg width='16' height='16' style='--currentColor: currentColor;'><use href='/assets/v2/twitter-4512e356.svg#root' /></svg></a>
<a aria-label='Better Stack on Github' href='https://github.com/BetterStackHQ/' rel='nofollow noopener' target='_blank'><svg width='16' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/github-8e0718fe.svg#root' /></svg></a>
<a aria-label='Better Stack on YouTube' href='https://www.youtube.com/@betterstack' rel='nofollow noopener' target='_blank'><svg width='22' height='17' style='--currentColor: currentColor;'><use href='/assets/v2/youtube-72dade15.svg#root' /></svg></a>
</div>
</div>
<div class='flex items-center text-neutral-300'>
&copy; 2026 Better Stack, Inc.
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="root" fill="none" height="15" viewBox="0 0 14 15" width="14" class="ml-2 transition hover:-rotate-[15deg] hidden lg:inline"><mask id="a" fill="#000" height="14" maskUnits="userSpaceOnUse" width="14" x=".84082" y=".910156"><path d="m.84082.910156h14v14h-14z" fill="#fff"></path><path clip-rule="evenodd" d="m12.4541 1.91016h-4.37651v.54686h-.54823v.54771 1.85936 1.2038h-.54617v.54725h-.87535v.54642h-.87576v.54777h-.54616v.54551h-.0011-.54589-.54734v-.65488h-.54706v2.84474h.54616v.6549h.54824v.547h.54699v.4392.6557.5469.4376.0003h.65647v-.0003h.43765v-.4376h-.43765v-.5469h.43765v-.6557h.54706v-.5478h.65609v.5472h.43768v.1982h1.09412v-.4377h-.54709v-.8541h.54701v-.5472h.54712v-.87494h.54616v-1.86076h.65821v.43832h.547v-.54706h-.0011v-.43832h-1.20411v-1.2027h.65671v-1.09465h2.1892v-.0002h.5459v-2.40707h-.5459zm-9.41064 5.25148h-.54617v-1.20358h-.65647v3.50119h.54616v.43769h.65648zm7.22294-1.74985h1.6412v.54706h-1.6412zm-1.62526-2.63729h.00042v-.00005h.80045v.00013h.26677v1.06726h-.26682v-.00107h-.8004v-.26582h-.00042zm.26682.79945h.534v-.53268h-.534z" fill="#000" fill-rule="evenodd"></path></mask><path d="m8.07759 1.91016v-.952682h-.95268v.952682zm4.37651 0h.9527v-.952682h-.9527zm-4.37651.54686v.95268h.95268v-.95268zm-.54823 0v-.95268h-.95268v.95268zm0 3.61087v.95268h.95268v-.95268zm-.54617 0v-.95268h-.95267v.95268zm0 .54725v.95268h.95268v-.95268zm-.87535 0v-.95268h-.95267v.95268zm0 .54642v.95268h.95268v-.95268zm-.87576 0v-.95268h-.95268v.95268zm0 .54777v.95268h.95268v-.95268zm-.54616 0v-.95268h-.95268v.95268zm0 .54551v.95268h.95268v-.95268zm-1.09433 0h-.95268v.95268h.95268zm0-.65488h.95268v-.95268h-.95268zm-.54706 0v-.95268h-.95268v.95268zm0 2.84474h-.95268v.9527h.95268zm.54616 0h.95268v-.9527h-.95268zm0 .6549h-.95268v.9526h.95268zm.54824 0h.95268v-.9527h-.95268zm0 .547h-.95268v.9527h.95268zm.54699 0h.95268v-.9527h-.95268zm0 2.0797h-.95268v.9527h.95268zm.65647 0v.9527h.95268v-.9527zm0-.0003v-.9526h-.95268v.9526zm.43765 0v.9527h.95268v-.9527zm0-.4376h.95268v-.9527h-.95268zm-.43765 0h-.95268v.9527h.95268zm0-.5469v-.9527h-.95268v.9527zm.43765 0v.9527h.95268v-.9527zm0-.6557v-.9527h-.95268v.9527zm.54706 0v.9527h.95268v-.9527zm0-.5478v-.9526h-.95268v.9526zm.65609 0h.95268v-.9526h-.95268zm0 .5472h-.95267v.9527h.95267zm.43768 0h.95268v-.9527h-.95268zm0 .1982h-.95268v.9526h.95268zm1.09412 0v.9526h.95268v-.9526zm0-.4377h.95268v-.9527h-.95268zm-.54709 0h-.95267v.9527h.95267zm0-.8541v-.9527h-.95267v.9527zm.54701 0v.9527h.95268v-.9527zm0-.5472v-.9527h-.95268v.9527zm.54712 0v.9527h.95267v-.9527zm0-.87494v-.95267h-.95268v.95267zm.54616 0v.95264h.95271v-.95264zm0-1.86076v-.95268h-.95268v.95268zm.65821 0h.9527v-.95268h-.9527zm0 .43832h-.9527v.95268h.9527zm.547 0v.95268h.9527v-.95268zm0-.54706h.9527v-.95268h-.9527zm-.0011 0h-.95264v.95268h.95264zm0-.43832h.9527v-.95268h-.9527zm-1.20411 0h-.95268v.95268h.95268zm0-1.2027v-.95268h-.95268v.95268zm.65671 0v.95268h.9527v-.95268zm0-1.09465v-.95268h-.95267v.95268zm2.1892 0v.95267h.9527v-.95267zm0-.0002v-.95268h-.9527v.95268zm.5459 0v.95267h.9526v-.95267zm0-2.40707h.9526v-.95268h-.9526zm-.5459 0h-.9527v.95268h.9527zm-9.95681 4.70462h-.95268v.95268h.95268zm.54617 0h.95267v-.95268h-.95267zm-.54617-1.20358h.95268v-.95268h-.95268zm-.65647 0v-.95268h-.952678v.95268zm0 3.50119h-.952678v.95265h.952678zm.54616 0h.95268v-.95268h-.95268zm0 .43769h-.95268v.95266h.95268zm.65648 0v.95266h.95267v-.95266zm8.86414-4.48515h.9526v-.95268h-.9526zm-1.6412 0v-.95268h-.9527v.95268zm1.6412.54706v.95268h.9526v-.95268zm-1.6412 0h-.9527v.95268h.9527zm-1.62484-3.18435v.95268h.95268v-.95268zm-.00042 0v-.95268h-.95267v.95268zm.00042-.00005v-.95268h-.95268v.95268zm.80045 0h.95269v-.95268h-.95269zm0 .00013h-.95268v.95268h.95268zm.26677 0h.95272v-.95268h-.95272zm0 1.06726v.95268h.95272v-.95268zm-.26682 0h-.95268v.95268h.95268zm0-.00107h.95264v-.95268h-.95264zm-.8004 0h-.95268v.95267h.95268zm0-.26582h.95268v-.95268h-.95268zm-.00042 0h-.95267v.95268h.95267zm.26682-.001h-.95268v.95268h.95268zm.534 0v.95268h.95264v-.95268zm0-.53268h.95264v-.95268h-.95264zm-.534 0v-.95268h-.95268v.95268zm-.83037-.17844h4.37651v-1.905352h-4.37651zm.95268-.40581v-.54686h-1.90536v.54686zm-1.50091.95268h.54823v-1.90536h-.54823zm.95268-.40497v-.54771h-1.90536v.54771zm0 1.85936v-1.85936h-1.90536v1.85936zm0 1.2038v-1.2038h-1.90536v1.2038zm-1.49885.95268h.54617v-1.90536h-.54617zm.95268-.40543v-.54725h-1.90535v.54725zm-1.82803.95268h.87535v-1.90536h-.87535zm.95268-.40626v-.54642h-1.90535v.54642zm-1.82844.95268h.87576v-1.90536h-.87576zm.95268-.40491v-.54777h-1.90536v.54777zm-1.49884.95268h.54616v-1.90536h-.54616zm.95268-.40717v-.54551h-1.90536v.54551zm-.95378.95268h.0011v-1.90535h-.0011zm-.54589 0h.54589v-1.90535h-.54589zm-.54734 0h.54734v-1.90535h-.54734zm-.95268-1.60756v.65488h1.90536v-.65488zm.40562.95268h.54706v-1.90536h-.54706zm.95268 1.89206v-2.84474h-1.90536v2.84474zm-.40652-.9527h-.54616v1.9054h.54616zm.95268 1.6076v-.6549h-1.90536v.6549zm-.40444-.9527h-.54824v1.9053h.54824zm.95268 1.4997v-.547h-1.90536v.547zm-.40569-.9527h-.54699v1.9054h.54699zm.95268 1.3919v-.4392h-1.90536v.4392zm0 .6557v-.6557h-1.90536v.6557zm0 .5469v-.5469h-1.90536v.5469zm0 .4376v-.4376h-1.90536v.4376zm0 .0003v-.0003h-1.90536v.0003zm-.29621-.9526h-.65647v1.9053h.65647zm-.95268.9523v.0003h1.90536v-.0003zm1.39033-.9526h-.43765v1.9053h.43765zm-.95268.515v.4376h1.90536v-.4376zm.51503.9527h.43765v-1.9054h-.43765zm-.95268-1.4996v.5469h1.90536v-.5469zm1.39033-.9527h-.43765v1.9054h.43765zm-.95268.297v.6557h1.90536v-.6557zm1.49974-.9527h-.54706v1.9054h.54706zm-.95268.4049v.5478h1.90536v-.5478zm1.60877-.9526h-.65609v1.9053h.65609zm.95268 1.4998v-.5472h-1.90535v.5472zm-.515-.9527h-.43768v1.9054h.43768zm.95268 1.1509v-.1982h-1.90536v.1982zm.14144-.9527h-1.09412v1.9053h1.09412zm-.95268.515v.4377h1.90536v-.4377zm.40559.9527h.54709v-1.9054h-.54709zm-.95267-1.8068v.8541h1.90535v-.8541zm1.49968-.9527h-.54701v1.9054h.54701zm-.95268.4055v.5472h1.90536v-.5472zm1.4998-.9527h-.54712v1.9054h.54712zm-.95268.07776v.87494h1.90535v-.87494zm1.49884-.95267h-.54616v1.90531h.54616zm-.95268-.90809v1.86076h1.90539v-1.86076zm1.61089-.95268h-.65821v1.90536h.65821zm.9527 1.391v-.43832h-1.9054v.43832zm-.4057-.95268h-.547v1.90536h.547zm-.95264.40562v.54706h1.90534v-.54706zm.95154.95268h.0011v-1.90536h-.0011zm-.95264-1.391v.43832h1.90534v-.43832zm-.25147.95268h1.20411v-1.90536h-1.20411zm-.95268-2.15538v1.2027h1.90539v-1.2027zm1.60939-.95268h-.65671v1.90536h.65671zm-.95267-.14197v1.09465h1.90537v-1.09465zm3.14187-.95268h-2.1892v1.90535h2.1892zm-.9527.95248v.0002h1.9054v-.0002zm1.4986-.95268h-.5459v1.90535h.5459zm-.9527-1.45439v2.40707h1.9053v-2.40707zm.4068.95268h.5459v-1.90536h-.5459zm-.9527-1.49954v.54686h1.9054v-.54686zm-9.00411 6.20416h.54617v-1.90536h-.54617zm-.95268-2.15626v1.20358h1.90536v-1.20358zm.29621.95268h.65647v-1.90536h-.65647zm.95268 2.54851v-3.50119h-1.905358v3.50119zm-.40652-.95268h-.54616v1.90533h.54616zm.95268 1.39037v-.43769h-1.90536v.43769zm-.2962-.95268h-.65648v1.90534h.65648zm-.95268-1.78262v2.7353h1.90535v-2.7353zm9.81682-2.70253h-1.6412v1.90536h1.6412zm.9526 1.49974v-.54706h-1.9053v.54706zm-2.5938.95268h1.6412v-1.90536h-1.6412zm-.9527-1.49974v.54706h1.9054v-.54706zm-.67214-3.58997h-.00042v1.90536h.00042zm-.95268.95263v.00005h1.90536v-.00005zm1.75313-.95268h-.80045v1.90536h.80045zm.95269.95281v-.00013h-1.90537v.00013zm-.68592-.95268h-.26677v1.90536h.26677zm.95272 2.01994v-1.06726h-1.9054v1.06726zm-1.21954.95268h.26682v-1.90536h-.26682zm-.95268-.95375v.00107h1.90532v-.00107zm.95268-.95268h-.8004v1.90535h.8004zm.15228.95268v-.26582h-1.90536v.26582zm-.9531.68686h.00042v-1.90536h-.00042zm-.95267-1.75313v.80045h1.90535v-.80045zm1.21949 1.75213h.534v-1.90536h-.534zm-.41868-1.48536v.53268h1.90532v-.53268zm.41868.95268h.534v-1.90536h-.534zm.95268-.42v-.53268h-1.90536v.53268z" fill="#646e87" mask="url(#a)"></path></svg>
</div>
</div>
</div>
</footer>
</div>
</div>
<div class='hidden fixed bottom-8 inset-x-2 max-w-lg p-5 border rounded-lg backdrop-blur-xl z-[100000000] md:left-8 md:right-auto border-[#939DB81A] bg-[#0F101A]' id='cookie-consent-banner'>
<h3 class='font-semibold text-white leading-normal text-[13px] md:text-md'>Please accept cookies</h3>
<p class='mt-2 font-normal text-neutral-200 leading-normal text-[13px] md:text-md'>
We use cookies to authenticate users, improve the product user experience, and for
<a target="_blank" rel="nofollow noopener" class="border-0 transition text-brand-primary-100 hover:text-neutral-100 focus-visible -m-1 p-1" href="https://business.safety.google/privacy/">personalized ads</a>.
<a target="_blank" class="border-0 transition text-brand-primary-100 hover:text-neutral-100 focus-visible -m-1 p-1" href="/privacy">Learn more.</a>
</p>
<div class='mt-4 flex flex-row gap-3'>
<button class='bg-gray-900 px-2 font-medium text-neutral-200 rounded py-0.5 text-[13px] border border-[#939DB833] bg-[#171926]' id='cookie-deny'>Deny</button>
<button class='bg-gray-900 px-2 font-medium text-neutral-200 rounded py-0.5 text-[13px] border border-[#939DB833] bg-[#171926]' id='cookie-accept-required'>Accept required</button>
<button class='ml-auto px-2 font-medium text-white rounded bg-button-gradient py-0.5 text-[13px]' id='cookie-accept-all'>Accept all</button>
</div>
</div>
<script src='https://cdnjs.betterstack.com/prismjs@1.29.0/components/prism-core.min.js'></script>
<script src='https://cdnjs.betterstack.com/prismjs@1.29.0/plugins/autoloader/prism-autoloader.min.js'></script>
<script src='https://cdnjs.betterstack.com/prismjs@1.29.0/plugins/keep-markup/prism-keep-markup.min.js'></script>
<script nonce="2c9588afc24c2f0312f695a91890f034">
//<![CDATA[
if (window.Prism) {
Prism.hooks.add('before-sanity-check', function (env) {
if (env.element.querySelector('.token')) env.code = '';
});
}
//]]>
</script></body>
</html>