feature #10534 [SwiftMailer] [MonologBundle] send error log mails from CLI (arodiss)
This PR was merged into the 2.5-dev branch.
Discussion
----------
[SwiftMailer] [MonologBundle] send error log mails from CLI
| Q | A
| ------------- | ---
| Bug fix? | yes
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| License | MIT
Given I have symfony2 application with Monolog configured to send mail on error logs.
When I have exception thrown from CLI task
Then I should receive error mail
However this is not true because `Monolog/SwiftMailerHandler` is doing force flush only on `kernel.terminate`, but not on `console.terminate`
This PR fixes issue together with https://github.com/symfony/MonologBundle/pull/73
Commits
-------
9bb602f
added explicit swiftmailer flush after ConsoleEvents::TERMINATE
This commit is contained in:
commit
790ba4cb3d
@ -12,6 +12,7 @@
|
|||||||
namespace Symfony\Bridge\Monolog\Handler;
|
namespace Symfony\Bridge\Monolog\Handler;
|
||||||
|
|
||||||
use Monolog\Handler\SwiftMailerHandler as BaseSwiftMailerHandler;
|
use Monolog\Handler\SwiftMailerHandler as BaseSwiftMailerHandler;
|
||||||
|
use Symfony\Component\Console\Event\ConsoleTerminateEvent;
|
||||||
use Symfony\Component\HttpKernel\Event\PostResponseEvent;
|
use Symfony\Component\HttpKernel\Event\PostResponseEvent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -43,6 +44,16 @@ class SwiftMailerHandler extends BaseSwiftMailerHandler
|
|||||||
$this->instantFlush = true;
|
$this->instantFlush = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* After the CLI application has been terminated we will always flush messages
|
||||||
|
*
|
||||||
|
* @param ConsoleTerminateEvent $event
|
||||||
|
*/
|
||||||
|
public function onCliTerminate(ConsoleTerminateEvent $event)
|
||||||
|
{
|
||||||
|
$this->instantFlush = true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user