diff --git a/src/Monolog/Handler/FingersCrossedHandler.php b/src/Monolog/Handler/FingersCrossedHandler.php index 30a85dd6..6036c15e 100644 --- a/src/Monolog/Handler/FingersCrossedHandler.php +++ b/src/Monolog/Handler/FingersCrossedHandler.php @@ -36,6 +36,7 @@ class FingersCrossedHandler extends AbstractHandler protected $buffer = array(); protected $stopBuffering; protected $passthruLevel; + protected $overrideActivated = false; /** * @param callable|HandlerInterface $handler Handler or factory callable($record, $fingersCrossedHandler). @@ -79,6 +80,14 @@ class FingersCrossedHandler extends AbstractHandler return true; } + /** + * Manually activate this logger regardless of the activation strategy + */ + public function activate() + { + $this->overrideActivated = true; + } + /** * {@inheritdoc} */ @@ -95,7 +104,7 @@ class FingersCrossedHandler extends AbstractHandler if ($this->bufferSize > 0 && count($this->buffer) > $this->bufferSize) { array_shift($this->buffer); } - if ($this->activationStrategy->isHandlerActivated($record)) { + if ($this->overrideActivated || $this->activationStrategy->isHandlerActivated($record)) { if ($this->stopBuffering) { $this->buffering = false; }