FriendsOfFlarum Sentry
MikeJones there are a couple of issues with the latest version that introduces performance monitoring. I have planned to take a look at it.
- Performance is dramatically impacted on larger communities, which might relate to:
- Hitting a 404 page causes query timeouts/locks just try hitting
<yourUrl>/somethingrandom
Would be great if you could confirm the same happens for you ️
Just checking if there are plans to update this extension? Its my last one before upgrade to stable. If not no worries, I may just uninstall it.
That's cool - thanks @IanM!
I've installed Sentry after the update to Flarum 1.0 on the weekend, but once I enabled backend performance monitoring sending emails seems to be affected on my setup? Not sure if it's related to any specific extension in use.
The stacktrace (the first 1/3, as it's quite long) was:
[2021-07-01 17:55:05] flarum.ERROR: Exception: Error: Call to protected method FoF\Sentry\SentryServiceProvider::handleError() from scope Sentry\ErrorHandler in /vwr/www/flarum/vendor/sentry/sentry/src/ErrorHandler.php:303
Stack trace:
#0 /vwr/www/flarum/vendor/fof/pretty-mail/src/BladeCompiler.php(28) : eval()'d code(40): Sentry\ErrorHandler->handleError()
#1 /vwr/www/flarum/vendor/fof/pretty-mail/src/BladeCompiler.php(28): eval()
#2 /vwr/www/flarum/vendor/fof/pretty-mail/src/Mailer.php(74): FoF\PrettyMail\BladeCompiler::render()
#3 /vwr/www/flarum/vendor/flarum/core/src/Api/Controller/SendTestMailController.php(43): FoF\PrettyMail\Mailer->raw()
#4 /vwr/www/flarum/vendor/flarum/core/src/Http/RouteHandlerFactory.php(41): Flarum\Api\Controller\SendTestMailController->handle()
#5 /vwr/www/flarum/vendor/flarum/core/src/Http/Middleware/ExecuteRoute.php(27): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
#6 /vwr/www/flarum/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ExecuteRoute->process()
#7 /vwr/www/flarum/vendor/reflar/recache/src/Middlewares/OptimizeImages.php(43): Laminas\Stratigility\Next->handle()
#8 /vwr/www/flarum/vendor/laminas/laminas-stratigility/src/Next.php(51): Reflar\ReCache\Middlewares\OptimizeImages->process()
#9 /vwr/www/flarum/vendor/fof/sentry/src/Middleware/HandleErrorsWithSentry.php(39): Laminas\Stratigility\Next->handle()
#10 /vwr/www/flarum/vendor/laminas/laminas-stratigility/src/Next.php(51): FoF\Sentry\Middleware\HandleErrorsWithSentry->process()
#11 /vwr/www/flarum/vendor/kilowhat/flarum-ext-audit-free/src/Middlewares/SetLoggerActor.php(28): Laminas\Stratigility\Next->handle()
#12 /vwr/www/flarum/vendor/laminas/laminas-stratigility/src/Next.php(51): Kilowhat\Audit\Middlewares\SetLoggerActor->process()
#13 /vwr/www/flarum/vendor/flarum/core/src/Api/Middleware/ThrottleApi.php(33): Laminas\Stratigility\Next->handle()
#14 /vwr/www/flarum/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\ThrottleApi->process()
pkernstock thanks for letting me know, should be pretty straightforward to fix. I’ll get to it as soon as I can
- Edited
IanM I committed the change, feel free to test/tag
pkernstock feel free to give dev-master a spin so that @IanM only needs to tag
luceos Again, and as always, thanks a lot! Enabled backend monitoring, restarted redis, triggered test email and it was still working.
1.0.1
- Fix method visibility (thanks for the fast PR @luceos ) pkernstock
Installation
composer require fof/sentry:"*"
1.1.0
- Use default settings extender
- Webpack5
1.1.1
- fix: broken sentry JS asset compilation with Webpack 5
Full Changelog: https://github.com/FriendsOfFlarum/sentry/compare/1.1.0...1.1.1
I know this extension being at minimum maintenance, but I'd like to see @luceos's redis-queue support being added or some sort of synchronous error reporting.
Since updating a few extensions and going up to PHP 8.1, there're a few new deprecation warnings. I know those aren't critical nor caused by Flarum itself, but the errors very, very noticeably impact each interaction with the forum.
When enabling Sentry extension, visiting any discussion, the page takes about 2 seconds to load - without Sentry like 4x faster. I'm pretty sure that's because the extension is firing HTTPS API calls to Sentry to log those errors, as it's supposed to do.
For completeness, sharing the two errors Sentry is reporting:
[2022-09-08 02:42:45] flarum.ERROR: ErrorException: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /var/customers/webs/apeters/community.mailcow.email/vendor/illuminate/database/Query/Builder.php:849
[...]
[2022-09-08 02:43:28] flarum.ERROR: ErrorException: Accessing static trait property Askvortsov\FlarumPWA\PWATrait::$SIZES is deprecated, it should only be accessed on a class using the trait in /var/customers/webs/apeters/community.mailcow.email/vendor/askvortsov/flarum-pwa/extend.php:74
- Edited
1.3.0
- Sentry 7 update, profiling, and session replays (FriendsOfFlarum/sentry28)
- Update Sentry to v7; generate separate tracing & non-tracing bundles
- Add support for Session Replay -- a separate bundle as well, optional feature
- Add support for Sentry PHP performance profiling
- This is a slow process, especially with the amount of requests Sentry does
- Requires
Excimer
PHP extension; settings page will show if enabled
- Only report email in PHP if enabled
Using the same features as in v1.2.0, the bundle size is up to 20-50 KB
smaller. Enabling session replays increases it by ~150 kB
.
If your forum is slowing down due to Sentry making requests, consider setting up a Sentry Relay on the same server to diminish the time spent on outgoing requests. Sentry Relays don't support 'User Feedback' though, so v1.3.1 contains a separate setting for PHP-only DSN where the Relay can be used without issue.