@@ -19,7 +19,7 @@ use Monolog\Logger;
* @author Nick Otter
* @author Jordi Boggiano <j.boggiano@seld.be>
*/
-class GitProcessor
+class GitProcessor implements ProcessorInterface
{
private $level;
private static $cache;
@@ -24,7 +24,7 @@ use Monolog\Logger;
*
-class IntrospectionProcessor
+class IntrospectionProcessor implements ProcessorInterface
@@ -16,7 +16,7 @@ namespace Monolog\Processor;
* @author Rob Jensen
-abstract class MemoryProcessor
+abstract class MemoryProcessor implements ProcessorInterface
/**
* @var bool If true, get the real size of memory allocated from system. Else, only the memory used by emalloc() is reported.
@@ -18,7 +18,7 @@ use Monolog\Logger;
* @author Jonathan A. Schweder <jonathanschweder@gmail.com>
-class MercurialProcessor
+class MercurialProcessor implements ProcessorInterface
* @author Andreas Hörnicke
-class ProcessIdProcessor
+class ProcessIdProcessor implements ProcessorInterface
* @param array $record
@@ -0,0 +1,25 @@
+<?php
+
+/*
+ * This file is part of the Monolog package.
+ *
+ * (c) Jordi Boggiano <j.boggiano@seld.be>
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+namespace Monolog\Processor;
+/**
+ * An optional interface to allow labelling Monolog processors.
+ * @author Nicolas Grekas <p@tchwork.com>
+interface ProcessorInterface
+{
+ /**
+ * @return array The processed records
+ public function __invoke(array $records);
+}
@@ -18,7 +18,7 @@ namespace Monolog\Processor;
-class PsrLogMessageProcessor
+class PsrLogMessageProcessor implements ProcessorInterface
* @author Martijn Riemers
-class TagProcessor
+class TagProcessor implements ProcessorInterface
private $tags;
* @author Simon Mönch <sm@webfactory.de>
-class UidProcessor
+class UidProcessor implements ProcessorInterface
private $uid;
-class WebProcessor
+class WebProcessor implements ProcessorInterface
* @var array|\ArrayAccess