CINXE.COM
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><meta name="twitter:card" content="summary_large_image" data-next-head=""/><meta name="twitter:site" content="@appsignal" data-next-head=""/><meta name="twitter:creator" content="@AppSignal" data-next-head=""/><meta href="//d201zbfblqcbtj.cloudfront.net" rel="dns-prefetch" data-next-head=""/><meta content="7 days" name="revisit-after" data-next-head=""/><title data-next-head="">Powerful Python monitoring | AppSignal APM</title><meta name="robots" content="index,follow" data-next-head=""/><meta name="description" content="AppSignal is a powerful Python APM that helps you optimize the performance of your Python applications." data-next-head=""/><meta property="og:title" content="Powerful Python monitoring" data-next-head=""/><meta property="og:description" content="AppSignal is a powerful Python APM that helps you optimize the performance of your Python applications." data-next-head=""/><meta property="og:url" content="https://www.appsignal.com/python" data-next-head=""/><meta property="og:type" content="website" data-next-head=""/><meta property="og:image" content="https://blog.appsignal.com/api/og?title=Powerful Python monitoring" data-next-head=""/><meta property="og:image:alt" content="Powerful Python monitoring" data-next-head=""/><meta property="og:image:type" content="image/jpeg" data-next-head=""/><meta property="og:image:width" content="1200" data-next-head=""/><meta property="og:image:height" content="628" data-next-head=""/><meta property="og:locale" content="en" data-next-head=""/><meta property="og:site_name" content="AppSignal" data-next-head=""/><link rel="canonical" href="https://www.appsignal.com/python" data-next-head=""/><link rel="icon" href="/assets/favicon/favicon.svg" type="image/svg+xml"/><link rel="mask-icon" href="/assets/favicon/favicon.svg" color="#29A575"/><link rel="apple-touch-icon" href="/assets/favicon/apple-touch-icon.png"/><link rel="manifest" href="/assets/favicon/manifest.webmanifest"/><link rel="preload" href="/fonts/rubik-v12-latin-regular.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><link rel="preload" href="/fonts/rubik-v12-latin-500.woff2" as="font" type="font/woff2" crossorigin="anonymous"/><meta name="ahrefs-site-verification" content="eaeabe5fcccf5783b1b0c574c52a3306af55ea1ab27e5eed6405393ed63feae6"/><link rel="preload" href="/_next/static/css/f70c1c9257986c7c.css" as="style"/><link rel="stylesheet" href="/_next/static/css/f70c1c9257986c7c.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-028de4d88b82baba.js" defer=""></script><script src="/_next/static/chunks/framework-1f8bbf35558976d0.js" defer=""></script><script src="/_next/static/chunks/main-872645af91bd57e9.js" defer=""></script><script src="/_next/static/chunks/pages/_app-38fc7b19ed66054a.js" defer=""></script><script src="/_next/static/chunks/2923-3106d5da30d19f66.js" defer=""></script><script src="/_next/static/chunks/4587-c8e2954a8f645bdf.js" defer=""></script><script src="/_next/static/chunks/7527-165de9d573ae0ee0.js" defer=""></script><script src="/_next/static/chunks/3606-49343d33a61362c7.js" defer=""></script><script src="/_next/static/chunks/9577-f0b657017a9be83b.js" defer=""></script><script src="/_next/static/chunks/pages/python-bec8bfebd06a04bd.js" defer=""></script><script src="/_next/static/mV-PJqh_dsOZivM1Kd8BQ/_buildManifest.js" defer=""></script><script src="/_next/static/mV-PJqh_dsOZivM1Kd8BQ/_ssgManifest.js" defer=""></script></head><body><div id="__next"><!--$--><!--/$--><div class="relative border-gray-800 font-rubik antialiased bg-gray-100 text-gray-800"><header class="sticky z-40 top-0 w-full xl:overflow-y-visible bg-gray-900 text-white border-b border-b-gray-800 border-b border-b-gray-800"><div class="c-container flex justify-between items-center py-4 false"><a class="flex" href="/"><div class="w-[130px] h-[24px]"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 350.92 64.54"><g fill="#fff"><path d="M341.56 12.58c-5.46 0-9.37 4.82-13.39 10.18C325.68 11.38 322.9 0 314.07 0S302.46 11.38 300 22.76c-4-5.36-7.93-10.18-13.39-10.18-3.47 0-9.35 2.37-9.35 11.22v16.11c0 8.69 4.64 10.82 7.42 11.54 4.8 1.25 16.36 2.4 29.37 2.4s24.57-1.15 29.36-2.4c2.79-.72 7.43-2.85 7.43-11.54V23.8c0-8.85-5.88-11.22-9.36-11.22M314.07 5c5.29 0 7.3 10.44 10.12 23-3.09 3.79-6.36 6.86-10.12 6.86S307 31.78 304 28c2.63-11.72 4.65-23 10.12-23m-31.84 34.91V23.8c0-5.59 3-6.2 4.33-6.2 3.85 0 8 6.43 11.94 11.59-2.83 11.71-5.78 18.81-12.75 17.37-1.82-.5-3.52-1.65-3.52-6.65M296 48.05c3-3.35 5-8.58 6.5-14.12 3.23 3.38 6.95 5.93 11.57 5.93s8.33-2.55 11.56-5.93c1.5 5.54 3.47 10.77 6.55 14.12-5.39.5-11.88.79-18.11.79s-12.73-.29-18.12-.79m49.91-8.14c0 5-1.71 6.15-3.52 6.65-7 1.48-9.93-5.66-12.72-17.37 3.95-5.16 8.09-11.59 11.94-11.59 1.3 0 4.34.61 4.34 6.2ZM1.13 52.07a1.12 1.12 0 0 1-.79-.34 1.16 1.16 0 0 1-.34-.85 1.52 1.52 0 0 1 .11-.52L14 13.74a2 2 0 0 1 .62-1 1.81 1.81 0 0 1 1.25-.4h5a1.81 1.81 0 0 1 1.25.4 2.44 2.44 0 0 1 .68 1l13.82 36.62a2.52 2.52 0 0 1 .06.52 1.16 1.16 0 0 1-.34.85 1.12 1.12 0 0 1-.79.34h-3.92a1.4 1.4 0 0 1-1.07-.37 2.41 2.41 0 0 1-.46-.7l-2.89-7.48H9.47L6.63 51a2 2 0 0 1-.48.66 1.5 1.5 0 0 1-1.1.37Zm10.15-14.18H25.4l-7.09-18.82ZM42.52 62.84a1.25 1.25 0 0 1-1.3-1.31V23.89a1.24 1.24 0 0 1 1.3-1.3h3.57a1.25 1.25 0 0 1 1.31 1.3v2.38a11.6 11.6 0 0 1 3.62-3A11.35 11.35 0 0 1 56.58 22a12.67 12.67 0 0 1 5.33 1 10.13 10.13 0 0 1 3.68 2.83 12.56 12.56 0 0 1 2.24 4.26 19.79 19.79 0 0 1 .88 5.21c0 .64.06 1.31.06 2s0 1.34-.06 2a18.1 18.1 0 0 1-.82 5.16 13.14 13.14 0 0 1-2.24 4.22 10.21 10.21 0 0 1-3.71 2.89 12.56 12.56 0 0 1-5.36 1.05 11.36 11.36 0 0 1-5.36-1.16 10.55 10.55 0 0 1-3.54-3v13a1.27 1.27 0 0 1-.37.94 1.38 1.38 0 0 1-1 .37ZM55 47.3a6.63 6.63 0 0 0 4.17-1.16 6.53 6.53 0 0 0 2.18-3 14.43 14.43 0 0 0 .8-4.14 25.8 25.8 0 0 0 0-3.29 14.43 14.43 0 0 0-.8-4.14 6.58 6.58 0 0 0-2.18-3A6.69 6.69 0 0 0 55 27.35a6.44 6.44 0 0 0-6.49 4.22 12.43 12.43 0 0 0-.82 3.77q-.06 1-.06 2.16c0 .79 0 1.53.06 2.21a9.3 9.3 0 0 0 .85 3.6 7.15 7.15 0 0 0 2.38 2.86A6.83 6.83 0 0 0 55 47.3ZM75.71 62.84a1.27 1.27 0 0 1-1.3-1.31V23.89a1.25 1.25 0 0 1 1.3-1.3h3.58a1.29 1.29 0 0 1 .93.36 1.27 1.27 0 0 1 .37.94v2.38a11.53 11.53 0 0 1 3.63-3A11.29 11.29 0 0 1 89.77 22a12.64 12.64 0 0 1 5.33 1 10.16 10.16 0 0 1 3.69 2.83 12.74 12.74 0 0 1 2.21 4.3 20.21 20.21 0 0 1 .88 5.21v4a18.1 18.1 0 0 1-.83 5.16 12.94 12.94 0 0 1-2.24 4.22 10.21 10.21 0 0 1-3.71 2.89 12.53 12.53 0 0 1-5.36 1.05 11.31 11.31 0 0 1-5.35-1.16 10.49 10.49 0 0 1-3.55-3v13a1.27 1.27 0 0 1-.37.94 1.34 1.34 0 0 1-1 .37ZM88.19 47.3a6.1 6.1 0 0 0 6.35-4.19 14.43 14.43 0 0 0 .79-4.11 25.8 25.8 0 0 0 0-3.29 14.43 14.43 0 0 0-.79-4.14 6.1 6.1 0 0 0-6.35-4.19 6.44 6.44 0 0 0-6.5 4.22 12.74 12.74 0 0 0-.82 3.77c0 .64-.05 1.36-.05 2.16s0 1.53.05 2.21a9.3 9.3 0 0 0 .85 3.6 7.15 7.15 0 0 0 2.38 2.86 6.84 6.84 0 0 0 4.09 1.1ZM122.17 52.63a21.18 21.18 0 0 1-8.56-1.53 12.82 12.82 0 0 1-5.27-4 9.44 9.44 0 0 1-1.93-5.25 1.1 1.1 0 0 1 .34-.79 1.15 1.15 0 0 1 .85-.34h4a1.47 1.47 0 0 1 1 .31 2.75 2.75 0 0 1 .57.76 6.36 6.36 0 0 0 1.36 2.39 7.72 7.72 0 0 0 2.86 2 12.06 12.06 0 0 0 4.73.79q4.48 0 6.61-1.53a4.88 4.88 0 0 0 2.12-4.19 3.83 3.83 0 0 0-1.13-2.87 10.56 10.56 0 0 0-3.52-2c-1.58-.6-3.64-1.25-6.17-1.93a36.52 36.52 0 0 1-7-2.55 10.29 10.29 0 0 1-4.19-3.57 9.81 9.81 0 0 1-1.39-5.44 9.72 9.72 0 0 1 1.73-5.67 11.66 11.66 0 0 1 4.93-3.94 18.66 18.66 0 0 1 7.68-1.45 19 19 0 0 1 6.35 1 14 14 0 0 1 4.57 2.55 11.53 11.53 0 0 1 2.77 3.4 8.31 8.31 0 0 1 1 3.57 1.18 1.18 0 0 1-.32.77 1.09 1.09 0 0 1-.87.37h-4.14a1.83 1.83 0 0 1-.88-.23 1.5 1.5 0 0 1-.65-.85 5.22 5.22 0 0 0-2.44-3.46 9.49 9.49 0 0 0-5.39-1.42 10.19 10.19 0 0 0-5.41 1.28 4.35 4.35 0 0 0-2.07 4 4.24 4.24 0 0 0 1 2.89 8.38 8.38 0 0 0 3.18 2 58.53 58.53 0 0 0 5.75 1.9 43.26 43.26 0 0 1 7.76 2.54 10.38 10.38 0 0 1 4.4 3.51 9.64 9.64 0 0 1 1.41 5.42 10 10 0 0 1-1.95 6.2 12.32 12.32 0 0 1-5.44 4 22 22 0 0 1-8.25 1.36ZM143.77 17.37a1.34 1.34 0 0 1-1-.37 1.24 1.24 0 0 1-.37-.93v-3.58a1.34 1.34 0 0 1 .37-1 1.32 1.32 0 0 1 1-.4h4.31a1.39 1.39 0 0 1 1 .4 1.29 1.29 0 0 1 .4 1v3.58a1.2 1.2 0 0 1-.4.93 1.41 1.41 0 0 1-1 .37Zm.34 34.7a1.38 1.38 0 0 1-1-.37 1.27 1.27 0 0 1-.37-.94V23.89a1.27 1.27 0 0 1 .37-.94 1.37 1.37 0 0 1 1-.36h3.69a1.25 1.25 0 0 1 1.3 1.3v26.87a1.27 1.27 0 0 1-.37.94 1.28 1.28 0 0 1-.93.37ZM168.5 64.54a17.5 17.5 0 0 1-6.58-1.05 12.16 12.16 0 0 1-4-2.52 9.27 9.27 0 0 1-2.09-2.97 8.1 8.1 0 0 1-.65-2.38 1.13 1.13 0 0 1 .34-1 1.3 1.3 0 0 1 1-.39h3.86a1.51 1.51 0 0 1 .85.22 1.8 1.8 0 0 1 .56 1 11.19 11.19 0 0 0 1 1.73 5 5 0 0 0 1.93 1.61 7.69 7.69 0 0 0 3.57.68 11 11 0 0 0 4.05-.65 4.82 4.82 0 0 0 2.5-2.3 9.59 9.59 0 0 0 .87-4.47v-3.84a10.93 10.93 0 0 1-3.64 2.79 11.93 11.93 0 0 1-5.38 1.08 12.69 12.69 0 0 1-5.36-1 9.78 9.78 0 0 1-3.69-2.86 13.36 13.36 0 0 1-2.21-4.28 18.82 18.82 0 0 1-.82-5.27q-.06-1.53 0-3.12a18.94 18.94 0 0 1 .8-5.16 12.85 12.85 0 0 1 2.21-4.39 10.34 10.34 0 0 1 3.71-2.94 12.23 12.23 0 0 1 5.36-1.06 11.1 11.1 0 0 1 5.52 1.25 11.77 11.77 0 0 1 3.66 3.06V24a1.37 1.37 0 0 1 .37-1 1.31 1.31 0 0 1 1-.39h3.57a1.33 1.33 0 0 1 1.35 1.39v27.39a16.14 16.14 0 0 1-1.38 6.91 10 10 0 0 1-4.4 4.59 16.32 16.32 0 0 1-7.88 1.65Zm-.17-17.69a6.62 6.62 0 0 0 4.11-1.19 7.39 7.39 0 0 0 2.33-3 10.87 10.87 0 0 0 .87-3.71c0-.49.06-1.12.06-1.9s0-1.39-.06-1.84a11.09 11.09 0 0 0-.87-3.74 7.13 7.13 0 0 0-2.33-3 6.74 6.74 0 0 0-4.11-1.16 6.85 6.85 0 0 0-4.17 1.16 6.49 6.49 0 0 0-2.24 3 14.43 14.43 0 0 0-.79 4.14v2.84a14.62 14.62 0 0 0 .79 4.11 6.52 6.52 0 0 0 2.24 3.06 6.85 6.85 0 0 0 4.17 1.23ZM190.13 52.07a1.38 1.38 0 0 1-1-.37 1.31 1.31 0 0 1-.37-.94V23.89a1.31 1.31 0 0 1 .37-.94 1.37 1.37 0 0 1 1-.36h3.63a1.25 1.25 0 0 1 1.31 1.3v2.44a12.29 12.29 0 0 1 3.8-3.09 11.91 11.91 0 0 1 5.72-1.24 11.34 11.34 0 0 1 6.12 1.59 10.28 10.28 0 0 1 3.92 4.41 15.55 15.55 0 0 1 1.37 6.77v16a1.25 1.25 0 0 1-.4.94 1.39 1.39 0 0 1-1 .37h-3.92a1.28 1.28 0 0 1-.93-.37 1.27 1.27 0 0 1-.37-.94V35.06a8.33 8.33 0 0 0-1.79-5.67 6.45 6.45 0 0 0-5.13-2 6.84 6.84 0 0 0-5.18 2 7.83 7.83 0 0 0-2 5.67v15.7a1.22 1.22 0 0 1-.4.94 1.37 1.37 0 0 1-1 .37ZM230.92 52.63a11.76 11.76 0 0 1-5.25-1.16 9.93 9.93 0 0 1-3.74-3.09 7.31 7.31 0 0 1-1.39-4.38 7.42 7.42 0 0 1 3.18-6.27 18.1 18.1 0 0 1 8.39-3.09l8-1.19v-1.4a5.5 5.5 0 0 0-1.36-4c-.91-.94-2.42-1.41-4.54-1.41a6.9 6.9 0 0 0-3.74.9 5.22 5.22 0 0 0-2 2.44 1.32 1.32 0 0 1-1.25.74h-3.51a1.2 1.2 0 0 1-.94-.34 1.34 1.34 0 0 1-.31-.91 5.88 5.88 0 0 1 .71-2.12 8.28 8.28 0 0 1 2.07-2.5 11.76 11.76 0 0 1 3.66-2 15.47 15.47 0 0 1 5.35-.82 17.06 17.06 0 0 1 5.9.88 9.93 9.93 0 0 1 3.8 2.35 9.17 9.17 0 0 1 2.07 3.4 12.46 12.46 0 0 1 .65 4v18.1a1.22 1.22 0 0 1-.4.94 1.37 1.37 0 0 1-1 .37h-3.63a1.25 1.25 0 0 1-1.3-1.31v-2.38a9.3 9.3 0 0 1-2 2 10.74 10.74 0 0 1-3 1.62 13.85 13.85 0 0 1-4.42.63Zm1.59-4.82a8.24 8.24 0 0 0 3.91-.93A6.74 6.74 0 0 0 239.2 44a10.38 10.38 0 0 0 1-4.88v-1.4l-6.13 1a13.25 13.25 0 0 0-5.52 1.75 3.66 3.66 0 0 0-1.85 3.06 3.46 3.46 0 0 0 .85 2.41 5.33 5.33 0 0 0 2.16 1.42 8 8 0 0 0 2.8.45ZM254.47 52.07a1.25 1.25 0 0 1-1.3-1.31V13.12a1.25 1.25 0 0 1 1.3-1.31h3.74a1.25 1.25 0 0 1 1.3 1.31v37.64a1.25 1.25 0 0 1-1.3 1.31Z"></path></g></svg></div></a><div class="hidden xl:block"><ul class="flex"><li><div class="block py-2 px-2 xl:px-3 no-underline cursor-pointer select-none text-gray-200 hover:text-white"><span>Features</span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="angle-down" class="svg-inline--fa fa-angle-down inline-block pb-0.5 ml-2 text-gray-400 text-xxs" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"></path></svg><div class="absolute mt-0 pt-2.5 z-10 w-72 hidden"><div class="w-72 px-3 py-4 bg-white shadow rounded-lg text-left"><h3 class="px-2 c_h-heading c_h-heading--caps text-sm tracking-wider text-gray-600 pb-2">Monitoring features</h3><ul><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/errors"><div class="text-orange-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bug" class="svg-inline--fa fa-bug fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0c53 0 96 43 96 96v3.6c0 15.7-12.7 28.4-28.4 28.4H188.4c-15.7 0-28.4-12.7-28.4-28.4V96c0-53 43-96 96-96zM41.4 105.4c12.5-12.5 32.8-12.5 45.3 0l64 64c.7 .7 1.3 1.4 1.9 2.1c14.2-7.3 30.4-11.4 47.5-11.4H312c17.1 0 33.2 4.1 47.5 11.4c.6-.7 1.2-1.4 1.9-2.1l64-64c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-.7 .7-1.4 1.3-2.1 1.9c6.2 12 10.1 25.3 11.1 39.5H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c0 24.6-5.5 47.8-15.4 68.6c2.2 1.3 4.2 2.9 6 4.8l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-63.1-63.1c-24.5 21.8-55.8 36.2-90.3 39.6V240c0-8.8-7.2-16-16-16s-16 7.2-16 16V479.2c-34.5-3.4-65.8-17.8-90.3-39.6L86.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l64-64c1.9-1.9 3.9-3.4 6-4.8C101.5 367.8 96 344.6 96 320H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96.3c1.1-14.1 5-27.5 11.1-39.5c-.7-.6-1.4-1.2-2.1-1.9l-64-64c-12.5-12.5-12.5-32.8 0-45.3z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Error tracking</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/performance"><div class="text-green-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rabbit-running" class="svg-inline--fa fa-rabbit-running fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M460.7 39.3l-2.2-2.1c-4.7-4.6-11.5-6.4-17.9-4.7s-11.4 6.6-13.1 13l-.8 2.9c-3.3 11.8-5.1 23.7-5.5 35.6c24.3 20.6 42.9 47.8 53.3 78.8c-8.2-1.9-16.5-2.9-25-2.9c-.6 0-1.1 0-1.7 0c-18.4-44-56.5-77.4-103.6-89.3l-3.4-.9c-6.2-1.6-12.9-.6-18.5 2.6c-10.8 6.2-15.6 19.5-11.2 31.1c14.9 39.5 44.3 71.4 81.4 89.7c-3.7 6.6-6.4 14-7.6 21.8L279.7 154.9C248.8 137.3 213.8 128 178.2 128c-32.3 0-62.2 16.8-78.9 44.4C89 159.9 73.4 152 56 152c-30.9 0-56 25.1-56 56s25.1 56 56 56c11.3 0 21.8-3.3 30.6-9.1c4.9 17.2 14.5 33.1 28.4 45.9L257.2 431.2C269 442 284.4 448 300.4 448H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H352 335.2 320V340.5c0-42.9-28.4-80.5-69.6-92.3l-30.8-8.8c-8.5-2.4-13.4-11.3-11-19.8s11.3-13.4 19.8-11l30.8 8.8c55 15.7 92.8 65.9 92.8 123.1v15.7l56-32.4 6.4-3.7H515.7c33.3 0 60.3-27 60.3-60.3c0-18.1-8.2-35.3-22.2-46.7l-34.6-28.2c-4.6-3.7-9.4-7.1-14.5-10c8.4-49.3-7.8-100-43.9-135.5zm-318.5 382c-14.7 9.8-18.7 29.7-8.9 44.4s29.7 18.7 44.4 8.9l46-30.7-48.6-44.5-32.9 22zM480 240a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Performance monitoring</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/hosts"><div class="text-teal-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="server" class="svg-inline--fa fa-server fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Host monitoring</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/anomaly-detection"><div class="text-red-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="siren-on" class="svg-inline--fa fa-siren-on fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M69.3 36l48 32c11 7.4 14 22.3 6.7 33.3s-22.3 14-33.3 6.7l-48-32c-11-7.4-14-22.3-6.7-33.3s22.3-14 33.3-6.7zM597.3 76l-48 32c-11 7.4-25.9 4.4-33.3-6.7s-4.4-25.9 6.7-33.3l48-32c11-7.4 25.9-4.4 33.3 6.7s4.4 25.9-6.7 33.3zM24 192H88c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24zm528 0h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H552c-13.3 0-24-10.7-24-24s10.7-24 24-24zM144 352l25-199.9c4-32 31.2-56.1 63.5-56.1h175c32.3 0 59.5 24 63.5 56.1L496 352H234.1l21.8-174c1.1-8.8-5.1-16.8-13.9-17.9s-16.8 5.1-17.9 13.9L201.9 352H144zM96 416c0-17.7 14.3-32 32-32H512c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V416z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Anomaly detection</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/uptime-monitoring"><div class="text-yellow-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="traffic-light" class="svg-inline--fa fa-traffic-light fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V352c0 88.4 71.6 160 160 160s160-71.6 160-160V64c0-35.3-28.7-64-64-64H64zm96 416a48 48 0 1 1 0-96 48 48 0 1 1 0 96zm48-176a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm-48-80a48 48 0 1 1 0-96 48 48 0 1 1 0 96z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Uptime monitoring</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/metrics"><div class="text-purple-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Metric dashboards</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/workflow"><div class="text-blue-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="users" class="svg-inline--fa fa-users fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192h42.7c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0H21.3C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7h42.7C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3H405.3zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352H378.7C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7H154.7c-14.7 0-26.7-11.9-26.7-26.7z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Workflow</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/log-management"><div class="text-hot-pink-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="line-columns" class="svg-inline--fa fa-line-columns fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M224 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H192c17.7 0 32-14.3 32-32zm0 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM0 320c0 17.7 14.3 32 32 32H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM224 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM288 64c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 192c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32zM288 320c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 448c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Log management</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/automated-dashboards"><div class="text-purple-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Automated Dashboards</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/check-ins"><div class="text-blue-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="square-check" class="svg-inline--fa fa-square-check fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Check-ins</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/tour/time-detective"><div class="text-azure-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="user-secret" class="svg-inline--fa fa-user-secret fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 16c-6.7 0-10.8-2.8-15.5-6.1C201.9 5.4 194 0 176 0c-30.5 0-52 43.7-66 89.4C62.7 98.1 32 112.2 32 128c0 14.3 25 27.1 64.6 35.9c-.4 4-.6 8-.6 12.1c0 17 3.3 33.2 9.3 48H45.4C38 224 32 230 32 237.4c0 1.7 .3 3.4 1 5l38.8 96.9C28.2 371.8 0 423.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-58.5-28.2-110.4-71.7-143L415 242.4c.6-1.6 1-3.3 1-5c0-7.4-6-13.4-13.4-13.4H342.7c6-14.8 9.3-31 9.3-48c0-4.1-.2-8.1-.6-12.1C391 155.1 416 142.3 416 128c0-15.8-30.7-29.9-78-38.6C324 43.7 302.5 0 272 0c-18 0-25.9 5.4-32.5 9.9c-4.8 3.3-8.8 6.1-15.5 6.1zm56 208H267.6c-16.5 0-31.1-10.6-36.3-26.2c-2.3-7-12.2-7-14.5 0c-5.2 15.6-19.9 26.2-36.3 26.2H168c-22.1 0-40-17.9-40-40V169.6c28.2 4.1 61 6.4 96 6.4s67.8-2.3 96-6.4V184c0 22.1-17.9 40-40 40zm-88 96l16 32L176 480 128 288l64 32zm128-32L272 480 240 352l16-32 64-32z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Time Detective</span></a></li></ul></div></div></div></li><li><div class="block py-2 px-2 xl:px-3 no-underline cursor-pointer select-none text-gray-200 hover:text-white"><span>Languages</span><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="angle-down" class="svg-inline--fa fa-angle-down inline-block pb-0.5 ml-2 text-gray-400 text-xxs" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"></path></svg><div class="absolute mt-0 pt-2.5 z-10 w-72 hidden"><div class="w-72 px-3 py-4 bg-white shadow rounded-lg text-left"><h3 class="px-2 c_h-heading c_h-heading--caps text-sm tracking-wider text-gray-600 pb-2">Supported Languages</h3><ul><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/ruby"><div class="text-red-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gem" class="svg-inline--fa fa-gem fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M116.7 33.8c4.5-6.1 11.7-9.8 19.3-9.8H376c7.6 0 14.8 3.6 19.3 9.8l112 152c6.8 9.2 6.1 21.9-1.5 30.4l-232 256c-4.5 5-11 7.9-17.8 7.9s-13.2-2.9-17.8-7.9l-232-256c-7.7-8.5-8.3-21.2-1.5-30.4l112-152zm38.5 39.8c-3.3 2.5-4.2 7-2.1 10.5l57.4 95.6L63.3 192c-4.1 .3-7.3 3.8-7.3 8s3.2 7.6 7.3 8l192 16c.4 0 .9 0 1.3 0l192-16c4.1-.3 7.3-3.8 7.3-8s-3.2-7.6-7.3-8L301.5 179.8l57.4-95.6c2.1-3.5 1.2-8.1-2.1-10.5s-7.9-2-10.7 1L256 172.2 165.9 74.6c-2.8-3-7.4-3.4-10.7-1z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Ruby (on Rails) APM</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/elixir"><div class="text-purple-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="droplet" class="svg-inline--fa fa-droplet fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M192 512C86 512 0 426 0 320C0 228.8 130.2 57.7 166.6 11.7C172.6 4.2 181.5 0 191.1 0h1.8c9.6 0 18.5 4.2 24.5 11.7C253.8 57.7 384 228.8 384 320c0 106-86 192-192 192zM96 336c0-8.8-7.2-16-16-16s-16 7.2-16 16c0 61.9 50.1 112 112 112c8.8 0 16-7.2 16-16s-7.2-16-16-16c-44.2 0-80-35.8-80-80z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Elixir APM</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/nodejs"><div class="text-green-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="node-js" class="svg-inline--fa fa-node-js fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Node.js APM</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/javascript"><div class="text-yellow-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="square-js" class="svg-inline--fa fa-square-js fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">JavaScript Error Tracking</span></a></li><li><a class="flex items-center space-x-3 px-2 py-1 no-underline rounded transition-colors group" href="/python"><div class="text-blue-500 flex justify-center items-center h-7 w-7 border border-gray-200 bg-white shadow-sm rounded-md group-hover:shadow transition-all"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="python" class="svg-inline--fa fa-python fa-xs " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"></path></svg></div><span class="text-gray-700 group-hover:text-gray-800">Python APM</span></a></li></ul></div></div></div></li><li><a class="block py-2 px-2 xl:px-3 no-underline text-gray-200 hover:text-white " href="/learning-center">Learn</a></li><li><a href="https://docs.appsignal.com" class="block py-2 px-2 xl:px-3 no-underline text-gray-200 hover:text-white ">Docs</a></li><li><a href="https://blog.appsignal.com" class="block py-2 px-2 xl:px-3 no-underline text-gray-200 hover:text-white ">Blog</a></li><li><a class="block py-2 px-2 xl:px-3 no-underline text-gray-200 hover:text-white " href="/plans">Pricing</a></li></ul></div><ul class="hidden xl:flex justify-end space-x-4 dark"><li><a href="https://appsignal.com/users/sign_in" class="c-button c-button--sm c-button--white dark:c-button--gray">Login</a></li><li><a href="https://appsignal.com/users/sign_up" class="c-button c-button--sm">Start free trial</a></li></ul><div class="xl:hidden dark"><a href="#menu" class="c-button c-button--sm c-button--white dark:c-button--gray"><div class="flex item-center space-x-2 pr-0.5"><div>Menu</div><div class="inline-block w-2 pt-0.25"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bars" class="svg-inline--fa fa-bars " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"></path></svg></div></div></a></div></div><nav class="hidden border-t border-gray-700"><div class="dark c-container h-screen overflow-y-auto pt-7 pb-40"><div><h3 class="c_h-heading c_h-heading--caps text-sm text-gray-200 pb-3 mb-3 border-b border-gray-700">Monitoring features</h3><ul class="pb-8 space-y-1"><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/errors"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bug" class="svg-inline--fa fa-bug " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0c53 0 96 43 96 96v3.6c0 15.7-12.7 28.4-28.4 28.4H188.4c-15.7 0-28.4-12.7-28.4-28.4V96c0-53 43-96 96-96zM41.4 105.4c12.5-12.5 32.8-12.5 45.3 0l64 64c.7 .7 1.3 1.4 1.9 2.1c14.2-7.3 30.4-11.4 47.5-11.4H312c17.1 0 33.2 4.1 47.5 11.4c.6-.7 1.2-1.4 1.9-2.1l64-64c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-.7 .7-1.4 1.3-2.1 1.9c6.2 12 10.1 25.3 11.1 39.5H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c0 24.6-5.5 47.8-15.4 68.6c2.2 1.3 4.2 2.9 6 4.8l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-63.1-63.1c-24.5 21.8-55.8 36.2-90.3 39.6V240c0-8.8-7.2-16-16-16s-16 7.2-16 16V479.2c-34.5-3.4-65.8-17.8-90.3-39.6L86.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l64-64c1.9-1.9 3.9-3.4 6-4.8C101.5 367.8 96 344.6 96 320H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96.3c1.1-14.1 5-27.5 11.1-39.5c-.7-.6-1.4-1.2-2.1-1.9l-64-64c-12.5-12.5-12.5-32.8 0-45.3z"></path></svg></figure><span>Error tracking</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/performance"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rabbit-running" class="svg-inline--fa fa-rabbit-running " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M460.7 39.3l-2.2-2.1c-4.7-4.6-11.5-6.4-17.9-4.7s-11.4 6.6-13.1 13l-.8 2.9c-3.3 11.8-5.1 23.7-5.5 35.6c24.3 20.6 42.9 47.8 53.3 78.8c-8.2-1.9-16.5-2.9-25-2.9c-.6 0-1.1 0-1.7 0c-18.4-44-56.5-77.4-103.6-89.3l-3.4-.9c-6.2-1.6-12.9-.6-18.5 2.6c-10.8 6.2-15.6 19.5-11.2 31.1c14.9 39.5 44.3 71.4 81.4 89.7c-3.7 6.6-6.4 14-7.6 21.8L279.7 154.9C248.8 137.3 213.8 128 178.2 128c-32.3 0-62.2 16.8-78.9 44.4C89 159.9 73.4 152 56 152c-30.9 0-56 25.1-56 56s25.1 56 56 56c11.3 0 21.8-3.3 30.6-9.1c4.9 17.2 14.5 33.1 28.4 45.9L257.2 431.2C269 442 284.4 448 300.4 448H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H352 335.2 320V340.5c0-42.9-28.4-80.5-69.6-92.3l-30.8-8.8c-8.5-2.4-13.4-11.3-11-19.8s11.3-13.4 19.8-11l30.8 8.8c55 15.7 92.8 65.9 92.8 123.1v15.7l56-32.4 6.4-3.7H515.7c33.3 0 60.3-27 60.3-60.3c0-18.1-8.2-35.3-22.2-46.7l-34.6-28.2c-4.6-3.7-9.4-7.1-14.5-10c8.4-49.3-7.8-100-43.9-135.5zm-318.5 382c-14.7 9.8-18.7 29.7-8.9 44.4s29.7 18.7 44.4 8.9l46-30.7-48.6-44.5-32.9 22zM480 240a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"></path></svg></figure><span>Performance monitoring</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/hosts"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="server" class="svg-inline--fa fa-server " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z"></path></svg></figure><span>Host monitoring</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/anomaly-detection"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="siren-on" class="svg-inline--fa fa-siren-on " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M69.3 36l48 32c11 7.4 14 22.3 6.7 33.3s-22.3 14-33.3 6.7l-48-32c-11-7.4-14-22.3-6.7-33.3s22.3-14 33.3-6.7zM597.3 76l-48 32c-11 7.4-25.9 4.4-33.3-6.7s-4.4-25.9 6.7-33.3l48-32c11-7.4 25.9-4.4 33.3 6.7s4.4 25.9-6.7 33.3zM24 192H88c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24zm528 0h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H552c-13.3 0-24-10.7-24-24s10.7-24 24-24zM144 352l25-199.9c4-32 31.2-56.1 63.5-56.1h175c32.3 0 59.5 24 63.5 56.1L496 352H234.1l21.8-174c1.1-8.8-5.1-16.8-13.9-17.9s-16.8 5.1-17.9 13.9L201.9 352H144zM96 416c0-17.7 14.3-32 32-32H512c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V416z"></path></svg></figure><span>Anomaly detection</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/uptime-monitoring"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="traffic-light" class="svg-inline--fa fa-traffic-light " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V352c0 88.4 71.6 160 160 160s160-71.6 160-160V64c0-35.3-28.7-64-64-64H64zm96 416a48 48 0 1 1 0-96 48 48 0 1 1 0 96zm48-176a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm-48-80a48 48 0 1 1 0-96 48 48 0 1 1 0 96z"></path></svg></figure><span>Uptime monitoring</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/metrics"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></figure><span>Metric dashboards</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/workflow"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="users" class="svg-inline--fa fa-users " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192h42.7c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0H21.3C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7h42.7C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3H405.3zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352H378.7C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7H154.7c-14.7 0-26.7-11.9-26.7-26.7z"></path></svg></figure><span>Workflow</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/log-management"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="line-columns" class="svg-inline--fa fa-line-columns " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M224 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H192c17.7 0 32-14.3 32-32zm0 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM0 320c0 17.7 14.3 32 32 32H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM224 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM288 64c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 192c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32zM288 320c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 448c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32z"></path></svg></figure><span>Log management</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/automated-dashboards"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></figure><span>Automated Dashboards</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/check-ins"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="square-check" class="svg-inline--fa fa-square-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"></path></svg></figure><span>Check-ins</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/tour/time-detective"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="user-secret" class="svg-inline--fa fa-user-secret " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 16c-6.7 0-10.8-2.8-15.5-6.1C201.9 5.4 194 0 176 0c-30.5 0-52 43.7-66 89.4C62.7 98.1 32 112.2 32 128c0 14.3 25 27.1 64.6 35.9c-.4 4-.6 8-.6 12.1c0 17 3.3 33.2 9.3 48H45.4C38 224 32 230 32 237.4c0 1.7 .3 3.4 1 5l38.8 96.9C28.2 371.8 0 423.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-58.5-28.2-110.4-71.7-143L415 242.4c.6-1.6 1-3.3 1-5c0-7.4-6-13.4-13.4-13.4H342.7c6-14.8 9.3-31 9.3-48c0-4.1-.2-8.1-.6-12.1C391 155.1 416 142.3 416 128c0-15.8-30.7-29.9-78-38.6C324 43.7 302.5 0 272 0c-18 0-25.9 5.4-32.5 9.9c-4.8 3.3-8.8 6.1-15.5 6.1zm56 208H267.6c-16.5 0-31.1-10.6-36.3-26.2c-2.3-7-12.2-7-14.5 0c-5.2 15.6-19.9 26.2-36.3 26.2H168c-22.1 0-40-17.9-40-40V169.6c28.2 4.1 61 6.4 96 6.4s67.8-2.3 96-6.4V184c0 22.1-17.9 40-40 40zm-88 96l16 32L176 480 128 288l64 32zm128-32L272 480 240 352l16-32 64-32z"></path></svg></figure><span>Time Detective</span></a></li></ul></div><div><h3 class="c_h-heading c_h-heading--caps text-sm text-gray-200 pb-3 mb-3 border-b border-gray-700">Supported Languages</h3><ul class="pb-8 space-y-1"><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/ruby"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gem" class="svg-inline--fa fa-gem " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M116.7 33.8c4.5-6.1 11.7-9.8 19.3-9.8H376c7.6 0 14.8 3.6 19.3 9.8l112 152c6.8 9.2 6.1 21.9-1.5 30.4l-232 256c-4.5 5-11 7.9-17.8 7.9s-13.2-2.9-17.8-7.9l-232-256c-7.7-8.5-8.3-21.2-1.5-30.4l112-152zm38.5 39.8c-3.3 2.5-4.2 7-2.1 10.5l57.4 95.6L63.3 192c-4.1 .3-7.3 3.8-7.3 8s3.2 7.6 7.3 8l192 16c.4 0 .9 0 1.3 0l192-16c4.1-.3 7.3-3.8 7.3-8s-3.2-7.6-7.3-8L301.5 179.8l57.4-95.6c2.1-3.5 1.2-8.1-2.1-10.5s-7.9-2-10.7 1L256 172.2 165.9 74.6c-2.8-3-7.4-3.4-10.7-1z"></path></svg></figure><span>Ruby (on Rails) APM</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/elixir"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="droplet" class="svg-inline--fa fa-droplet " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M192 512C86 512 0 426 0 320C0 228.8 130.2 57.7 166.6 11.7C172.6 4.2 181.5 0 191.1 0h1.8c9.6 0 18.5 4.2 24.5 11.7C253.8 57.7 384 228.8 384 320c0 106-86 192-192 192zM96 336c0-8.8-7.2-16-16-16s-16 7.2-16 16c0 61.9 50.1 112 112 112c8.8 0 16-7.2 16-16s-7.2-16-16-16c-44.2 0-80-35.8-80-80z"></path></svg></figure><span>Elixir APM</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/nodejs"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="node-js" class="svg-inline--fa fa-node-js " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z"></path></svg></figure><span>Node.js APM</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/javascript"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="square-js" class="svg-inline--fa fa-square-js " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"></path></svg></figure><span>JavaScript Error Tracking</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/python"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="python" class="svg-inline--fa fa-python " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"></path></svg></figure><span>Python APM</span></a></li></ul></div><div></div><div></div><div></div><div></div><div><ul><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/learning-center"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="book-open" class="svg-inline--fa fa-book-open " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M249.6 471.5c10.8 3.8 22.4-4.1 22.4-15.5V78.6c0-4.2-1.6-8.4-5-11C247.4 52 202.4 32 144 32C93.5 32 46.3 45.3 18.1 56.1C6.8 60.5 0 71.7 0 83.8V454.1c0 11.9 12.8 20.2 24.1 16.5C55.6 460.1 105.5 448 144 448c33.9 0 79 14 105.6 23.5zm76.8 0C353 462 398.1 448 432 448c38.5 0 88.4 12.1 119.9 22.6c11.3 3.8 24.1-4.6 24.1-16.5V83.8c0-12.1-6.8-23.3-18.1-27.6C529.7 45.3 482.5 32 432 32c-58.4 0-103.4 20-123 35.6c-3.3 2.6-5 6.8-5 11V456c0 11.4 11.7 19.3 22.4 15.5z"></path></svg></figure><span>Learn</span></a></li><li><a href="https://docs.appsignal.com" class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="book" class="svg-inline--fa fa-book " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M96 0C43 0 0 43 0 96V416c0 53 43 96 96 96H384h32c17.7 0 32-14.3 32-32s-14.3-32-32-32V384c17.7 0 32-14.3 32-32V32c0-17.7-14.3-32-32-32H384 96zm0 384H352v64H96c-17.7 0-32-14.3-32-32s14.3-32 32-32zm32-240c0-8.8 7.2-16 16-16H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H144c-8.8 0-16-7.2-16-16zm16 48H336c8.8 0 16 7.2 16 16s-7.2 16-16 16H144c-8.8 0-16-7.2-16-16s7.2-16 16-16z"></path></svg></figure><span>Docs</span></a></li><li><a href="https://blog.appsignal.com" class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rss" class="svg-inline--fa fa-rss " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M0 64C0 46.3 14.3 32 32 32c229.8 0 416 186.2 416 416c0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96C14.3 96 0 81.7 0 64zM0 416a64 64 0 1 1 128 0A64 64 0 1 1 0 416zM32 160c159.1 0 288 128.9 288 288c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224c-17.7 0-32-14.3-32-32s14.3-32 32-32z"></path></svg></figure><span>Blog</span></a></li><li><a class="flex items-center space-x-3 py-1 no-underline text-sm sm:text-base" href="/plans"><figure class="c_h-icon-box undefined c_h-icon-box--sm undefined"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="dollar-sign" class="svg-inline--fa fa-dollar-sign " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M160 0c17.7 0 32 14.3 32 32V67.7c1.6 .2 3.1 .4 4.7 .7c.4 .1 .7 .1 1.1 .2l48 8.8c17.4 3.2 28.9 19.9 25.7 37.2s-19.9 28.9-37.2 25.7l-47.5-8.7c-31.3-4.6-58.9-1.5-78.3 6.2s-27.2 18.3-29 28.1c-2 10.7-.5 16.7 1.2 20.4c1.8 3.9 5.5 8.3 12.8 13.2c16.3 10.7 41.3 17.7 73.7 26.3l2.9 .8c28.6 7.6 63.6 16.8 89.6 33.8c14.2 9.3 27.6 21.9 35.9 39.5c8.5 17.9 10.3 37.9 6.4 59.2c-6.9 38-33.1 63.4-65.6 76.7c-13.7 5.6-28.6 9.2-44.4 11V480c0 17.7-14.3 32-32 32s-32-14.3-32-32V445.1c-.4-.1-.9-.1-1.3-.2l-.2 0 0 0c-24.4-3.8-64.5-14.3-91.5-26.3c-16.1-7.2-23.4-26.1-16.2-42.2s26.1-23.4 42.2-16.2c20.9 9.3 55.3 18.5 75.2 21.6c31.9 4.7 58.2 2 76-5.3c16.9-6.9 24.6-16.9 26.8-28.9c1.9-10.6 .4-16.7-1.3-20.4c-1.9-4-5.6-8.4-13-13.3c-16.4-10.7-41.5-17.7-74-26.3l-2.8-.7 0 0C119.4 279.3 84.4 270 58.4 253c-14.2-9.3-27.5-22-35.8-39.6c-8.4-17.9-10.1-37.9-6.1-59.2C23.7 116 52.3 91.2 84.8 78.3c13.3-5.3 27.9-8.9 43.2-11V32c0-17.7 14.3-32 32-32z"></path></svg></figure><span>Pricing</span></a></li><li><a href="https://appsignal.com/users/sign_in" class="block mt-4 text-center c-button c-button--sm c-button--gray">Login</a></li><li><a href="https://appsignal.com/users/sign_up" class="block mt-4 text-center c-button c-button--sm">Start free trial</a></li></ul></div></div></nav></header><section class="relative py-16 bg-gradient-to-b from-gray-900 to-blue-700 dark overflow-hidden"><div class="space-y-16"><div class="c-container"><header class="relative self-center space-y-4 text-center mx-auto max-w-7xl"><div class="flex flex-col sm:flex-row items-center space-y-5 sm:space-y-0 sm:space-x-4 sm:justify-center"><figure class="c_h-icon-box c_h-icon-box--blue c_h-icon-box--lg lg:c_h-icon-box--xl undefined"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="python" class="svg-inline--fa fa-python " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"></path></svg></figure><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--xl-fluid text-blue-400">Python Application Monitoring</h1></div><h2 class="c_h-heading dark:text-white c_h-heading--8xl-fluid leading-tighter text-balance">Powerful Python monitoring</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--2xl-fluid">AppSignal is a powerful Python APM that helps you optimize the performance of your Python applications. AppSignal has all the tools you need to track errors, improve application performance, make tasks run faster, and much more.</p></header></div><div><div class="relative c-container"><div class="bg-gray-200 mx-auto grid gap-px overflow-hidden grid-cols-1 md:grid-cols-2 max-w-3xl c_h-box c_h-box--white"><a href="https://www.appsignal.com/python/celery-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Celery</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/django-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Django</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/fastapi-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>FastAPI</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/flask-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Flask</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/jinja2-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Jinja2</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/mysql-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>MySQL</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/pika-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Pika</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/postgresql-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>PostgreSQL</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/redis-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Redis</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/request-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Request</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/sqlalchemy-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>SQLAlchemy</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/sqlite-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>SQLite</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/starlette-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>Starlette</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a><a href="https://www.appsignal.com/python/wsgi-asgi-monitoring" class="flex items-center px-4 sm:px-6 py-5 bg-white no-underline group/hover-link c_h-box__link"><h3 class="flex items-center gap-4 c_h-heading c_h-heading--2xl-fluid text-gray-800 w-full"><span>WSGI and ASGI</span></h3><div class="flex justify-between w-auto"><div class="text-lg ml-auto"><div class="w-max mt-auto c-button c-button--white c-button--sm text-sm">Learn more</div></div></div></a></div></div></div></div></section><section class="relative py-24 xl:py-32 bg-white space-y-16 md:space-y-24"><div class="c-container"><header class="relative self-center space-y-4 text-left sm:text-center mx-auto max-w-3xl"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">Python performance monitoring</h1><h2 class="c_h-heading dark:text-white c_h-heading--7xl-fluid leading-tighter text-balance">Improve the performance of your Python apps</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--2xl-fluid">AppSignal transforms your Python metrics into actionable insights, helping you optimize your application's performance. Visualize critical metrics using custom dashboards, set up alert triggers for exceptions and anomalies, delve into code performance with the event timeline, and so much more.</p></header></div><div class="relative c-container grid grid-cols-1 md:grid-cols-2 gap-8 md:gap-20 items-center max-w-7xl"><div class="col-span-1 order-1 md:order-2"><img alt="Stay informed, avoid alert fatigue" loading="lazy" width="552" height="400" decoding="async" data-nimg="1" class="2xl:ml-auto c_h-box c_h-box--gray" style="color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=640&q=90 640w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=750&q=90 750w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=828&q=90 828w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=1080&q=90 1080w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=1200&q=90 1200w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=1920&q=90 1920w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=2048&q=90 2048w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=3840&q=90 3840w" src="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fanomaly-detection.jpg&w=3840&q=90"/></div><div class="col-span-1 xl:pr-8 order-2 md:order-1"><div class="relative self-center space-y-4 mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">Anomaly detection</h1><h2 class="c_h-heading dark:text-white c_h-heading--5xl-fluid text-balance">Stay informed, avoid alert fatigue</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--xl-fluid">Create conditional metric triggers to notify you when Python exceptions occur or limits are reached. AppSignal is the Python APM that filters out the noise, enabling you to focus on the metrics that matter.<br/><a class="c-link mt-4 inline-block" href="/tour/anomaly-detection">Learn more about anomaly detection →</a></p></div></div></div><div class="relative c-container grid grid-cols-1 md:grid-cols-2 gap-8 md:gap-20 items-center max-w-7xl"><div class="col-span-1 order-1 md:order-2"><img alt="Event-level performance insights" loading="lazy" width="552" height="400" decoding="async" data-nimg="1" class="2xl:ml-auto c_h-box c_h-box--gray" style="color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=640&q=90 640w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=750&q=90 750w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=828&q=90 828w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=1080&q=90 1080w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=1200&q=90 1200w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=1920&q=90 1920w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=2048&q=90 2048w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=3840&q=90 3840w" src="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fperformance-monitoring.jpg&w=3840&q=90"/></div><div class="col-span-1 xl:pr-8 order-2 md:order-1"><div class="relative self-center space-y-4 mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">Performance monitoring</h1><h2 class="c_h-heading dark:text-white c_h-heading--5xl-fluid text-balance">Event-level performance insights</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--xl-fluid">No need to use Python debugger. AppSignal gives you event-level insights into your code's performance, helping you understand what was slow, where it was slow and why it was slow.<br/><a class="c-link mt-4 inline-block" href="/tour/performance">Learn more about performance monitoring →</a></p></div></div></div><div class="relative c-container grid grid-cols-1 md:grid-cols-2 gap-8 md:gap-20 items-center max-w-7xl"><div class="col-span-1 order-1 md:order-2"><img alt="Monitor your metrics in real-time" loading="lazy" width="552" height="400" decoding="async" data-nimg="1" class="2xl:ml-auto c_h-box c_h-box--gray" style="color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=640&q=90 640w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=750&q=90 750w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=828&q=90 828w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=1080&q=90 1080w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=1200&q=90 1200w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=1920&q=90 1920w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=2048&q=90 2048w, /_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=3840&q=90 3840w" src="/_next/image?url=%2Fassets%2Fpages%2Fframeworks%2Fpython%2Fmetric-dashboards.jpg&w=3840&q=90"/></div><div class="col-span-1 xl:pr-8 order-2 md:order-1"><div class="relative self-center space-y-4 mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">Metric dashboards</h1><h2 class="c_h-heading dark:text-white c_h-heading--5xl-fluid text-balance">Monitor your metrics in real-time</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--xl-fluid">Visualize success with metric dashboards. Create dashboards to monitor the Python metrics that matter, track errors with ease, and gain instant visual insights into your application's performance.<br/><a class="c-link mt-4 inline-block" href="/tour/metrics">Learn more about metric dashboards →</a></p></div></div></div></section><section class="relative py-24 xl:py-32 bg-gray-100 space-y-12 md:space-y-20"><div class="c-container"><header class="relative self-center max-w-4xl space-y-4 text-left sm:text-center mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">All-in-one APM</h1><h2 class="c_h-heading dark:text-white c_h-heading--7xl-fluid leading-tighter text-balance">Python monitoring <br class="hidden md:block"/> made simple.</h2></header></div><div class="c-container grid gap gap-6 md:grid-cols-2 xl:grid-cols-3 max-w-7xl undefined "><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/errors/"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--orange md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bug" class="svg-inline--fa fa-bug " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0c53 0 96 43 96 96v3.6c0 15.7-12.7 28.4-28.4 28.4H188.4c-15.7 0-28.4-12.7-28.4-28.4V96c0-53 43-96 96-96zM41.4 105.4c12.5-12.5 32.8-12.5 45.3 0l64 64c.7 .7 1.3 1.4 1.9 2.1c14.2-7.3 30.4-11.4 47.5-11.4H312c17.1 0 33.2 4.1 47.5 11.4c.6-.7 1.2-1.4 1.9-2.1l64-64c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-.7 .7-1.4 1.3-2.1 1.9c6.2 12 10.1 25.3 11.1 39.5H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c0 24.6-5.5 47.8-15.4 68.6c2.2 1.3 4.2 2.9 6 4.8l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-63.1-63.1c-24.5 21.8-55.8 36.2-90.3 39.6V240c0-8.8-7.2-16-16-16s-16 7.2-16 16V479.2c-34.5-3.4-65.8-17.8-90.3-39.6L86.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l64-64c1.9-1.9 3.9-3.4 6-4.8C101.5 367.8 96 344.6 96 320H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96.3c1.1-14.1 5-27.5 11.1-39.5c-.7-.6-1.4-1.2-2.1-1.9l-64-64c-12.5-12.5-12.5-32.8 0-45.3z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Error tracking</h3><p class="text-gray-700 dark:text-white text-lg">Track exceptions, get error alerts, debug and fix them with ease.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/performance"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rabbit-running" class="svg-inline--fa fa-rabbit-running " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M460.7 39.3l-2.2-2.1c-4.7-4.6-11.5-6.4-17.9-4.7s-11.4 6.6-13.1 13l-.8 2.9c-3.3 11.8-5.1 23.7-5.5 35.6c24.3 20.6 42.9 47.8 53.3 78.8c-8.2-1.9-16.5-2.9-25-2.9c-.6 0-1.1 0-1.7 0c-18.4-44-56.5-77.4-103.6-89.3l-3.4-.9c-6.2-1.6-12.9-.6-18.5 2.6c-10.8 6.2-15.6 19.5-11.2 31.1c14.9 39.5 44.3 71.4 81.4 89.7c-3.7 6.6-6.4 14-7.6 21.8L279.7 154.9C248.8 137.3 213.8 128 178.2 128c-32.3 0-62.2 16.8-78.9 44.4C89 159.9 73.4 152 56 152c-30.9 0-56 25.1-56 56s25.1 56 56 56c11.3 0 21.8-3.3 30.6-9.1c4.9 17.2 14.5 33.1 28.4 45.9L257.2 431.2C269 442 284.4 448 300.4 448H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H352 335.2 320V340.5c0-42.9-28.4-80.5-69.6-92.3l-30.8-8.8c-8.5-2.4-13.4-11.3-11-19.8s11.3-13.4 19.8-11l30.8 8.8c55 15.7 92.8 65.9 92.8 123.1v15.7l56-32.4 6.4-3.7H515.7c33.3 0 60.3-27 60.3-60.3c0-18.1-8.2-35.3-22.2-46.7l-34.6-28.2c-4.6-3.7-9.4-7.1-14.5-10c8.4-49.3-7.8-100-43.9-135.5zm-318.5 382c-14.7 9.8-18.7 29.7-8.9 44.4s29.7 18.7 44.4 8.9l46-30.7-48.6-44.5-32.9 22zM480 240a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Performance monitoring</h3><p class="text-gray-700 dark:text-white text-lg">Monitor the performance of your slowest actions down to the nanosecond.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/hosts"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--teal md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="server" class="svg-inline--fa fa-server " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Host monitoring</h3><p class="text-gray-700 dark:text-white text-lg">Monitoring for your servers: keep an eye on CPU, Disk, Network & more.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/anomaly-detection"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--red md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="siren-on" class="svg-inline--fa fa-siren-on " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M69.3 36l48 32c11 7.4 14 22.3 6.7 33.3s-22.3 14-33.3 6.7l-48-32c-11-7.4-14-22.3-6.7-33.3s22.3-14 33.3-6.7zM597.3 76l-48 32c-11 7.4-25.9 4.4-33.3-6.7s-4.4-25.9 6.7-33.3l48-32c11-7.4 25.9-4.4 33.3 6.7s4.4 25.9-6.7 33.3zM24 192H88c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24zm528 0h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H552c-13.3 0-24-10.7-24-24s10.7-24 24-24zM144 352l25-199.9c4-32 31.2-56.1 63.5-56.1h175c32.3 0 59.5 24 63.5 56.1L496 352H234.1l21.8-174c1.1-8.8-5.1-16.8-13.9-17.9s-16.8 5.1-17.9 13.9L201.9 352H144zM96 416c0-17.7 14.3-32 32-32H512c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V416z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Anomaly detection</h3><p class="text-gray-700 dark:text-white text-lg">Avoid surprises and set triggers for anomalies on any metric you'd like.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/uptime-monitoring"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--yellow md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="traffic-light" class="svg-inline--fa fa-traffic-light " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V352c0 88.4 71.6 160 160 160s160-71.6 160-160V64c0-35.3-28.7-64-64-64H64zm96 416a48 48 0 1 1 0-96 48 48 0 1 1 0 96zm48-176a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm-48-80a48 48 0 1 1 0-96 48 48 0 1 1 0 96z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Uptime monitoring</h3><p class="text-gray-700 dark:text-white text-lg">Get alerted in real-time when your application is down.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/metrics"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--purple md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Metric dashboards</h3><p class="text-gray-700 dark:text-white text-lg">Collect metrics from your code and chart them on dashboards.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/log-management"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--hot-pink md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="line-columns" class="svg-inline--fa fa-line-columns " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M224 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H192c17.7 0 32-14.3 32-32zm0 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM0 320c0 17.7 14.3 32 32 32H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM224 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM288 64c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 192c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32zM288 320c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 448c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Log management</h3><p class="text-gray-700 dark:text-white text-lg">Collect and manage application logs in an easy-to-use interface.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/automated-dashboards"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--purple md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Automated Dashboards</h3><p class="text-gray-700 dark:text-white text-lg">Visualise your application performance metrics.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/check-ins"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--blue md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="square-check" class="svg-inline--fa fa-square-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Check-ins</h3><p class="text-gray-700 dark:text-white text-lg">Monitor your application's background jobs and processes.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://www.appsignal.com/tour/time-detective"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><div class="flex-grow flex flex-col justify-between p-6"><div><figure class="c_h-icon-box c_h-icon-box--azure md:c_h-icon-box--lg mb-5"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="user-secret" class="svg-inline--fa fa-user-secret " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 16c-6.7 0-10.8-2.8-15.5-6.1C201.9 5.4 194 0 176 0c-30.5 0-52 43.7-66 89.4C62.7 98.1 32 112.2 32 128c0 14.3 25 27.1 64.6 35.9c-.4 4-.6 8-.6 12.1c0 17 3.3 33.2 9.3 48H45.4C38 224 32 230 32 237.4c0 1.7 .3 3.4 1 5l38.8 96.9C28.2 371.8 0 423.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-58.5-28.2-110.4-71.7-143L415 242.4c.6-1.6 1-3.3 1-5c0-7.4-6-13.4-13.4-13.4H342.7c6-14.8 9.3-31 9.3-48c0-4.1-.2-8.1-.6-12.1C391 155.1 416 142.3 416 128c0-15.8-30.7-29.9-78-38.6C324 43.7 302.5 0 272 0c-18 0-25.9 5.4-32.5 9.9c-4.8 3.3-8.8 6.1-15.5 6.1zm56 208H267.6c-16.5 0-31.1-10.6-36.3-26.2c-2.3-7-12.2-7-14.5 0c-5.2 15.6-19.9 26.2-36.3 26.2H168c-22.1 0-40-17.9-40-40V169.6c28.2 4.1 61 6.4 96 6.4s67.8-2.3 96-6.4V184c0 22.1-17.9 40-40 40zm-88 96l16 32L176 480 128 288l64 32zm128-32L272 480 240 352l16-32 64-32z"></path></svg></figure><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Time Detective</h3><p class="text-gray-700 dark:text-white text-lg">Monitor your application's background jobs and processes.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Explore feature</div></div></div></a></div></section><section class="relative py-16 md:py-24 bg-gray-900 dark"><div class="relative c-container max-w-5xl space-y-4 text-center border-gray-200 dark:border-gray-800 dark:text-white rounded-lg"><div class="relative self-center space-y-4 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--5xl-fluid text-balance">What our customers think</h2><p class="max-w-2xl mx-auto text-gray-700 dark:text-white dark:opacity-80 c_h-text--xl-fluid">1500+ development teams rely on AppSignal to ship code with confidence. We are sharing a few of their stories with you.</p></div><p class="pb-10"><a class="c-button c-button--white c-button--sm" href="/customers">Read customer stories →</a></p><ul class="max-w-5xl grid sm:grid-cols-2 md:grid-cols-4 dark:text-white border-gray-200 dark:border-white dark:border-opacity-10 gap-4 text-center text-sm mb-10"></ul><ul class="relative flex flex-wrap justify-center items-center text-center"><li class="w-1/2 sm:w-auto p-4"><span class="dark:block w-full mx-auto"><img alt="Logo of Depfu" loading="lazy" width="84" height="33" decoding="async" data-nimg="1" style="color:transparent" src="/assets/components/logos/logo-depfu-dark.svg"/></span></li><li class="w-1/2 sm:w-auto p-4"><span class="dark:block w-full mx-auto"><img alt="Logo of Moneybird" loading="lazy" width="144" height="24" decoding="async" data-nimg="1" style="color:transparent" src="/assets/components/logos/logo-moneybird-dark.svg"/></span></li><li class="w-1/2 sm:w-auto p-4"><span class="dark:block w-full mx-auto"><img alt="Logo of Userlist" loading="lazy" width="95" height="28" decoding="async" data-nimg="1" style="color:transparent" src="/assets/components/logos/logo-userlist-dark.svg"/></span></li><li class="w-1/2 sm:w-auto p-4"><span class="dark:block w-full mx-auto"><img alt="Logo of Codesandbox" loading="lazy" width="29" height="33" decoding="async" data-nimg="1" style="color:transparent" src="/assets/components/logos/logo-codesandbox-dark.svg"/></span></li></ul></div></section><section class="relative py-24 xl:py-32 bg-white space-y-12 md:space-y-20"><div class="c-container"><header class="relative self-center max-w-4xl space-y-4 text-left sm:text-center mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">The developer driven Python APM</h1><h2 class="c_h-heading dark:text-white c_h-heading--7xl-fluid leading-tighter text-balance">With AppSignal you can</h2></header></div><div class="relative c-container grid grid-cols-1 md:grid-cols-2 md:gap-x-6 xl:gap-x-12 max-w-5xl"><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Visualize Python metrics</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">Create custom dashboards that track key metrics such as real-time response times.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Measure what matters</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">AppSignal is the Python APM with all the tools you need to track any data point within your application.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Monitor popular Python packages</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">From Django to Starlette, AppSignal's Python monitoring supports a wide range of popular packages, giving you deep insights into your application's behavior.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Gain background task insights</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">AppSignal's Celery support gives you actionable insights into background task performance.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Enjoy exceptional error reporting</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">AppSignal puts your monitoring data in context, helping you easily get to the bottom of errors and exceptions.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Always be alert</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">Say goodbye to Python performance paranoia. AppSignal integrates with services like PagerDuty to notify you when critical performance problems occur.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Monitor Redis in real-time</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">Keep your Redis cache under control. AppSignal's Redis support helps you understand and optimize your application's Redis query performance.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Hone in your hosts</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">AppSignal Host Monitoring gives you a 360° view of your host metrics, allowing you to harmonize your hardware and software needs.</p></div></div></div></div></section><section class="relative py-24 xl:py-32 bg-gray-100 space-y-12 md:space-y-20"><div class="c-container"><header class="relative self-center space-y-4 text-left sm:text-center mx-auto max-w-5xl"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">5-Minute Python APM</h1><h2 class="c_h-heading dark:text-white c_h-heading--7xl-fluid leading-tighter text-balance">Zero-effort installation for all major Python frameworks.</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--2xl-fluid">AppSignal is built for ease of use. The installation is effortless, and we'll set most things up automatically. You'll be monitoring exceptions and performance in no time.</p></header></div><div class="prose md:prose-xl mx-auto"><figure data-rehype-pretty-code-figure=""><div class="relative my-8 group-[.is-breakout]:md:my-10 group-[.is-breakout]:md:-mx-6 dark:border dark:border-gray-200 dark:rounded-lg"><div class="group-[.code-header-hidden]:hidden absolute top-0 inset-x-0 bg-gray-800 dark:bg-white text-white dark:text-gray-900 rounded-t-lg overflow-hidden"><div class="flex items-center justify-between pr-4 font-mono text-sm dark:border-b dark:border-gray-200"><div class="h-10"><div class="group-[.is-code-tabs]:hidden flex items-center h-[41px] px-4 sm:px-6 bg-gray-900 dark:bg-gray-100 dark:text-gray-900 dark:border-r dark:border-gray-200">Python</div></div><div class="flex items-center"><button class="group/svg group-[.is-code-tabs]:invisible sm:group-[.is-code-tabs]:visible w-6 h-6 pr-1 -mr-1 flex justify-end items-center hover:cursor-pointer"><svg width="13" height="15" viewBox="0 0 13 15" fill="none" xmlns="http://www.w3.org/2000/svg"><path class="transition fill-gray-300 group-hover/svg:fill-white dark:fill-gray-500 group-hover/svg:dark:fill-gray-600" d="M8.75 13H4.15625C3.30859 13 2.625 12.3164 2.625 11.4688V3.375H0.65625C0.273438 3.375 0 3.67578 0 4.03125V14.0938C0 14.4766 0.273438 14.75 0.65625 14.75H8.09375C8.44922 14.75 8.75 14.4766 8.75 14.0938V13ZM8.75 3.59375V0.75H4.15625C3.77344 0.75 3.5 1.05078 3.5 1.40625V11.4688C3.5 11.8516 3.77344 12.125 4.15625 12.125H11.5938C11.9492 12.125 12.25 11.8516 12.25 11.4688V4.25H9.40625C9.02344 4.25 8.75 3.97656 8.75 3.59375ZM12.0312 2.74609L10.2539 0.96875C10.1172 0.832031 9.95312 0.75 9.78906 0.75H9.625V3.375H12.25V3.21094C12.25 3.04688 12.168 2.88281 12.0312 2.74609Z"></path></svg></button></div></div></div><pre tabindex="0" data-language="python" data-theme="github-dark github-light" data-raw="# Add AppSignal to requirements.txt file appsignal # Run the following commands to install AppSignal pip install -r requirements.txt python -m appsignal install " class="z-0 !m-0 !pl-4 dark:bg-gray-100"><div class="sm:px-2 pt-10 group-[.code-header-hidden]:pt-0"><code data-language="python" data-theme="github-dark github-light" style="display:grid"><span data-line=""><span style="--shiki-dark:#6A737D;--shiki-light:#6A737D"># Add AppSignal to requirements.txt file</span></span> <span data-line=""><span style="--shiki-dark:#E1E4E8;--shiki-light:#24292E">appsignal</span></span> <span data-line=""> </span> <span data-line=""><span style="--shiki-dark:#6A737D;--shiki-light:#6A737D"># Run the following commands to install AppSignal</span></span> <span data-line=""><span style="--shiki-dark:#E1E4E8;--shiki-light:#24292E">pip install </span><span style="--shiki-dark:#F97583;--shiki-light:#D73A49">-</span><span style="--shiki-dark:#E1E4E8;--shiki-light:#24292E">r requirements.txt</span></span> <span data-line=""><span style="--shiki-dark:#E1E4E8;--shiki-light:#24292E">python </span><span style="--shiki-dark:#F97583;--shiki-light:#D73A49">-</span><span style="--shiki-dark:#E1E4E8;--shiki-light:#24292E">m appsignal install</span></span></code></div></pre></div></figure></div></section><section class="relative py-24 xl:py-32 bg-white"><div class="relative c-container grid grid-cols-1 md:grid-cols-2 md:gap-x-6 xl:gap-x-12 max-w-5xl"><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Lightweight agent</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">AppSignal's monitoring agent is built with Rust. It's lightweight, stable and already runs in thousands of applications.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">Dev-to-dev support</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">If you need us, we’re there for you. We’re committed to making AppSignal monitoring great for you and your team.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">GDPR Compatible</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">Got customers in the EU? Our data processing is GDPR compliant.</p></div></div></div><div class="flex break-inside-avoid mb-6 md:mb-12"><figure class="c_h-icon-box c_h-icon-box--green md:c_h-icon-box--lg flex-shrink-0 mr-4 md:mr-6"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="check" class="svg-inline--fa fa-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"></path></svg></figure><div><div class="relative self-center space-y-3 mx-auto"><h2 class="c_h-heading dark:text-white c_h-heading--2xl-fluid text-balance">99.999% Uptime</h2><p class="text-gray-700 dark:text-white dark:opacity-80 text-lg sm:text-xl">If there’s one thing you need to trust, it’s your APM. We're ready to help you monitor, at every scale.</p></div></div></div></div></section><section class="relative py-24 xl:py-32 space-y-12 md:space-y-20"><div class="c-container"><header class="relative self-center max-w-4xl space-y-4 text-left sm:text-center mx-auto"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-700 dark:text-gray-200">Python articles</h1><h2 class="c_h-heading dark:text-white c_h-heading--7xl-fluid leading-tighter text-balance">Insights for days: <br class="hidden md:block"/>Our Python Blog</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--2xl-fluid">Browse some of our top articles for great insights into Python monitoring and performance.</p></header></div><div class="c-container grid gap gap-4 md:gap-6 lg:gap-8 md:grid-cols-2 lg:grid-cols-2 max-w-5xl undefined "><a class="no-underline " target="_blank" rel="noreferrer" href="https://blog.appsignal.com/2025/02/26/an-introduction-to-flask-sqlalchemy-in-python.html"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><figure class="relative h-48 sm:h-64"><img alt="Image of An Introduction to Flask-SQLAlchemy in Python" loading="lazy" decoding="async" data-nimg="fill" class="object-cover object-center" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=640&q=90 640w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=750&q=90 750w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=828&q=90 828w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=1080&q=90 1080w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=1200&q=90 1200w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=1920&q=90 1920w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=2048&q=90 2048w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=3840&q=90 3840w" src="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Fflask-sqlalchemy.jpg&w=3840&q=90"/></figure><div class="flex-grow flex flex-col justify-between p-6"><div><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">An Introduction to Flask-SQLAlchemy in Python</h3><p class="text-gray-700 dark:text-white text-lg">In this article, we'll introduce SQLAlchemy and Flask-SQLAlchemy, highlighting their key features.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Read more</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://blog.appsignal.com/2025/02/12/integrate-appsignal-with-aws-fargate-in-python-flask.html"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><figure class="relative h-48 sm:h-64"><img alt="Image of Integrate AppSignal with AWS Fargate in Python Flask" loading="lazy" decoding="async" data-nimg="fill" class="object-cover object-center" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=640&q=90 640w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=750&q=90 750w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=828&q=90 828w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=1080&q=90 1080w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=1200&q=90 1200w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=1920&q=90 1920w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=2048&q=90 2048w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=3840&q=90 3840w" src="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-02%2Ffargate-python-flask.jpg&w=3840&q=90"/></figure><div class="flex-grow flex flex-col justify-between p-6"><div><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Integrate AppSignal with AWS Fargate in Python Flask</h3><p class="text-gray-700 dark:text-white text-lg">Let's integrate AppSignal with a Flask application running on AWS Fargate.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Read more</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://blog.appsignal.com/2025/01/29/monitor-the-performance-of-your-python-flask-application-with-appsignal.html"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><figure class="relative h-48 sm:h-64"><img alt="Image of Monitor the Performance of Your Python Flask Application with AppSignal" loading="lazy" decoding="async" data-nimg="fill" class="object-cover object-center" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=640&q=90 640w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=750&q=90 750w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=828&q=90 828w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=1080&q=90 1080w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=1200&q=90 1200w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=1920&q=90 1920w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=2048&q=90 2048w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=3840&q=90 3840w" src="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Fpython-flask-perf.jpg&w=3840&q=90"/></figure><div class="flex-grow flex flex-col justify-between p-6"><div><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">Monitor the Performance of Your Python Flask Application with AppSignal</h3><p class="text-gray-700 dark:text-white text-lg">Let's use AppSignal to monitor and improve the performance of your Flask applications.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Read more</div></div></div></a><a class="no-underline " target="_blank" rel="noreferrer" href="https://blog.appsignal.com/2025/01/15/how-to-use-regular-expressions-in-python.html"><div class="flex flex-col h-full overflow-hidden no-underline rounded-lg shadow-sm c_h-box--hover c_h-box c_h-box--white"><figure class="relative h-48 sm:h-64"><img alt="Image of How to Use Regular Expressions in Python" loading="lazy" decoding="async" data-nimg="fill" class="object-cover object-center" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 768px) 800px, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=640&q=90 640w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=750&q=90 750w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=828&q=90 828w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=1080&q=90 1080w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=1200&q=90 1200w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=1920&q=90 1920w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=2048&q=90 2048w, /_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=3840&q=90 3840w" src="/_next/image?url=https%3A%2F%2Fblog.appsignal.com%2Fimages%2Fblog%2F2025-01%2Freg-ex-python.jpg&w=3840&q=90"/></figure><div class="flex-grow flex flex-col justify-between p-6"><div><div class="space-y-3"><h3 class="c_h-heading dark:text-white c_h-text--2xl-fluid">How to Use Regular Expressions in Python</h3><p class="text-gray-700 dark:text-white text-lg">Let's explore the basics of regular expressions in Python, as well as more advanced techniques, real-world use cases, and performance optimization strategies.</p></div></div><div class="block w-max c-button c-button--white c-button--sm md:text-lg mt-5">Read more</div></div></div></a></div></section><section class="relative py-12 md:py-16 bg-gray-800 dark"><div class="relative c-container space-y-5 text-center text-white"><div class="relative self-center space-y-4 mx-auto max-w-xl"><h1 class="c_h-heading c_h-heading--caps font-normal tracking-widest c_h-text--lg-fluid text-gray-300">Start your free trial</h1><h2 class="c_h-heading dark:text-white c_h-heading--5xl-fluid text-balance">Don’t let the bad bugs bite. Try AppSignal for free.</h2><p class="text-gray-700 dark:text-white dark:opacity-80 c_h-text--xl-fluid">AppSignal offers a 30-day free trial, no credit card is required. All features are available in all plans. Start monitoring your application in just a few clicks!</p></div><div class="flex gap-x-4 gap-y-2 flex-wrap justify-center"><a class="c-button c-button--base" href="https://appsignal.com/users/sign_up">Start free trial<!-- --> <svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="arrow-right" class="svg-inline--fa fa-arrow-right c-button__icon" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z"></path></svg></a><a class="c-button c-button--base c-button--gray" href="/plans">View pricing</a></div></div></section><!--$--><footer class="relative px-4 py-16 sm:pt-20 xl:pb-28 dark text-gray-300 bg-gray-900"><div class="c-container"><div class="grid grid-cols-1 sm:grid-cols-2 xl:grid-cols-10 gap-x-8 gap-y-10"><div class="col-span-1 sm:col-span-2 xl:col-span-2"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">Features</h2><ul class="space-y-2 sm:columns-2 xl:columns-1"><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="bug" class="svg-inline--fa fa-bug " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0c53 0 96 43 96 96v3.6c0 15.7-12.7 28.4-28.4 28.4H188.4c-15.7 0-28.4-12.7-28.4-28.4V96c0-53 43-96 96-96zM41.4 105.4c12.5-12.5 32.8-12.5 45.3 0l64 64c.7 .7 1.3 1.4 1.9 2.1c14.2-7.3 30.4-11.4 47.5-11.4H312c17.1 0 33.2 4.1 47.5 11.4c.6-.7 1.2-1.4 1.9-2.1l64-64c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3l-64 64c-.7 .7-1.4 1.3-2.1 1.9c6.2 12 10.1 25.3 11.1 39.5H480c17.7 0 32 14.3 32 32s-14.3 32-32 32H416c0 24.6-5.5 47.8-15.4 68.6c2.2 1.3 4.2 2.9 6 4.8l64 64c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0l-63.1-63.1c-24.5 21.8-55.8 36.2-90.3 39.6V240c0-8.8-7.2-16-16-16s-16 7.2-16 16V479.2c-34.5-3.4-65.8-17.8-90.3-39.6L86.6 502.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l64-64c1.9-1.9 3.9-3.4 6-4.8C101.5 367.8 96 344.6 96 320H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H96.3c1.1-14.1 5-27.5 11.1-39.5c-.7-.6-1.4-1.2-2.1-1.9l-64-64c-12.5-12.5-12.5-32.8 0-45.3z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/errors">Error tracking</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="rabbit-running" class="svg-inline--fa fa-rabbit-running " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path fill="currentColor" d="M460.7 39.3l-2.2-2.1c-4.7-4.6-11.5-6.4-17.9-4.7s-11.4 6.6-13.1 13l-.8 2.9c-3.3 11.8-5.1 23.7-5.5 35.6c24.3 20.6 42.9 47.8 53.3 78.8c-8.2-1.9-16.5-2.9-25-2.9c-.6 0-1.1 0-1.7 0c-18.4-44-56.5-77.4-103.6-89.3l-3.4-.9c-6.2-1.6-12.9-.6-18.5 2.6c-10.8 6.2-15.6 19.5-11.2 31.1c14.9 39.5 44.3 71.4 81.4 89.7c-3.7 6.6-6.4 14-7.6 21.8L279.7 154.9C248.8 137.3 213.8 128 178.2 128c-32.3 0-62.2 16.8-78.9 44.4C89 159.9 73.4 152 56 152c-30.9 0-56 25.1-56 56s25.1 56 56 56c11.3 0 21.8-3.3 30.6-9.1c4.9 17.2 14.5 33.1 28.4 45.9L257.2 431.2C269 442 284.4 448 300.4 448H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H352 335.2 320V340.5c0-42.9-28.4-80.5-69.6-92.3l-30.8-8.8c-8.5-2.4-13.4-11.3-11-19.8s11.3-13.4 19.8-11l30.8 8.8c55 15.7 92.8 65.9 92.8 123.1v15.7l56-32.4 6.4-3.7H515.7c33.3 0 60.3-27 60.3-60.3c0-18.1-8.2-35.3-22.2-46.7l-34.6-28.2c-4.6-3.7-9.4-7.1-14.5-10c8.4-49.3-7.8-100-43.9-135.5zm-318.5 382c-14.7 9.8-18.7 29.7-8.9 44.4s29.7 18.7 44.4 8.9l46-30.7-48.6-44.5-32.9 22zM480 240a16 16 0 1 1 32 0 16 16 0 1 1 -32 0z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/performance">Performance monitoring</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="server" class="svg-inline--fa fa-server " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm48 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0zM64 288c-35.3 0-64 28.7-64 64v64c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V352c0-35.3-28.7-64-64-64H64zm280 72a24 24 0 1 1 0 48 24 24 0 1 1 0-48zm56 24a24 24 0 1 1 48 0 24 24 0 1 1 -48 0z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/hosts">Host monitoring</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="siren-on" class="svg-inline--fa fa-siren-on " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M69.3 36l48 32c11 7.4 14 22.3 6.7 33.3s-22.3 14-33.3 6.7l-48-32c-11-7.4-14-22.3-6.7-33.3s22.3-14 33.3-6.7zM597.3 76l-48 32c-11 7.4-25.9 4.4-33.3-6.7s-4.4-25.9 6.7-33.3l48-32c11-7.4 25.9-4.4 33.3 6.7s4.4 25.9-6.7 33.3zM24 192H88c13.3 0 24 10.7 24 24s-10.7 24-24 24H24c-13.3 0-24-10.7-24-24s10.7-24 24-24zm528 0h64c13.3 0 24 10.7 24 24s-10.7 24-24 24H552c-13.3 0-24-10.7-24-24s10.7-24 24-24zM144 352l25-199.9c4-32 31.2-56.1 63.5-56.1h175c32.3 0 59.5 24 63.5 56.1L496 352H234.1l21.8-174c1.1-8.8-5.1-16.8-13.9-17.9s-16.8 5.1-17.9 13.9L201.9 352H144zM96 416c0-17.7 14.3-32 32-32H512c17.7 0 32 14.3 32 32v32c0 17.7-14.3 32-32 32H128c-17.7 0-32-14.3-32-32V416z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/anomaly-detection">Anomaly detection</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="traffic-light" class="svg-inline--fa fa-traffic-light " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V352c0 88.4 71.6 160 160 160s160-71.6 160-160V64c0-35.3-28.7-64-64-64H64zm96 416a48 48 0 1 1 0-96 48 48 0 1 1 0 96zm48-176a48 48 0 1 1 -96 0 48 48 0 1 1 96 0zm-48-80a48 48 0 1 1 0-96 48 48 0 1 1 0 96z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/uptime-monitoring">Uptime monitoring</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/metrics">Metric dashboards</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="users" class="svg-inline--fa fa-users " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path fill="currentColor" d="M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192h42.7c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0H21.3C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7h42.7C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3H405.3zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352H378.7C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7H154.7c-14.7 0-26.7-11.9-26.7-26.7z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/workflow">Workflow</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="line-columns" class="svg-inline--fa fa-line-columns " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M224 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H192c17.7 0 32-14.3 32-32zm0 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM0 320c0 17.7 14.3 32 32 32H192c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM224 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H192c17.7 0 32-14.3 32-32zM288 64c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 192c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32zM288 320c0 17.7 14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H320c-17.7 0-32 14.3-32 32zM512 448c0-17.7-14.3-32-32-32H320c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/log-management">Log management</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gauge-high" class="svg-inline--fa fa-gauge-high " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zM288 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM256 416c35.3 0 64-28.7 64-64c0-17.4-6.9-33.1-18.1-44.6L366 161.7c5.3-12.1-.2-26.3-12.3-31.6s-26.3 .2-31.6 12.3L257.9 288c-.6 0-1.3 0-1.9 0c-35.3 0-64 28.7-64 64s28.7 64 64 64zM176 144a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM96 288a32 32 0 1 0 0-64 32 32 0 1 0 0 64zm352-32a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/automated-dashboards">Automated Dashboards</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="square-check" class="svg-inline--fa fa-square-check " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM337 209L209 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L303 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/check-ins">Check-ins</a></div></div></li><li><div class="flex items-center space-x-3"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="user-secret" class="svg-inline--fa fa-user-secret " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 16c-6.7 0-10.8-2.8-15.5-6.1C201.9 5.4 194 0 176 0c-30.5 0-52 43.7-66 89.4C62.7 98.1 32 112.2 32 128c0 14.3 25 27.1 64.6 35.9c-.4 4-.6 8-.6 12.1c0 17 3.3 33.2 9.3 48H45.4C38 224 32 230 32 237.4c0 1.7 .3 3.4 1 5l38.8 96.9C28.2 371.8 0 423.8 0 482.3C0 498.7 13.3 512 29.7 512H418.3c16.4 0 29.7-13.3 29.7-29.7c0-58.5-28.2-110.4-71.7-143L415 242.4c.6-1.6 1-3.3 1-5c0-7.4-6-13.4-13.4-13.4H342.7c6-14.8 9.3-31 9.3-48c0-4.1-.2-8.1-.6-12.1C391 155.1 416 142.3 416 128c0-15.8-30.7-29.9-78-38.6C324 43.7 302.5 0 272 0c-18 0-25.9 5.4-32.5 9.9c-4.8 3.3-8.8 6.1-15.5 6.1zm56 208H267.6c-16.5 0-31.1-10.6-36.3-26.2c-2.3-7-12.2-7-14.5 0c-5.2 15.6-19.9 26.2-36.3 26.2H168c-22.1 0-40-17.9-40-40V169.6c28.2 4.1 61 6.4 96 6.4s67.8-2.3 96-6.4V184c0 22.1-17.9 40-40 40zm-88 96l16 32L176 480 128 288l64 32zm128-32L272 480 240 352l16-32 64-32z"></path></svg></span><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/tour/time-detective">Time Detective</a></div></div></li></ul></div><div class="col-span-1 xl:col-span-2"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">Resources</h2><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/plans">Plans & pricing</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="https://docs.appsignal.com/" class="no-underline text-white undefined sm:text-lg hover:underline">Documentation</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="https://blog.appsignal.com/" class="no-underline text-white undefined sm:text-lg hover:underline">Blog</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/customers">Customer Stories</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/changelog">Changelog</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/learning-center">Learning Center</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/why">Why AppSignal</a></div></div></li></ul></div><div class="col-span-1 xl:col-span-2"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">Compare</h2><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/alternative/new-relic-alternative">vs New Relic</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/alternative/datadog-alternative">vs Datadog</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/alternative/sentry-alternative">vs Sentry</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/alternative/scout-apm-alternative">vs Scout APM</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/alternative/honeybadger-alternative">vs Honeybadger</a></div></div></li></ul></div><div class="col-span-1 xl:col-span-2"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">Support</h2><p class="text-sm mb-4">Do you need help, have a feature request or just need someone to rubber duck with? Get in touch with one of our engineers.</p><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/contact">Contact us</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="mailto:support@appsignal.com" class="no-underline text-white undefined sm:text-lg hover:underline">Live chat</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="https://status.appsignal.com/" class="no-underline text-white undefined sm:text-lg hover:underline">Status</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/security">Security</a></div></div></li></ul></div><div class="col-span-1 xl:col-span-2"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">About us</h2><p class="text-sm mb-4"><span>AppSignal is located in the beautiful Netherlands. We love<!-- --> <a href="/waffles">stroopwafels</a>. If you do too, <a href="mailto:support@appsignal.com">let us know</a>. We might send you some!</span></p><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/about">About</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/jobs">Jobs</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="https://blog.appsignal.com/write-for-us" class="no-underline text-white undefined sm:text-lg hover:underline">Write for Our Blog</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/diversity">Diversity</a></div></div></li><li><div class="flex items-center space-x-3"><div><a class="no-underline text-white undefined sm:text-lg hover:underline" href="/open-source">Open Source</a></div></div></li><li><div class="flex items-center space-x-3"><div><a href="https://x.com/appsignal" class="no-underline text-white undefined sm:text-lg hover:underline">X</a></div></div></li></ul></div><div class="col-span-1 sm:col-span-2 xl:col-span-10"><h2 class="text-white uppercase tracking-wider font-medium border-b border-gray-700 pb-3 mb-4">Languages</h2><div class="grid grid-cols-1 sm:grid-cols-3 xl:grid-cols-5 gap-6 sm:gap-12"><div class="order-1 sm:order-1 xl:order-1"><ul class="space-y-2 order-1 sm:order-1 xl:order-1"><li><div class="flex items-center space-x-2"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="gem" class="svg-inline--fa fa-gem " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M116.7 33.8c4.5-6.1 11.7-9.8 19.3-9.8H376c7.6 0 14.8 3.6 19.3 9.8l112 152c6.8 9.2 6.1 21.9-1.5 30.4l-232 256c-4.5 5-11 7.9-17.8 7.9s-13.2-2.9-17.8-7.9l-232-256c-7.7-8.5-8.3-21.2-1.5-30.4l112-152zm38.5 39.8c-3.3 2.5-4.2 7-2.1 10.5l57.4 95.6L63.3 192c-4.1 .3-7.3 3.8-7.3 8s3.2 7.6 7.3 8l192 16c.4 0 .9 0 1.3 0l192-16c4.1-.3 7.3-3.8 7.3-8s-3.2-7.6-7.3-8L301.5 179.8l57.4-95.6c2.1-3.5 1.2-8.1-2.1-10.5s-7.9-2-10.7 1L256 172.2 165.9 74.6c-2.8-3-7.4-3.4-10.7-1z"></path></svg></span><div><a class="no-underline text-white text-lg sm:text-lg hover:underline" href="/ruby">Ruby</a></div></div><p class="mt-1"><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/active-record-monitoring">Active Record</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/capistrano-monitoring">Capistrano</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/delayed-job-monitoring">Delayed::Job</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/garbage-collection-monitoring">Garbage Collection</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/global-vm-lock-monitoring">Global VM Lock</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/grape-monitoring">Grape</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/graphql-monitoring">GraphQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/hanami-monitoring">Hanami</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/mongodb-monitoring">MongoDB</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/padrino-monitoring">Padrino</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/puma-monitoring">Puma</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/que-monitoring">Que</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/rails-monitoring">Ruby on Rails</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/rake-monitoring">Rake</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/resque-monitoring">Resque</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/shoryuken-monitoring">Shoryuken</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/sidekiq-monitoring">Sidekiq</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/sinatra-monitoring">Sinatra</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/solid-queue-monitoring">Solid Queue</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/view-component-monitoring">ViewComponent</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/ruby/webmachine-monitoring">Webmachine</a><span class="sm:hidden"></span></span></p></li></ul></div><div class="order-2 sm:order-4 xl:order-2"><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-2"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="droplet" class="svg-inline--fa fa-droplet " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="currentColor" d="M192 512C86 512 0 426 0 320C0 228.8 130.2 57.7 166.6 11.7C172.6 4.2 181.5 0 191.1 0h1.8c9.6 0 18.5 4.2 24.5 11.7C253.8 57.7 384 228.8 384 320c0 106-86 192-192 192zM96 336c0-8.8-7.2-16-16-16s-16 7.2-16 16c0 61.9 50.1 112 112 112c8.8 0 16-7.2 16-16s-7.2-16-16-16c-44.2 0-80-35.8-80-80z"></path></svg></span><div><a class="no-underline text-white text-lg sm:text-lg hover:underline" href="/elixir">Elixir</a></div></div><p class="mt-1"><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/absinthe-monitoring">Absinthe</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/ecto-monitoring">Ecto</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/erlang-monitoring">Erlang</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/finch-monitoring">Finch</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/oban-monitoring">Oban</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/phoenix-monitoring">Phoenix</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/plug-monitoring">Plug</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/elixir/tesla-monitoring">Tesla</a><span class="sm:hidden"></span></span></p></li></ul></div><div class="order-3 sm:order-2 xl:order-3"><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-2"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="node-js" class="svg-inline--fa fa-node-js " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M224 508c-6.7 0-13.5-1.8-19.4-5.2l-61.7-36.5c-9.2-5.2-4.7-7-1.7-8 12.3-4.3 14.8-5.2 27.9-12.7 1.4-.8 3.2-.5 4.6.4l47.4 28.1c1.7 1 4.1 1 5.7 0l184.7-106.6c1.7-1 2.8-3 2.8-5V149.3c0-2.1-1.1-4-2.9-5.1L226.8 37.7c-1.7-1-4-1-5.7 0L36.6 144.3c-1.8 1-2.9 3-2.9 5.1v213.1c0 2 1.1 4 2.9 4.9l50.6 29.2c27.5 13.7 44.3-2.4 44.3-18.7V167.5c0-3 2.4-5.3 5.4-5.3h23.4c2.9 0 5.4 2.3 5.4 5.3V378c0 36.6-20 57.6-54.7 57.6-10.7 0-19.1 0-42.5-11.6l-48.4-27.9C8.1 389.2.7 376.3.7 362.4V149.3c0-13.8 7.4-26.8 19.4-33.7L204.6 9c11.7-6.6 27.2-6.6 38.8 0l184.7 106.7c12 6.9 19.4 19.8 19.4 33.7v213.1c0 13.8-7.4 26.7-19.4 33.7L243.4 502.8c-5.9 3.4-12.6 5.2-19.4 5.2zm149.1-210.1c0-39.9-27-50.5-83.7-58-57.4-7.6-63.2-11.5-63.2-24.9 0-11.1 4.9-25.9 47.4-25.9 37.9 0 51.9 8.2 57.7 33.8.5 2.4 2.7 4.2 5.2 4.2h24c1.5 0 2.9-.6 3.9-1.7s1.5-2.6 1.4-4.1c-3.7-44.1-33-64.6-92.2-64.6-52.7 0-84.1 22.2-84.1 59.5 0 40.4 31.3 51.6 81.8 56.6 60.5 5.9 65.2 14.8 65.2 26.7 0 20.6-16.6 29.4-55.5 29.4-48.9 0-59.6-12.3-63.2-36.6-.4-2.6-2.6-4.5-5.3-4.5h-23.9c-3 0-5.3 2.4-5.3 5.3 0 31.1 16.9 68.2 97.8 68.2 58.4-.1 92-23.2 92-63.4z"></path></svg></span><div><a class="no-underline text-white text-lg sm:text-lg hover:underline" href="/nodejs">Node.js</a></div></div><p class="mt-1"><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/amqplib-monitoring">AMQPlib</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/apollo-gateway-monitoring">Apollo Gateway</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/bullmq-monitoring">BullMQ</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/express-monitoring">Express</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/fastify-monitoring">Fastify</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/graphql-monitoring">GraphQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/knexjs-monitoring">Knex.js</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/koa-monitoring">Koa</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/mongodb-monitoring">MongoDB</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/mongoose-monitoring">Mongoose</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/mysql-monitoring">MySQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/nestjs-monitoring">NestJS</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/nextjs-monitoring">Next.js</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/pino-monitoring">Pino</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/postgresql-monitoring">PostgreSQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/prisma-monitoring">Prisma</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/redis-monitoring">Redis</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/remix-monitoring">Remix</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/restify-monitoring">Restify</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/nodejs/winston-monitoring">Winston</a><span class="sm:hidden"></span></span></p></li></ul></div><div class="order-4 sm:order-5 xl:order-4"><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-2"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="square-js" class="svg-inline--fa fa-square-js " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"></path></svg></span><div><a class="no-underline text-white text-lg sm:text-lg hover:underline" href="/javascript">JavaScript</a></div></div><p class="mt-1"><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/react-monitoring">React</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/vue-monitoring">Vue</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/angular-monitoring">Angular</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/ember-monitoring">Ember</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/preact-monitoring">Preact</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/javascript/stimulus-monitoring">Stimulus</a><span class="sm:hidden"></span></span></p></li></ul></div><div class="order-5 sm:order-3 xl:order-5"><ul class="space-y-2 undefined"><li><div class="flex items-center space-x-2"><span class="h-4 w-4 flex justify-center items-center"><svg aria-hidden="true" focusable="false" data-prefix="fab" data-icon="python" class="svg-inline--fa fa-python " role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"></path></svg></span><div><a class="no-underline text-white text-lg sm:text-lg hover:underline" href="/python">Python</a></div></div><p class="mt-1"><span class="sm:block"><a class="no-underline hover:underline" href="/python/celery-monitoring">Celery</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/django-monitoring">Django</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/fastapi-monitoring">FastAPI</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/flask-monitoring">Flask</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/jinja2-monitoring">Jinja2</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/mysql-monitoring">MySQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/pika-monitoring">Pika</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/postgresql-monitoring">PostgreSQL</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/redis-monitoring">Redis</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/request-monitoring">Request</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/sqlalchemy-monitoring">SQLAlchemy</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/sqlite-monitoring">SQLite</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/starlette-monitoring">Starlette</a><span class="sm:hidden">, </span></span><span class="sm:block"><a class="no-underline hover:underline" href="/python/wsgi-asgi-monitoring">WSGI and ASGI</a><span class="sm:hidden"></span></span></p></li></ul></div></div></div><div class="col-span-1 sm:col-span-2 xl:col-span-10 border-t border-gray-800 pt-6 xl:flex xl:items-center xl:justify-between"><div class="w-[168px] h-[31px] mb-4 xl:mb-0"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 350.92 64.54"><g fill="#fff"><path d="M341.56 12.58c-5.46 0-9.37 4.82-13.39 10.18C325.68 11.38 322.9 0 314.07 0S302.46 11.38 300 22.76c-4-5.36-7.93-10.18-13.39-10.18-3.47 0-9.35 2.37-9.35 11.22v16.11c0 8.69 4.64 10.82 7.42 11.54 4.8 1.25 16.36 2.4 29.37 2.4s24.57-1.15 29.36-2.4c2.79-.72 7.43-2.85 7.43-11.54V23.8c0-8.85-5.88-11.22-9.36-11.22M314.07 5c5.29 0 7.3 10.44 10.12 23-3.09 3.79-6.36 6.86-10.12 6.86S307 31.78 304 28c2.63-11.72 4.65-23 10.12-23m-31.84 34.91V23.8c0-5.59 3-6.2 4.33-6.2 3.85 0 8 6.43 11.94 11.59-2.83 11.71-5.78 18.81-12.75 17.37-1.82-.5-3.52-1.65-3.52-6.65M296 48.05c3-3.35 5-8.58 6.5-14.12 3.23 3.38 6.95 5.93 11.57 5.93s8.33-2.55 11.56-5.93c1.5 5.54 3.47 10.77 6.55 14.12-5.39.5-11.88.79-18.11.79s-12.73-.29-18.12-.79m49.91-8.14c0 5-1.71 6.15-3.52 6.65-7 1.48-9.93-5.66-12.72-17.37 3.95-5.16 8.09-11.59 11.94-11.59 1.3 0 4.34.61 4.34 6.2ZM1.13 52.07a1.12 1.12 0 0 1-.79-.34 1.16 1.16 0 0 1-.34-.85 1.52 1.52 0 0 1 .11-.52L14 13.74a2 2 0 0 1 .62-1 1.81 1.81 0 0 1 1.25-.4h5a1.81 1.81 0 0 1 1.25.4 2.44 2.44 0 0 1 .68 1l13.82 36.62a2.52 2.52 0 0 1 .06.52 1.16 1.16 0 0 1-.34.85 1.12 1.12 0 0 1-.79.34h-3.92a1.4 1.4 0 0 1-1.07-.37 2.41 2.41 0 0 1-.46-.7l-2.89-7.48H9.47L6.63 51a2 2 0 0 1-.48.66 1.5 1.5 0 0 1-1.1.37Zm10.15-14.18H25.4l-7.09-18.82ZM42.52 62.84a1.25 1.25 0 0 1-1.3-1.31V23.89a1.24 1.24 0 0 1 1.3-1.3h3.57a1.25 1.25 0 0 1 1.31 1.3v2.38a11.6 11.6 0 0 1 3.62-3A11.35 11.35 0 0 1 56.58 22a12.67 12.67 0 0 1 5.33 1 10.13 10.13 0 0 1 3.68 2.83 12.56 12.56 0 0 1 2.24 4.26 19.79 19.79 0 0 1 .88 5.21c0 .64.06 1.31.06 2s0 1.34-.06 2a18.1 18.1 0 0 1-.82 5.16 13.14 13.14 0 0 1-2.24 4.22 10.21 10.21 0 0 1-3.71 2.89 12.56 12.56 0 0 1-5.36 1.05 11.36 11.36 0 0 1-5.36-1.16 10.55 10.55 0 0 1-3.54-3v13a1.27 1.27 0 0 1-.37.94 1.38 1.38 0 0 1-1 .37ZM55 47.3a6.63 6.63 0 0 0 4.17-1.16 6.53 6.53 0 0 0 2.18-3 14.43 14.43 0 0 0 .8-4.14 25.8 25.8 0 0 0 0-3.29 14.43 14.43 0 0 0-.8-4.14 6.58 6.58 0 0 0-2.18-3A6.69 6.69 0 0 0 55 27.35a6.44 6.44 0 0 0-6.49 4.22 12.43 12.43 0 0 0-.82 3.77q-.06 1-.06 2.16c0 .79 0 1.53.06 2.21a9.3 9.3 0 0 0 .85 3.6 7.15 7.15 0 0 0 2.38 2.86A6.83 6.83 0 0 0 55 47.3ZM75.71 62.84a1.27 1.27 0 0 1-1.3-1.31V23.89a1.25 1.25 0 0 1 1.3-1.3h3.58a1.29 1.29 0 0 1 .93.36 1.27 1.27 0 0 1 .37.94v2.38a11.53 11.53 0 0 1 3.63-3A11.29 11.29 0 0 1 89.77 22a12.64 12.64 0 0 1 5.33 1 10.16 10.16 0 0 1 3.69 2.83 12.74 12.74 0 0 1 2.21 4.3 20.21 20.21 0 0 1 .88 5.21v4a18.1 18.1 0 0 1-.83 5.16 12.94 12.94 0 0 1-2.24 4.22 10.21 10.21 0 0 1-3.71 2.89 12.53 12.53 0 0 1-5.36 1.05 11.31 11.31 0 0 1-5.35-1.16 10.49 10.49 0 0 1-3.55-3v13a1.27 1.27 0 0 1-.37.94 1.34 1.34 0 0 1-1 .37ZM88.19 47.3a6.1 6.1 0 0 0 6.35-4.19 14.43 14.43 0 0 0 .79-4.11 25.8 25.8 0 0 0 0-3.29 14.43 14.43 0 0 0-.79-4.14 6.1 6.1 0 0 0-6.35-4.19 6.44 6.44 0 0 0-6.5 4.22 12.74 12.74 0 0 0-.82 3.77c0 .64-.05 1.36-.05 2.16s0 1.53.05 2.21a9.3 9.3 0 0 0 .85 3.6 7.15 7.15 0 0 0 2.38 2.86 6.84 6.84 0 0 0 4.09 1.1ZM122.17 52.63a21.18 21.18 0 0 1-8.56-1.53 12.82 12.82 0 0 1-5.27-4 9.44 9.44 0 0 1-1.93-5.25 1.1 1.1 0 0 1 .34-.79 1.15 1.15 0 0 1 .85-.34h4a1.47 1.47 0 0 1 1 .31 2.75 2.75 0 0 1 .57.76 6.36 6.36 0 0 0 1.36 2.39 7.72 7.72 0 0 0 2.86 2 12.06 12.06 0 0 0 4.73.79q4.48 0 6.61-1.53a4.88 4.88 0 0 0 2.12-4.19 3.83 3.83 0 0 0-1.13-2.87 10.56 10.56 0 0 0-3.52-2c-1.58-.6-3.64-1.25-6.17-1.93a36.52 36.52 0 0 1-7-2.55 10.29 10.29 0 0 1-4.19-3.57 9.81 9.81 0 0 1-1.39-5.44 9.72 9.72 0 0 1 1.73-5.67 11.66 11.66 0 0 1 4.93-3.94 18.66 18.66 0 0 1 7.68-1.45 19 19 0 0 1 6.35 1 14 14 0 0 1 4.57 2.55 11.53 11.53 0 0 1 2.77 3.4 8.31 8.31 0 0 1 1 3.57 1.18 1.18 0 0 1-.32.77 1.09 1.09 0 0 1-.87.37h-4.14a1.83 1.83 0 0 1-.88-.23 1.5 1.5 0 0 1-.65-.85 5.22 5.22 0 0 0-2.44-3.46 9.49 9.49 0 0 0-5.39-1.42 10.19 10.19 0 0 0-5.41 1.28 4.35 4.35 0 0 0-2.07 4 4.24 4.24 0 0 0 1 2.89 8.38 8.38 0 0 0 3.18 2 58.53 58.53 0 0 0 5.75 1.9 43.26 43.26 0 0 1 7.76 2.54 10.38 10.38 0 0 1 4.4 3.51 9.64 9.64 0 0 1 1.41 5.42 10 10 0 0 1-1.95 6.2 12.32 12.32 0 0 1-5.44 4 22 22 0 0 1-8.25 1.36ZM143.77 17.37a1.34 1.34 0 0 1-1-.37 1.24 1.24 0 0 1-.37-.93v-3.58a1.34 1.34 0 0 1 .37-1 1.32 1.32 0 0 1 1-.4h4.31a1.39 1.39 0 0 1 1 .4 1.29 1.29 0 0 1 .4 1v3.58a1.2 1.2 0 0 1-.4.93 1.41 1.41 0 0 1-1 .37Zm.34 34.7a1.38 1.38 0 0 1-1-.37 1.27 1.27 0 0 1-.37-.94V23.89a1.27 1.27 0 0 1 .37-.94 1.37 1.37 0 0 1 1-.36h3.69a1.25 1.25 0 0 1 1.3 1.3v26.87a1.27 1.27 0 0 1-.37.94 1.28 1.28 0 0 1-.93.37ZM168.5 64.54a17.5 17.5 0 0 1-6.58-1.05 12.16 12.16 0 0 1-4-2.52 9.27 9.27 0 0 1-2.09-2.97 8.1 8.1 0 0 1-.65-2.38 1.13 1.13 0 0 1 .34-1 1.3 1.3 0 0 1 1-.39h3.86a1.51 1.51 0 0 1 .85.22 1.8 1.8 0 0 1 .56 1 11.19 11.19 0 0 0 1 1.73 5 5 0 0 0 1.93 1.61 7.69 7.69 0 0 0 3.57.68 11 11 0 0 0 4.05-.65 4.82 4.82 0 0 0 2.5-2.3 9.59 9.59 0 0 0 .87-4.47v-3.84a10.93 10.93 0 0 1-3.64 2.79 11.93 11.93 0 0 1-5.38 1.08 12.69 12.69 0 0 1-5.36-1 9.78 9.78 0 0 1-3.69-2.86 13.36 13.36 0 0 1-2.21-4.28 18.82 18.82 0 0 1-.82-5.27q-.06-1.53 0-3.12a18.94 18.94 0 0 1 .8-5.16 12.85 12.85 0 0 1 2.21-4.39 10.34 10.34 0 0 1 3.71-2.94 12.23 12.23 0 0 1 5.36-1.06 11.1 11.1 0 0 1 5.52 1.25 11.77 11.77 0 0 1 3.66 3.06V24a1.37 1.37 0 0 1 .37-1 1.31 1.31 0 0 1 1-.39h3.57a1.33 1.33 0 0 1 1.35 1.39v27.39a16.14 16.14 0 0 1-1.38 6.91 10 10 0 0 1-4.4 4.59 16.32 16.32 0 0 1-7.88 1.65Zm-.17-17.69a6.62 6.62 0 0 0 4.11-1.19 7.39 7.39 0 0 0 2.33-3 10.87 10.87 0 0 0 .87-3.71c0-.49.06-1.12.06-1.9s0-1.39-.06-1.84a11.09 11.09 0 0 0-.87-3.74 7.13 7.13 0 0 0-2.33-3 6.74 6.74 0 0 0-4.11-1.16 6.85 6.85 0 0 0-4.17 1.16 6.49 6.49 0 0 0-2.24 3 14.43 14.43 0 0 0-.79 4.14v2.84a14.62 14.62 0 0 0 .79 4.11 6.52 6.52 0 0 0 2.24 3.06 6.85 6.85 0 0 0 4.17 1.23ZM190.13 52.07a1.38 1.38 0 0 1-1-.37 1.31 1.31 0 0 1-.37-.94V23.89a1.31 1.31 0 0 1 .37-.94 1.37 1.37 0 0 1 1-.36h3.63a1.25 1.25 0 0 1 1.31 1.3v2.44a12.29 12.29 0 0 1 3.8-3.09 11.91 11.91 0 0 1 5.72-1.24 11.34 11.34 0 0 1 6.12 1.59 10.28 10.28 0 0 1 3.92 4.41 15.55 15.55 0 0 1 1.37 6.77v16a1.25 1.25 0 0 1-.4.94 1.39 1.39 0 0 1-1 .37h-3.92a1.28 1.28 0 0 1-.93-.37 1.27 1.27 0 0 1-.37-.94V35.06a8.33 8.33 0 0 0-1.79-5.67 6.45 6.45 0 0 0-5.13-2 6.84 6.84 0 0 0-5.18 2 7.83 7.83 0 0 0-2 5.67v15.7a1.22 1.22 0 0 1-.4.94 1.37 1.37 0 0 1-1 .37ZM230.92 52.63a11.76 11.76 0 0 1-5.25-1.16 9.93 9.93 0 0 1-3.74-3.09 7.31 7.31 0 0 1-1.39-4.38 7.42 7.42 0 0 1 3.18-6.27 18.1 18.1 0 0 1 8.39-3.09l8-1.19v-1.4a5.5 5.5 0 0 0-1.36-4c-.91-.94-2.42-1.41-4.54-1.41a6.9 6.9 0 0 0-3.74.9 5.22 5.22 0 0 0-2 2.44 1.32 1.32 0 0 1-1.25.74h-3.51a1.2 1.2 0 0 1-.94-.34 1.34 1.34 0 0 1-.31-.91 5.88 5.88 0 0 1 .71-2.12 8.28 8.28 0 0 1 2.07-2.5 11.76 11.76 0 0 1 3.66-2 15.47 15.47 0 0 1 5.35-.82 17.06 17.06 0 0 1 5.9.88 9.93 9.93 0 0 1 3.8 2.35 9.17 9.17 0 0 1 2.07 3.4 12.46 12.46 0 0 1 .65 4v18.1a1.22 1.22 0 0 1-.4.94 1.37 1.37 0 0 1-1 .37h-3.63a1.25 1.25 0 0 1-1.3-1.31v-2.38a9.3 9.3 0 0 1-2 2 10.74 10.74 0 0 1-3 1.62 13.85 13.85 0 0 1-4.42.63Zm1.59-4.82a8.24 8.24 0 0 0 3.91-.93A6.74 6.74 0 0 0 239.2 44a10.38 10.38 0 0 0 1-4.88v-1.4l-6.13 1a13.25 13.25 0 0 0-5.52 1.75 3.66 3.66 0 0 0-1.85 3.06 3.46 3.46 0 0 0 .85 2.41 5.33 5.33 0 0 0 2.16 1.42 8 8 0 0 0 2.8.45ZM254.47 52.07a1.25 1.25 0 0 1-1.3-1.31V13.12a1.25 1.25 0 0 1 1.3-1.31h3.74a1.25 1.25 0 0 1 1.3 1.31v37.64a1.25 1.25 0 0 1-1.3 1.31Z"></path></g></svg></div><ul><li class="mb-2 xl:mb-0 sm:inline-block sm:mr-4 sm:last:mr-0 xl:mr-12"><a class="no-underline hover:underline" href="/terms">Terms & Conditions</a></li><li class="mb-2 xl:mb-0 sm:inline-block sm:mr-4 sm:last:mr-0 xl:mr-12"><a class="no-underline hover:underline" href="/privacy-policy">Privacy Policy</a></li><li class="mb-2 xl:mb-0 sm:inline-block sm:mr-4 sm:last:mr-0 xl:mr-12"><a class="no-underline hover:underline" href="/cookie-policy">Cookie Policy</a></li><li class="mb-2 xl:mb-0 sm:inline-block sm:mr-4 sm:last:mr-0 xl:mr-12"><a href="https://docs.appsignal.com/appsignal/gdpr.html" class="no-underline hover:underline">GDPR compliance</a></li><li class="mb-2 xl:mb-0 sm:inline-block sm:mr-4 sm:last:mr-0 xl:mr-12"><a class="no-underline hover:underline" href="/contact">Contact us / Imprint</a></li></ul></div></div></div></footer><!--/$--></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"cards":[{"title":"An Introduction to Flask-SQLAlchemy in Python","paragraph":"In this article, we'll introduce SQLAlchemy and Flask-SQLAlchemy, highlighting their key features.","src":"https://blog.appsignal.com/images/blog/2025-02/flask-sqlalchemy.jpg","href":"https://blog.appsignal.com/2025/02/26/an-introduction-to-flask-sqlalchemy-in-python.html","tags":["python, python-wizardry"],"size":"lg","btnText":"Read more"},{"title":"Integrate AppSignal with AWS Fargate in Python Flask","paragraph":"Let's integrate AppSignal with a Flask application running on AWS Fargate.","src":"https://blog.appsignal.com/images/blog/2025-02/fargate-python-flask.jpg","href":"https://blog.appsignal.com/2025/02/12/integrate-appsignal-with-aws-fargate-in-python-flask.html","tags":["python, python-wizardry, academy"],"size":"lg","btnText":"Read more"},{"title":"Monitor the Performance of Your Python Flask Application with AppSignal","paragraph":"Let's use AppSignal to monitor and improve the performance of your Flask applications.","src":"https://blog.appsignal.com/images/blog/2025-01/python-flask-perf.jpg","href":"https://blog.appsignal.com/2025/01/29/monitor-the-performance-of-your-python-flask-application-with-appsignal.html","tags":["python, python-wizardry, academy"],"size":"lg","btnText":"Read more"},{"title":"How to Use Regular Expressions in Python","paragraph":"Let's explore the basics of regular expressions in Python, as well as more advanced techniques, real-world use cases, and performance optimization strategies.","src":"https://blog.appsignal.com/images/blog/2025-01/reg-ex-python.jpg","href":"https://blog.appsignal.com/2025/01/15/how-to-use-regular-expressions-in-python.html","tags":["python, python-wizardry"],"size":"lg","btnText":"Read more"}]},"__N_SSG":true},"page":"/python","query":{},"buildId":"mV-PJqh_dsOZivM1Kd8BQ","isFallback":false,"isExperimentalCompile":false,"gsp":true,"scriptLoader":[]}</script></body></html>