소스 검색

Make IntrospectionProcessor extendable (#1899)

Luboš Hubáček 1 년 전
부모
커밋
3327c29d37
1개의 변경된 파일9개의 추가작업 그리고 5개의 파일을 삭제
  1. 9 5
      src/Monolog/Processor/IntrospectionProcessor.php

+ 9 - 5
src/Monolog/Processor/IntrospectionProcessor.php

@@ -29,18 +29,22 @@ use Monolog\LogRecord;
  */
 class IntrospectionProcessor implements ProcessorInterface
 {
-    private Level $level;
+    protected Level $level;
 
     /** @var string[] */
-    private array $skipClassesPartials;
+    protected array $skipClassesPartials;
 
-    private int $skipStackFramesCount;
+    protected int $skipStackFramesCount;
 
-    private const SKIP_FUNCTIONS = [
+    protected const SKIP_FUNCTIONS = [
         'call_user_func',
         'call_user_func_array',
     ];
 
+    protected const SKIP_CLASSES = [
+        'Monolog\\',
+    ];
+
     /**
      * @param string|int|Level $level               The minimum logging level at which this Processor will be triggered
      * @param string[]         $skipClassesPartials
@@ -50,7 +54,7 @@ class IntrospectionProcessor implements ProcessorInterface
     public function __construct(int|string|Level $level = Level::Debug, array $skipClassesPartials = [], int $skipStackFramesCount = 0)
     {
         $this->level = Logger::toMonologLevel($level);
-        $this->skipClassesPartials = array_merge(['Monolog\\'], $skipClassesPartials);
+        $this->skipClassesPartials = array_merge(static::SKIP_CLASSES, $skipClassesPartials);
         $this->skipStackFramesCount = $skipStackFramesCount;
     }