jop-software / typo3-sentry-client
TYPO3 的 Sentry 客户端
Requires
- php: ^7.4 || ^8.0
- php-http/curl-client: ^2.2
- sentry/sentry: ^3.3
- typo3/cms-core: ^11.5
Requires (Dev)
- jop-software/demo-extension: @dev
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^1.0
- phpunit/phpunit: ^9
- saschaegerer/phpstan-typo3: ^1.0
- squizlabs/php_codesniffer: ^3.6
- ssch/typo3-rector: ^1.0
- typo3/minimal: ^v11.5.0
- typo3/testing-framework: ^6.10
README
此 TYPO3 扩展允许您将发生在 TYPO3 安装中的异常发送到 Sentry。
专业支持
提供专业支持,如需更多信息,请联系 info@jop-software.de。
安装
通过 composer 安装此 TYPO3 扩展。
composer require jop-software/typo3-sentry-client
注意:目前不支持在非 composer 安装的 TYPO3 上安装,因为我们依赖于一些 composer 包。有关更多信息,请参阅 问题 #4。
配置
配置支持通过 TYPO3 扩展配置和环境变量。在 TYPO3 后端中,请参阅 设置 > 扩展配置 > typo3_sentry_client。
您可以使用环境变量来 覆盖 这些设置。
###> jop-software/typo3-sentry-client SetEnv SENTRY_ACTIVE true SetEnv SENTRY_DSN http://publicKey@your-sentry.tld/projectId SetEnv SENTRY_ENVIRONMENT Production SetEnv SENTRY_TRACES_SAMPLE_RATE 1.0 SetEnv SENTRY_RELEASE 9.10.19 SetEnv SENTRY_ERROR_LEVEL 32767 # See https://php.ac.cn/manual/en/errorfunc.constants.php ###< jop-software/typo3-sentry-client
将 productionExceptionHandler / debugExceptionHandler 添加到您的 LocalConfiguration.php 或 AdditionalConfiguration.php 文件中。
$GLOBALS['TYPO3_CONF_VARS']['SYS']['productionExceptionHandler'] = 'Jops\TYPO3\Sentry\Handler\ProductionExceptionHandler'; $GLOBALS['TYPO3_CONF_VARS']['SYS']['debugExceptionHandler'] = 'Jops\TYPO3\Sentry\Handler\DebugExceptionHandler';
多环境
如果您为多个环境(如生产/开发)使用相同的 .htaccess 文件,则可以将
SetEnv SENTRY_ENVIRONMENT Production
移动到 TYPO3 htaccess 的 ApplicationContext 部分。例如:
# Rules to set ApplicationContext based on hostname RewriteCond %{HTTP_HOST} ^dev\.example\.com$ RewriteRule .? - [E=TYPO3_CONTEXT:Development,E=SENTRY_ENVIRONMENT:Development] RewriteCond %{HTTP_HOST} ^staging\.example\.com$ RewriteRule .? - [E=TYPO3_CONTEXT:Production/Staging,E=SENTRY_ENVIRONMENT:Production-Staging] RewriteCond %{HTTP_HOST} ^www\.example\.com$ RewriteRule .? - [E=TYPO3_CONTEXT:Production,E=SENTRY_ENVIRONMENT:Production]
本地开发
我们使用 DDEV 进行本地开发。使用此扩展,您将获得完整的 TYPO3 DDEV 设置。输入 ddev start 启动容器。
无头
如果您使用 EXT:headless,您可以使用官方的 @nuxtjs/sentry 模块进行前端。有关详细信息,请参阅 此处。
此扩展本身可以与 EXT:headless 无任何已知问题地一起使用。
许可证
本项目采用 GPL-2.0-or-later 许可,有关更多信息,请参阅 LICENSE 文件。
© 2022-2023, jop-software Inh. Johannes Przymusinski