Skip to content

Commit b548c46

Browse files
committed
added configuration options for defining a different activation strategy
1 parent bc649c0 commit b548c46

File tree

3 files changed

+14
-2
lines changed

3 files changed

+14
-2
lines changed

DependencyInjection/Configuration.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public function getConfigTreeBuilder()
6262
->scalarNode('facility')->defaultValue('user')->end() // syslog
6363
->scalarNode('max_files')->defaultValue(0)->end() // rotating
6464
->scalarNode('action_level')->defaultValue('WARNING')->end() // fingers_crossed
65+
->scalarNode('activation_strategy')->end() // fingers_crossed
6566
->booleanNode('stop_buffering')->defaultTrue()->end()// fingers_crossed
6667
->scalarNode('buffer_size')->defaultValue(0)->end() // fingers_crossed and buffer
6768
->scalarNode('handler')->end() // fingers_crossed and buffer

DependencyInjection/MonologExtension.php

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,18 @@ private function buildHandler(ContainerBuilder $container, $name, array $handler
138138
$nestedHandlerId = $this->getHandlerId($handler['handler']);
139139
$this->nestedHandlers[] = $nestedHandlerId;
140140

141+
if (!isset($handler['activation_strategy'])) {
142+
$container
143+
->register($handlerId.'.activation_strategy', '%monolog.handler.fingers_crossed.error_level_activation_strategy.class%')
144+
->addArgument($handler['activation_level'])
145+
;
146+
147+
$handler['activation_strategy'] = $handlerId.'.activation_strategy';
148+
}
149+
141150
$definition->setArguments(array(
142151
new Reference($nestedHandlerId),
143-
$handler['action_level'],
152+
new Reference($handler['activation_strategy']),
144153
$handler['buffer_size'],
145154
$handler['bubble'],
146155
$handler['stop_buffering'],

Resources/config/monolog.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
<parameters>
88
<parameter key="monolog.logger.class">Symfony\Bridge\Monolog\Logger</parameter>
99
<parameter key="monolog.handler.stream.class">Monolog\Handler\StreamHandler</parameter>
10-
<parameter key="monolog.handler.fingers_crossed.class">Monolog\Handler\FingersCrossedHandler</parameter>
1110
<parameter key="monolog.handler.group.class">Monolog\Handler\GroupHandler</parameter>
1211
<parameter key="monolog.handler.buffer.class">Monolog\Handler\BufferHandler</parameter>
1312
<parameter key="monolog.handler.rotating_file.class">Monolog\Handler\RotatingFileHandler</parameter>
@@ -18,6 +17,9 @@
1817
<parameter key="monolog.handler.debug.class">Symfony\Bridge\Monolog\Handler\DebugHandler</parameter>
1918
<parameter key="monolog.handler.swift_mailer.class">Monolog\Handler\SwiftMailerHandler</parameter>
2019
<parameter key="monolog.handler.native_mailer.class">Monolog\Handler\NativeMailerHandler</parameter>
20+
21+
<parameter key="monolog.handler.fingers_crossed.class">Monolog\Handler\FingersCrossedHandler</parameter>
22+
<parameter key="monolog.handler.fingers_crossed.error_level_activation_strategy.class">Monolog\Handler\FingersCrossed\ErrorLevelActivationStrategy</parameter>
2123
</parameters>
2224

2325
<services>

0 commit comments

Comments
 (0)