@@ -356,7 +356,7 @@ public function getConfigTreeBuilder()
356356 $ treeBuilder = new TreeBuilder ('monolog ' );
357357 $ rootNode = method_exists (TreeBuilder::class, 'getRootNode ' ) ? $ treeBuilder ->getRootNode () : $ treeBuilder ->root ('monolog ' );
358358
359- $ handlerNode = $ rootNode
359+ $ handlers = $ rootNode
360360 ->fixXmlConfig ('channel ' )
361361 ->fixXmlConfig ('handler ' )
362362 ->children ()
@@ -365,17 +365,44 @@ public function getConfigTreeBuilder()
365365 ->canBeUnset ()
366366 ->prototype ('scalar ' )->end ()
367367 ->end ()
368- ->arrayNode ('handlers ' )
369- ->canBeUnset ()
370- ->useAttributeAsKey ('name ' )
371- ->prototype ('array ' )
372- ->fixXmlConfig ('member ' )
373- ->fixXmlConfig ('excluded_404 ' )
374- ->fixXmlConfig ('excluded_http_code ' )
375- ->fixXmlConfig ('tag ' )
376- ->fixXmlConfig ('accepted_level ' )
377- ->fixXmlConfig ('header ' )
378- ->canBeUnset ();
368+ ->arrayNode ('handlers ' );
369+
370+ $ handlers
371+ ->canBeUnset ()
372+ ->useAttributeAsKey ('name ' )
373+ ->validate ()
374+ ->ifTrue (function ($ v ) { return isset ($ v ['debug ' ]); })
375+ ->thenInvalid ('The "debug" name cannot be used as it is reserved for the handler of the profiler ' )
376+ ->end ()
377+ ->example ([
378+ 'syslog ' => [
379+ 'type ' => 'stream ' ,
380+ 'path ' => '/var/log/symfony.log ' ,
381+ 'level ' => 'ERROR ' ,
382+ 'bubble ' => 'false ' ,
383+ 'formatter ' => 'my_formatter ' ,
384+ ],
385+ 'main ' => [
386+ 'type ' => 'fingers_crossed ' ,
387+ 'action_level ' => 'WARNING ' ,
388+ 'buffer_size ' => 30 ,
389+ 'handler ' => 'custom ' ,
390+ ],
391+ 'custom ' => [
392+ 'type ' => 'service ' ,
393+ 'id ' => 'my_handler ' ,
394+ ]
395+ ]);
396+
397+ $ handlerNode = $ handlers
398+ ->prototype ('array ' )
399+ ->fixXmlConfig ('member ' )
400+ ->fixXmlConfig ('excluded_404 ' )
401+ ->fixXmlConfig ('excluded_http_code ' )
402+ ->fixXmlConfig ('tag ' )
403+ ->fixXmlConfig ('accepted_level ' )
404+ ->fixXmlConfig ('header ' )
405+ ->canBeUnset ();
379406
380407 $ handlerNode
381408 ->children ()
@@ -712,32 +739,7 @@ public function getConfigTreeBuilder()
712739 ->validate ()
713740 ->ifTrue (function ($ v ) { return 'server_log ' === $ v ['type ' ] && empty ($ v ['host ' ]); })
714741 ->thenInvalid ('The host has to be specified to use a ServerLogHandler ' )
715- ->end ();
716-
717- $ rootNode
718- ->validate ()
719- ->ifTrue (function ($ v ) { return isset ($ v ['debug ' ]); })
720- ->thenInvalid ('The "debug" name cannot be used as it is reserved for the handler of the profiler ' )
721742 ->end ()
722- ->example ([
723- 'syslog ' => [
724- 'type ' => 'stream ' ,
725- 'path ' => '/var/log/symfony.log ' ,
726- 'level ' => 'ERROR ' ,
727- 'bubble ' => 'false ' ,
728- 'formatter ' => 'my_formatter ' ,
729- ],
730- 'main ' => [
731- 'type ' => 'fingers_crossed ' ,
732- 'action_level ' => 'WARNING ' ,
733- 'buffer_size ' => 30 ,
734- 'handler ' => 'custom ' ,
735- ],
736- 'custom ' => [
737- 'type ' => 'service ' ,
738- 'id ' => 'my_handler ' ,
739- ]
740- ])
741743 ;
742744
743745 return $ treeBuilder ;
0 commit comments