diff --git a/static/app/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding.tsx b/static/app/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding.tsx index eb4c694861e22..becca7de5ca1b 100644 --- a/static/app/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding.tsx +++ b/static/app/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding.tsx @@ -110,7 +110,7 @@ export const getCrashReportModalConfigDescription = ({link}: {link: string}) => {code: , link: } ); -export const getCrashReportModalSnippetJavaScript = params => [ +const getCrashReportModalSnippetJavaScript = params => [ { code: [ { @@ -167,6 +167,20 @@ export function getCrashReportSDKInstallFirstStep(params) { }; } +const getGenericScript = params => [ + { + label: 'HTML', + value: 'html', + language: 'html', + code: ``, + }, +]; + export const getCrashReportGenericInstallStep = params => [ { type: StepType.INSTALL, @@ -182,19 +196,28 @@ export const getCrashReportGenericInstallStep = params => [ codeLast: , } ), - code: [ + code: getGenericScript(params), + }, + ], + }, +]; + +export const getCrashReportBackendInstallStep = params => [ + { + type: StepType.INSTALL, + configurations: [ + getCrashReportSDKInstallFirstStep(params), + { + description: tct( + 'You will then need to call [codeShow:showReportDialog] and pass in the generated event ID. This event ID is returned from all calls to [codeEvent:capture_event] and [codeException:capture_exception]. There is also a function called [codeLast:last_event_id] that returns the ID of the most recently sent event.', { - label: 'HTML', - value: 'html', - language: 'html', - code: ``, - }, - ], + codeShow: , + codeEvent: , + codeException: , + codeLast: , + } + ), + code: getGenericScript(params), }, ], }, diff --git a/static/app/gettingStartedDocs/python/aiohttp.tsx b/static/app/gettingStartedDocs/python/aiohttp.tsx index e1f2308154561..1993af2b5d6ed 100644 --- a/static/app/gettingStartedDocs/python/aiohttp.tsx +++ b/static/app/gettingStartedDocs/python/aiohttp.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -147,6 +148,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/asgi.tsx b/static/app/gettingStartedDocs/python/asgi.tsx index 35d8e1855bbe3..bbda5ee5c3626 100644 --- a/static/app/gettingStartedDocs/python/asgi.tsx +++ b/static/app/gettingStartedDocs/python/asgi.tsx @@ -6,6 +6,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -139,6 +140,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/awslambda.tsx b/static/app/gettingStartedDocs/python/awslambda.tsx index 1051289fa6b0d..b3f9a639d1f40 100644 --- a/static/app/gettingStartedDocs/python/awslambda.tsx +++ b/static/app/gettingStartedDocs/python/awslambda.tsx @@ -9,6 +9,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; import {space} from 'sentry/styles/space'; @@ -141,6 +142,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/bottle.tsx b/static/app/gettingStartedDocs/python/bottle.tsx index 08364d35a70e6..45b1ccbc822ce 100644 --- a/static/app/gettingStartedDocs/python/bottle.tsx +++ b/static/app/gettingStartedDocs/python/bottle.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -131,6 +132,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/celery.tsx b/static/app/gettingStartedDocs/python/celery.tsx index 7396ce233479a..9aafb194f02f1 100644 --- a/static/app/gettingStartedDocs/python/celery.tsx +++ b/static/app/gettingStartedDocs/python/celery.tsx @@ -11,6 +11,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; import {space} from 'sentry/styles/space'; @@ -185,6 +186,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/chalice.tsx b/static/app/gettingStartedDocs/python/chalice.tsx index 5f00f5a97f961..436fb64d679c6 100644 --- a/static/app/gettingStartedDocs/python/chalice.tsx +++ b/static/app/gettingStartedDocs/python/chalice.tsx @@ -5,6 +5,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -107,6 +108,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/django.tsx b/static/app/gettingStartedDocs/python/django.tsx index 8e223041d4ea1..a3660458278ce 100644 --- a/static/app/gettingStartedDocs/python/django.tsx +++ b/static/app/gettingStartedDocs/python/django.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -140,6 +141,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/falcon.tsx b/static/app/gettingStartedDocs/python/falcon.tsx index 6a5f81a5ec96a..d1294600ce985 100644 --- a/static/app/gettingStartedDocs/python/falcon.tsx +++ b/static/app/gettingStartedDocs/python/falcon.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -134,6 +135,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/fastapi.tsx b/static/app/gettingStartedDocs/python/fastapi.tsx index 27e2b909943a4..40960718fd0a1 100644 --- a/static/app/gettingStartedDocs/python/fastapi.tsx +++ b/static/app/gettingStartedDocs/python/fastapi.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -135,6 +136,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/flask.tsx b/static/app/gettingStartedDocs/python/flask.tsx index ad570fd3d204f..d3e1ee39d0640 100644 --- a/static/app/gettingStartedDocs/python/flask.tsx +++ b/static/app/gettingStartedDocs/python/flask.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -134,6 +135,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/gcpfunctions.tsx b/static/app/gettingStartedDocs/python/gcpfunctions.tsx index adbb0ce77de8c..4edc944648cfb 100644 --- a/static/app/gettingStartedDocs/python/gcpfunctions.tsx +++ b/static/app/gettingStartedDocs/python/gcpfunctions.tsx @@ -9,6 +9,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; import {space} from 'sentry/styles/space'; @@ -134,6 +135,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/mongo.tsx b/static/app/gettingStartedDocs/python/mongo.tsx index 1453ab6397ae7..9d1acc05999e0 100644 --- a/static/app/gettingStartedDocs/python/mongo.tsx +++ b/static/app/gettingStartedDocs/python/mongo.tsx @@ -6,6 +6,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -81,6 +82,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/pylons.tsx b/static/app/gettingStartedDocs/python/pylons.tsx index 55443f357da2c..f51a5bc1217be 100644 --- a/static/app/gettingStartedDocs/python/pylons.tsx +++ b/static/app/gettingStartedDocs/python/pylons.tsx @@ -4,6 +4,7 @@ import type { DocsParams, OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -112,6 +113,7 @@ const onboarding: OnboardingConfig = { const docs: Docs = { onboarding, + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/pyramid.tsx b/static/app/gettingStartedDocs/python/pyramid.tsx index d137a211e781d..53472193b9ad5 100644 --- a/static/app/gettingStartedDocs/python/pyramid.tsx +++ b/static/app/gettingStartedDocs/python/pyramid.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -104,6 +105,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/python.tsx b/static/app/gettingStartedDocs/python/python.tsx index 9ea426a486edf..ba6ad114bbc28 100644 --- a/static/app/gettingStartedDocs/python/python.tsx +++ b/static/app/gettingStartedDocs/python/python.tsx @@ -4,6 +4,11 @@ import type { DocsParams, OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; +import { + getCrashReportBackendInstallStep, + getCrashReportModalConfigDescription, + getCrashReportModalIntroduction, +} from 'sentry/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import {t, tct} from 'sentry/locale'; @@ -81,11 +86,27 @@ const onboarding: OnboardingConfig = { ], }; +export const crashReportOnboardingPython: OnboardingConfig = { + introduction: () => getCrashReportModalIntroduction(), + install: (params: Params) => getCrashReportBackendInstallStep(params), + configure: () => [ + { + type: StepType.CONFIGURE, + description: getCrashReportModalConfigDescription({ + link: 'https://docs.sentry.io/platforms/python/user-feedback/configuration/#crash-report-modal', + }), + }, + ], + verify: () => [], + nextSteps: () => [], +}; + const docs: Docs = { onboarding, customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/quart.tsx b/static/app/gettingStartedDocs/python/quart.tsx index cc74e01e0c1da..2cd1d9e1e368b 100644 --- a/static/app/gettingStartedDocs/python/quart.tsx +++ b/static/app/gettingStartedDocs/python/quart.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -131,6 +132,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/rq.tsx b/static/app/gettingStartedDocs/python/rq.tsx index 8cf0d740f9566..9f5c1aed4a5e3 100644 --- a/static/app/gettingStartedDocs/python/rq.tsx +++ b/static/app/gettingStartedDocs/python/rq.tsx @@ -8,6 +8,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -195,6 +196,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/sanic.tsx b/static/app/gettingStartedDocs/python/sanic.tsx index a6320c6b1abbe..acc7e6589199b 100644 --- a/static/app/gettingStartedDocs/python/sanic.tsx +++ b/static/app/gettingStartedDocs/python/sanic.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -115,6 +116,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/serverless.tsx b/static/app/gettingStartedDocs/python/serverless.tsx index d7108c29aa5b6..48a731979d40f 100644 --- a/static/app/gettingStartedDocs/python/serverless.tsx +++ b/static/app/gettingStartedDocs/python/serverless.tsx @@ -8,6 +8,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -124,6 +125,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/starlette.tsx b/static/app/gettingStartedDocs/python/starlette.tsx index 71f7948191ee9..0727bcbc0fc53 100644 --- a/static/app/gettingStartedDocs/python/starlette.tsx +++ b/static/app/gettingStartedDocs/python/starlette.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -130,6 +131,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/tornado.tsx b/static/app/gettingStartedDocs/python/tornado.tsx index cab556de668dc..aeaf37145ef29 100644 --- a/static/app/gettingStartedDocs/python/tornado.tsx +++ b/static/app/gettingStartedDocs/python/tornado.tsx @@ -7,6 +7,7 @@ import type { } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; import replayOnboardingJsLoader from 'sentry/gettingStartedDocs/javascript/jsLoader/jsLoader'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -150,6 +151,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/tryton.tsx b/static/app/gettingStartedDocs/python/tryton.tsx index 2273f5abdab48..61a9f1672d4cb 100644 --- a/static/app/gettingStartedDocs/python/tryton.tsx +++ b/static/app/gettingStartedDocs/python/tryton.tsx @@ -5,6 +5,7 @@ import type { DocsParams, OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -90,6 +91,7 @@ const onboarding: OnboardingConfig = { const docs: Docs = { onboarding, + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/python/wsgi.tsx b/static/app/gettingStartedDocs/python/wsgi.tsx index 70751bf5a888c..199ee1ef27e1c 100644 --- a/static/app/gettingStartedDocs/python/wsgi.tsx +++ b/static/app/gettingStartedDocs/python/wsgi.tsx @@ -8,6 +8,7 @@ import type { OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; import {getPythonMetricsOnboarding} from 'sentry/components/onboarding/gettingStartedDoc/utils/metricsOnboarding'; +import {crashReportOnboardingPython} from 'sentry/gettingStartedDocs/python/python'; import {t, tct} from 'sentry/locale'; type Params = DocsParams; @@ -146,6 +147,7 @@ const docs: Docs = { customMetricsOnboarding: getPythonMetricsOnboarding({ installSnippet: getInstallSnippet(), }), + crashReportOnboarding: crashReportOnboardingPython, }; export default docs; diff --git a/static/app/gettingStartedDocs/rust/rust.tsx b/static/app/gettingStartedDocs/rust/rust.tsx index d31bbf76b8c37..ae31bdcd87526 100644 --- a/static/app/gettingStartedDocs/rust/rust.tsx +++ b/static/app/gettingStartedDocs/rust/rust.tsx @@ -5,6 +5,11 @@ import type { DocsParams, OnboardingConfig, } from 'sentry/components/onboarding/gettingStartedDoc/types'; +import { + getCrashReportBackendInstallStep, + getCrashReportModalConfigDescription, + getCrashReportModalIntroduction, +} from 'sentry/components/onboarding/gettingStartedDoc/utils/feedbackOnboarding'; import {t, tct} from 'sentry/locale'; import {getPackageVersion} from 'sentry/utils/gettingStartedDocs/getPackageVersion'; @@ -158,9 +163,25 @@ const customMetricsOnboarding: OnboardingConfig = { ], }; +const crashReportOnboarding: OnboardingConfig = { + introduction: () => getCrashReportModalIntroduction(), + install: (params: Params) => getCrashReportBackendInstallStep(params), + configure: () => [ + { + type: StepType.CONFIGURE, + description: getCrashReportModalConfigDescription({ + link: 'https://docs.sentry.io/platforms/rust/user-feedback/configuration/#crash-report-modal', + }), + }, + ], + verify: () => [], + nextSteps: () => [], +}; + const docs: Docs = { onboarding, customMetricsOnboarding, + crashReportOnboarding, }; export default docs;