12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import {Fragment} from 'react';
- import ExternalLink from 'sentry/components/links/externalLink';
- import {Layout, LayoutProps} from 'sentry/components/onboarding/gettingStartedDoc/layout';
- import {ModuleProps} from 'sentry/components/onboarding/gettingStartedDoc/sdkDocumentation';
- import {StepType} from 'sentry/components/onboarding/gettingStartedDoc/step';
- import {t, tct} from 'sentry/locale';
- // Configuration Start
- export const steps = ({
- dsn,
- }: {
- dsn?: string;
- } = {}): LayoutProps['steps'] => [
- {
- type: StepType.INSTALL,
- description: (
- <Fragment>
- <p>
- {tct(
- 'It is recommended to use an [link:integration for your particular WSGI framework if available], as those are easier to use and capture more useful information.',
- {
- link: (
- <ExternalLink href="https://docs.sentry.io/platforms/python/#web-frameworks" />
- ),
- }
- )}
- </p>
- {t(
- 'If you use a WSGI framework not directly supported by the SDK, or wrote a raw WSGI app, you can use this generic WSGI middleware. It captures errors and attaches a basic amount of information for incoming requests.'
- )}
- </Fragment>
- ),
- configurations: [
- {
- language: 'python',
- code: `
- import sentry_sdk
- from sentry_sdk.integrations.wsgi import SentryWsgiMiddleware
- from myapp import wsgi_app
- sentry_sdk.init(
- dsn="${dsn}",
- # Set traces_sample_rate to 1.0 to capture 100%
- # of transactions for performance monitoring.
- # We recommend adjusting this value in production,
- traces_sample_rate=1.0,
- )
- wsgi_app = SentryWsgiMiddleware(wsgi_app)
- `,
- },
- ],
- },
- ];
- // Configuration End
- export function GettingStartedWithWSGI({dsn, ...props}: ModuleProps) {
- return <Layout steps={steps({dsn})} {...props} />;
- }
- export default GettingStartedWithWSGI;
|