簡體   English   中英

如何為僅以symfony登錄的用戶創建自定義獨白文件

[英]How to create a custom monolog file only for users login in symfony

我需要為用戶實現一個簡單的日志系統。 在用戶的捆綁操作中(例如),我想將獨白與某些示例結合使用。

public function indexAction(){
        $logger = $this->get('logger');
        $logger->users('User {X} is logout');
}

並記錄日志,例如將該日志(users.log)保存在特定文件中

您可以通過渠道來實現。

可以創建自定義渠道(在本例中為user_channel )。 創建的處理程序user_handler僅記錄user_channel記錄。 在控制器中,請求通道的特定記錄器。 用此記錄器記錄的所有內容都將轉到user_channel user_handler將僅將該消息放入日志文件。

# app/config/config.yml
monolog:
    channels: ['user_channel']
    handlers:
        user_handler:
            level:    debug
            type:     stream
            path:     '%kernel.logs_dir%/user.log'
            channels: ['user_channel']
        main:
            level:    debug
            type:     stream
            path:     '%kernel.logs_dir%/log.log'
            channels: ['!user_channel'] #In case you don't want other handler to receive user_channel messages

然后,在控制器中,您可以直接訪問日志處理程序。

public function indexAction(){
        $logger = $this->get('monolog.logger.user_channel');
        $logger->debug('User {X} is logout');
}

日志實體將被寫入'%kernel.logs_dir%/user.log'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM