首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony 2中默认monolog的自定义monolog处理程序

Symfony 2中默认monolog的自定义monolog处理程序
EN

Stack Overflow用户
提问于 2012-10-17 13:55:04
回答 2查看 20.1K关注 0票数 22

我想在Symfony 2中向默认的monolog添加一个自定义处理程序。

在我的config.yaml文件中,我有:

代码语言:javascript
复制
monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        myHandler:
            type:  Acme\MyBundle\Monolog\MyCustomHandler
            level: error

我的班级如下:

代码语言:javascript
复制
// Acme\MyBundle\Monolog\MyCustomHandler
use Monolog\Logger;
use Monolog\Handler\SocketHandler;
use Monolog\Formatter\LineFormatter;

class MyCustomHandler extends AbstractProcessingHandler
{
    ...
}

但是,即使在我填写我的课程之前,我也会发现一个错误:

用于处理程序"myHandler“的无效处理程序类型"acme\mybundle\monolog\mycustomhandler”

如何在不创建新的monolog服务的情况下向默认monolog添加自定义处理程序?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-17 14:52:01

试试这个:

代码语言:javascript
复制
monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        custom:
            type: service
            id: my_custom_handler

services:
    my_custom_handler:
        class: Acme\MyBundle\Monolog\MyCustomHandler

如果您想使用它作为默认处理程序,那么您应该修改一下我前面写的monolog部分。

代码语言:javascript
复制
monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
            handler: custom
        custom:
            type: service
            id: my_custom_handler

希望它能帮到你。

票数 43
EN

Stack Overflow用户

发布于 2015-04-19 09:14:12

我刚刚发现Monolog附带了一组不同的处理程序,所以您可能需要使用其中之一,而不是编写自己的处理程序。我正在使用LogEntriesHandler登录到logentries.com,但是还有更多,如这里所记录的:https://github.com/Seldaek/monolog#log-specific-servers-and-networked-logging

我的Symfony2配置如下所示:

代码语言:javascript
复制
monolog:
    main:
        type:  fingers_crossed
        level: debug
        handler: nested
    custom:
        type: service
        id: monolog.handler.logentries
        level: error

services:
    monolog.handler.logentries:
        class: Monolog\Handler\LogEntriesHandler
        arguments:
            token: %logentries_token%
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12935979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档