BEAR.SundayアプリケーションのエラーとパフォーマンスをSentryでモニタリングします。
composer require pj8/sentry-module
use BEAR\Package\AbstractAppModule;
use BEAR\Package\Context\ProdModule as PackageProdModule;
use BEAR\Sunday\Extension\Error\ErrorInterface;
use Pj8\SentryModule\SentryModule;
use Pj8\SentryModule\SentryErrorHandler;
class ProdModule extends AbstractAppModule
{
protected function configure(): void
{
// ...
$this->install(new PackageProdModule());
// PackageProdModuleの後にSentryModuleをインストール
$this->install(new SentryModule([
'dsn' => 'https://[email protected]/1'
])
$this->rename(ErrorInterface::class, 'original');
$this->bind(ErrorInterface::class)->to(SentryErrorHandler::class);
}
}
パフォーマンス計測するメソッドにMonitorable
属性またはアノテーションを付与します。
use Pj8\SentryModule\Annotation\Monitorable;
#[Monitorable]
public function foo()
{
}
use Pj8\SentryModule\Annotation\Monitorable;
/** @Monitorable **/
public function foo()
{
}
BEAR.Resourceのリソースリクエストを全てモニタリングします。
$this->install(new SentryModule(['dsn' => 'https://[email protected]/1']));
$this->install(new ResourceMonitorModule());