morrislaptop / error-tracker-adapter-email
Send email reports on exceptions
Requires
- league/commonmark: 0.7.*
- morrislaptop/error-tracker-adapter: dev-master
- swiftmailer/swiftmailer: ~5.3
- symfony/var-dumper: ~2.6
- tijsverkoyen/css-to-inline-styles: ~1.5
Requires (Dev)
- guzzlehttp/guzzle: ~5.2
- phpspec/phpspec: ~2.1
- phpunit/phpunit: ~4.5
This package is auto-updated.
Last update: 2024-10-26 04:03:23 UTC
README
Send email reports on exceptions, using the Tracker interface from error-tracker-adapter
Installation
The recommended way to install is through Composer:
$ composer require morrislaptop/error-tracker-adapter-email
Usage
The use of this library is a reporter and not a renderer. So it's recommended that you handle exceptions in your application with your own class and then report to this library if it's the right error type and/or environment.
<?php // Setup dependencies (much easier with a IoC container) $transport = new Swift_SendmailTransport(); $mailer = new Swift_Mailer($transport); $message = new Swift_Message(); $message->addTo('craig.michael.morris@gmail.com'); $message->setFrom('craig.michael.morris@gmail.com'); $body = new Body(new VarCloner(), new CliDumper()); $compiler = new Compiler(new CommonMarkConverter(), new CssToInlineStyles()); // Create reporter $email = new Email($mailer, $message, $body, $compiler); // Act. $exception = new DomainException('Testing a domain exception'); $email->report($exception, ['only' => 'testing', 'user' => Session::all()]);
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
See CONTRIBUTING file.
Unit Tests
In order to run the test suite, install the developement dependencies:
$ composer install --dev
Then, run the following command:
$ phpunit && phpspec run
MailTrap is used to check that emails are sent in the integration tests. You may copy phpunit.xml.dist and set your API keys in there to complete your tests.
Versioning
Follows Semantic Versioning.
License
MIT license. For the full copyright and license information, please read the LICENSE file that was distributed with this source code.