crassula / google-cloud-error-reporting-bundle
Symfony bundle for Google Cloud Error Reporting
Installs: 23 874
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 12
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=7.4
- google/cloud-error-reporting: ^v0.15.0
- symfony/config: ^3.3|^4.0
- symfony/console: ^3.3|^4.0
- symfony/dependency-injection: ^3.3|^4.0
- symfony/event-dispatcher: ^3.3|^4.0
- symfony/http-foundation: ^3.3|^4.0
- symfony/http-kernel: ^3.3|^4.0
- symfony/monolog-bridge: ^3.3|^4.0
- symfony/options-resolver: ^3.3|^4.0
- symfony/security: ^3.3|^4.1.12
- symfony/security-bundle: ^3.3|^4.0
README
This bundle provides integration with Google Cloud Error Reporting in your Symfony project.
Note: This bundle uses Google Cloud Error Reporting for PHP package, which currently is in alpha stage, so BC breaks to be expected.
Prerequisites
This bundle requires Symfony 3.3+. Additionally you may want to install grpc and protobuf PECL extensions.
Installation
Add crassula/google-cloud-error-reporting-bundle
to your composer.json file:
$ composer require crassula/google-cloud-error-reporting-bundle
Register the bundle in app/AppKernel.php:
public function registerBundles() { return array( // ... new Crassula\Bundle\GoogleCloudErrorReportingBundle\CrassulaGoogleCloudErrorReportingBundle(), ); }
Authentication
Please see Google's Authentication guide for information on authenticating the client. Once authenticated, you'll be ready to start making requests.
Configuration
Minimal configuration in your app/config/config.yml
:
crassula_google_cloud_error_reporting: enabled: true project_id: project-12345 service: app_name client_options: credentials: /etc/gcp_credentials.json
By default error reporting is disabled, so you have to explicitly enable it where you need it (e.g. in app/config/config_prod.yml
).
For full configuration reference run:
$ bin/console config:dump-reference CrassulaGoogleCloudErrorReportingBundle
Sample
use Crassula\Bundle\GoogleCloudErrorReportingBundle\Service\ErrorReporter; try { $this->doFaultyOperation(); } catch (\Exception $e) { $container->get(ErrorReporter::class)->report($e); }
You can additionally pass options as a second argument:
Notes
About automatic error reporting
When config option use_listeners
is enabled, bundle registers event listeners for kernel.exception
and console.error
events with priority 2048.
Errors are reported on kernel.terminate
and console.terminate
.
This option is enabled by default.
Exception handling
Reporter catches and logs exceptions related to bad configuration of Google Cloud Error Reporting package.
License
This package is available under the MIT license.