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 const introduction = (
{tct(
'Symfony is supported via the [code:sentry-symfony] package as a native bundle.',
{code: }
)}
{tct('Install the [code:sentry/sentry-symfony] bundle:', {code: })}
{tct(
'Due to a bug in all versions below "6.0" of the [sensioFrameworkExtraBundleCode:SensioFrameworkExtraBundle] bundle, you will likely receive an error during the execution of the command above related to the missing [nyholmPsr7FactoryPsr17FactoryCode:NyholmPsr7FactoryPsr17Factory] class. To workaround the issue, if you are not using the PSR-7 bridge, please change the configuration of that bundle as follows:',
{
sensioFrameworkExtraBundleCode: ,
nyholmPsr7FactoryPsr17FactoryCode:
,
}
)}
{tct(
'For more details about the issue see [link:https://github.com/sensiolabs/SensioFrameworkExtraBundle/pull/710].',
{
link: (
{tct('Add your DSN to [code:config/packages/sentry.yaml]:', {code: })}
{tct('And in your [code:.env] file:', {code: })}
{tct(
'To test that both logger error and exception are correctly sent to [sentryLink:sentry.io], you can create the following controller:',
{
sentryLink:
{tct(
"After you visit the [code:/_sentry-test page], you can view and resolve the recorded error by logging into [sentryLink:sentry.io] and opening your project. Clicking on the error's title will open a page where you can see detailed information and mark it as resolved.",
{sentryLink: }
)}
{t( 'The process of logging the events that took place during a request, often across multiple services are enabled by default. To use them, update to the latest version of the SDK.' )}
{tct(
'These integrations hook into critical paths of the framework and of the vendors. As a result, there may be a performance penalty. To disable tracing, please see the [integrationDocumentationLink:Integrations documentation].',
{
integrationDocumentationLink: (
{tct(
"If you [strong:are not] using Symfony Flex, you'll also need to enable the bundle in [code:config/bundles.php]:",
{
code: ,
strong: ,
}
)}
{tct(
'If you are using [monologLink:Monolog] to report events instead of the typical error listener approach, you need this additional configuration to log the errors correctly:',
{
monologLink:
{tct(
'f you are using a version of [monologBundleLink:MonologBundle] prior to [code:3.7], you need to configure the handler as a service instead:',
{
monologBundleLink: (
,
}
)}
{tct(
'Additionally, you can register the [code:PsrLogMessageProcessor] to resolve PSR-3 placeholders in reported messages:',
{
code: ,
}
)}