error-tracker-adapter-email
, (*1)
Send email reports on exceptions, using the Tracker interface from error-tracker-adapter, (*2)
Installation
The recommended way to install is through Composer:, (*3)
$ 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., (*4)
<?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., (*5)
Unit Tests
In order to run the test suite, install the developement dependencies:, (*6)
$ composer install --dev
Then, run the following command:, (*7)
$ 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., (*8)
Versioning
Follows Semantic Versioning., (*9)
License
MIT license. For the full copyright and license information, please read the LICENSE file that was distributed with this source code., (*10)