-
-
Notifications
You must be signed in to change notification settings - Fork 648
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update the Sentry recipe #1586
Update the Sentry recipe #1586
Conversation
Thanks for the PR 😍 How to test these changes in your application
Diff between recipe versionsIn order to help with the review stage, I'm in charge of computing the diff between the various versions of patched recipes. sentry/sentry-symfony1.0 vs 3.0diff --git a/sentry/sentry-symfony/1.0/config/packages/prod/sentry.yaml b/sentry/sentry-symfony/3.0/config/packages/prod/sentry.yaml
index 342036fe..5285a224 100644
--- a/sentry/sentry-symfony/1.0/config/packages/prod/sentry.yaml
+++ b/sentry/sentry-symfony/3.0/config/packages/prod/sentry.yaml
@@ -1,2 +1,31 @@
sentry:
dsn: '%env(SENTRY_DSN)%'
+ options:
+ excluded_exceptions:
+ - Symfony\Component\HttpKernel\Exception\NotFoundHttpException
+ - Symfony\Component\Security\Core\Exception\AccessDeniedException
+
+# If you are using Monolog, you also need this additional configuration to log the errors correctly:
+# https://docs.sentry.io/platforms/php/guides/symfony/#monolog-integration
+# register_error_listener: false
+
+# monolog:
+# handlers:
+# sentry:
+# type: sentry
+# level: !php/const Monolog\Logger::ERROR
+# hub_id: Sentry\State\HubInterface
+
+# If you are using MonologBundle prior to v3.7, you need to configure the handler as a service instead:
+
+# monolog:
+# handlers:
+# sentry:
+# type: service
+# id: Sentry\Monolog\Handler
+
+# services:
+# Sentry\Monolog\Handler:
+# arguments:
+# $hub: '@Sentry\State\HubInterface'
+# $level: !php/const Monolog\Logger::ERROR
diff --git a/sentry/sentry-symfony/1.0/config/packages/sentry.yaml b/sentry/sentry-symfony/1.0/config/packages/sentry.yaml
deleted file mode 100644
index e94da2d6..00000000
--- a/sentry/sentry-symfony/1.0/config/packages/sentry.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-sentry:
- options:
- curl_method: async
-
-# skip_capture: # To skip certain exceptions, specify a list below
-# - 'Symfony\Component\HttpKernel\Exception\NotFoundHttpException'
-# - 'Symfony\Component\HttpKernel\Exception\BadRequestHttpException'
-# - 'Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException'
diff --git a/sentry/sentry-symfony/1.0/manifest.json b/sentry/sentry-symfony/3.0/manifest.json
index c96ec90e..097e7e84 100644
--- a/sentry/sentry-symfony/1.0/manifest.json
+++ b/sentry/sentry-symfony/3.0/manifest.json
@@ -1,6 +1,6 @@
{
"bundles": {
- "Sentry\\SentryBundle\\SentryBundle": ["all"]
+ "Sentry\\SentryBundle\\SentryBundle": ["prod"]
},
"copy-from-recipe": {
"config/": "%CONFIG_DIR%/" 3.0 vs 4.0diff --git a/sentry/sentry-symfony/3.0/config/packages/prod/sentry.yaml b/sentry/sentry-symfony/3.0/config/packages/prod/sentry.yaml
deleted file mode 100644
index 5285a224..00000000
--- a/sentry/sentry-symfony/3.0/config/packages/prod/sentry.yaml
+++ /dev/null
@@ -1,31 +0,0 @@
-sentry:
- dsn: '%env(SENTRY_DSN)%'
- options:
- excluded_exceptions:
- - Symfony\Component\HttpKernel\Exception\NotFoundHttpException
- - Symfony\Component\Security\Core\Exception\AccessDeniedException
-
-# If you are using Monolog, you also need this additional configuration to log the errors correctly:
-# https://docs.sentry.io/platforms/php/guides/symfony/#monolog-integration
-# register_error_listener: false
-
-# monolog:
-# handlers:
-# sentry:
-# type: sentry
-# level: !php/const Monolog\Logger::ERROR
-# hub_id: Sentry\State\HubInterface
-
-# If you are using MonologBundle prior to v3.7, you need to configure the handler as a service instead:
-
-# monolog:
-# handlers:
-# sentry:
-# type: service
-# id: Sentry\Monolog\Handler
-
-# services:
-# Sentry\Monolog\Handler:
-# arguments:
-# $hub: '@Sentry\State\HubInterface'
-# $level: !php/const Monolog\Logger::ERROR
diff --git a/sentry/sentry-symfony/4.0/config/packages/sentry.yaml b/sentry/sentry-symfony/4.0/config/packages/sentry.yaml
new file mode 100644
index 00000000..48635325
--- /dev/null
+++ b/sentry/sentry-symfony/4.0/config/packages/sentry.yaml
@@ -0,0 +1,29 @@
+when@prod:
+ sentry:
+ dsn: '%env(SENTRY_DSN)%'
+
+# If you are using Monolog, you also need this additional configuration to log the errors correctly:
+# https://docs.sentry.io/platforms/php/guides/symfony/#monolog-integration
+# register_error_listener: false
+
+# monolog:
+# handlers:
+# sentry:
+# type: sentry
+# level: !php/const Monolog\Logger::ERROR
+# hub_id: Sentry\State\HubInterface
+
+# If you are using MonologBundle prior to v3.7, you need to configure the handler as a service instead:
+
+# monolog:
+# handlers:
+# sentry:
+# type: service
+# id: Sentry\Monolog\Handler
+
+# services:
+# Sentry\Monolog\Handler:
+# arguments:
+# $hub: '@Sentry\State\HubInterface'
+# $level: !php/const Monolog\Logger::ERROR
+# $bubble: false
diff --git a/sentry/sentry-symfony/3.0/manifest.json b/sentry/sentry-symfony/4.0/manifest.json
index 097e7e84..9e07f9cc 100644
--- a/sentry/sentry-symfony/3.0/manifest.json
+++ b/sentry/sentry-symfony/4.0/manifest.json
@@ -7,5 +7,8 @@
},
"env": {
"SENTRY_DSN": ""
+ },
+ "conflict": {
+ "symfony/framework-bundle": "<5.4"
}
} 4.0 vs 4.6diff --git a/sentry/sentry-symfony/4.0/config/packages/sentry.yaml b/sentry/sentry-symfony/4.6/config/packages/sentry.yaml
index 48635325..9e4a04e8 100644
--- a/sentry/sentry-symfony/4.0/config/packages/sentry.yaml
+++ b/sentry/sentry-symfony/4.6/config/packages/sentry.yaml
@@ -1,10 +1,16 @@
when@prod:
sentry:
dsn: '%env(SENTRY_DSN)%'
+ # this hooks into critical paths of the framework (and vendors) to perform
+ # automatic instrumentation (there might be some performance penalty)
+ # https://docs.sentry.io/platforms/php/guides/symfony/performance/instrumentation/automatic-instrumentation/
+ tracing:
+ enabled: false
# If you are using Monolog, you also need this additional configuration to log the errors correctly:
# https://docs.sentry.io/platforms/php/guides/symfony/#monolog-integration
# register_error_listener: false
+# register_error_handler: false
# monolog:
# handlers:
@@ -13,17 +19,8 @@ when@prod:
# level: !php/const Monolog\Logger::ERROR
# hub_id: Sentry\State\HubInterface
-# If you are using MonologBundle prior to v3.7, you need to configure the handler as a service instead:
-
-# monolog:
-# handlers:
-# sentry:
-# type: service
-# id: Sentry\Monolog\Handler
-
+# Uncomment these lines to register a log message processor that resolves PSR-3 placeholders
+# https://docs.sentry.io/platforms/php/guides/symfony/#monolog-integration
# services:
-# Sentry\Monolog\Handler:
-# arguments:
-# $hub: '@Sentry\State\HubInterface'
-# $level: !php/const Monolog\Logger::ERROR
-# $bubble: false
+# Monolog\Processor\PsrLogMessageProcessor:
+# tags: { name: monolog.processor, handler: sentry }
diff --git a/sentry/sentry-symfony/4.0/manifest.json b/sentry/sentry-symfony/4.6/manifest.json
index 9e07f9cc..9922cfe2 100644
--- a/sentry/sentry-symfony/4.0/manifest.json
+++ b/sentry/sentry-symfony/4.6/manifest.json
@@ -9,6 +9,7 @@
"SENTRY_DSN": ""
},
"conflict": {
- "symfony/framework-bundle": "<5.4"
+ "symfony/framework-bundle": "<5.4",
+ "symfony/monolog-bundle": "<3.7"
}
} |
# automatic instrumentation (there might be some performance penalty) | ||
# https://docs.sentry.io/platforms/php/guides/symfony/performance/instrumentation/automatic-instrumentation/ | ||
tracing: | ||
enabled: true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would set it to false by default as it impacts performance (and we've been hit by that significantly in the past for some of our projects).
enabled: true | |
enabled: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, I've just set it to false
by default.
Updated the recipe according to:
I know thatUpdate: we set this option totracing.enabled: true
is the default option and we try to not add the default values to recipes to make them simpler. But this is a very important option that can impact the performance of your application, so I think it's fair to show this option prominently.false
by default