Skip to content

Commit 2d3f0c4

Browse files
committed
Add CubeHandler support, refs #4
1 parent bdcae08 commit 2d3f0c4

File tree

3 files changed

+19
-0
lines changed

3 files changed

+19
-0
lines changed

DependencyInjection/Configuration.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,11 @@
127127
* - [level]: level name or int value, defaults to DEBUG
128128
* - [bubble]: bool, defaults to true
129129
*
130+
* - cube:
131+
* - url: http/udp url to the cube server
132+
* - [level]: level name or int value, defaults to DEBUG
133+
* - [bubble]: bool, defaults to true
134+
*
130135
* - null:
131136
* - [level]: level name or int value, defaults to DEBUG
132137
* - [bubble]: bool, defaults to true
@@ -187,6 +192,7 @@ public function getConfigTreeBuilder()
187192
->booleanNode('stop_buffering')->defaultTrue()->end()// fingers_crossed
188193
->scalarNode('buffer_size')->defaultValue(0)->end() // fingers_crossed and buffer
189194
->scalarNode('handler')->end() // fingers_crossed and buffer
195+
->scalarNode('url')->end() // cube
190196
->scalarNode('room')->end() // hipchat
191197
->scalarNode('notify')->defaultFalse()->end() // hipchat
192198
->scalarNode('nickname')->defaultValue('Monolog')->end() // hipchat
@@ -399,6 +405,10 @@ public function getConfigTreeBuilder()
399405
->ifTrue(function($v) { return 'hipchat' === $v['type'] && (empty($v['token']) || empty($v['room'])); })
400406
->thenInvalid('The token and room have to be specified to use a HipChatHandler')
401407
->end()
408+
->validate()
409+
->ifTrue(function($v) { return 'cube' === $v['type'] && empty($v['url']); })
410+
->thenInvalid('The url has to be specified to use a CubeHandler')
411+
->end()
402412
->end()
403413
->validate()
404414
->ifTrue(function($v) { return isset($v['debug']); })

DependencyInjection/MonologExtension.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,14 @@ private function buildHandler(ContainerBuilder $container, $name, array $handler
319319
));
320320
break;
321321

322+
case 'cube':
323+
$definition->setArguments(array(
324+
$handler['url'],
325+
$handler['level'],
326+
$handler['bubble'],
327+
));
328+
break;
329+
322330
case 'raven':
323331
$clientId = 'monolog.raven.client.' . sha1($handler['dsn']);
324332
if (!$container->hasDefinition($clientId)) {

Resources/config/monolog.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
<parameter key="monolog.handler.raven.class">Monolog\Handler\RavenHandler</parameter>
2727
<parameter key="monolog.handler.newrelic.class">Monolog\Handler\NewRelicHandler</parameter>
2828
<parameter key="monolog.handler.hipchat.class">Monolog\Handler\HipChatHandler</parameter>
29+
<parameter key="monolog.handler.cube.class">Monolog\Handler\CubeHandler</parameter>
2930

3031
<parameter key="monolog.handler.fingers_crossed.class">Monolog\Handler\FingersCrossedHandler</parameter>
3132
<parameter key="monolog.handler.fingers_crossed.error_level_activation_strategy.class">Monolog\Handler\FingersCrossed\ErrorLevelActivationStrategy</parameter>

0 commit comments

Comments
 (0)