如果需要测试PHP应用程序错误处理程序,则必须“模拟”或仅禁用Sentry客户端中远程服务器上的发送错误。什么是正确的方法?
这是Laravel的示例,但是这种方法适用于任何框架。
use Sentry\Client;
use Sentry\EventFactory;
use Sentry\Options;
use Sentry\Serializer\RepresentationSerializer;
use Sentry\Serializer\Serializer;
use Sentry\Transport\NullTransport;
private function mockSentry(): void
{
/** @var \Sentry\State\Hub $sentry */
$sentry = $this->app['sentry']; // Get sentry object from Laravel's container
$client = new Client(
new Options(),
new NullTransport(),
new EventFactory(
new Serializer(new Options()),
new RepresentationSerializer(new Options()),
new Options(),
'1',
'1',
),
);
$sentry->bindClient($client);
}