gpt4 book ai didi

Symfony2/Monolog : Log Level - only show app. 信息?

转载 作者:行者123 更新时间:2023-12-04 09:41:58 26 4
gpt4 key购买 nike

我正在使用 Symfony2 和 monolog 在定义的日志文件 (mylogfile.log) 中写入特定日志:

#config_dev.yml
monolog:
handlers:
main:
type: stream
path: %kernel.logs_dir%/%kernel.environment%.log
level: debug
file:
type: stream
path: %kernel.logs_dir%/mylogfile.log
level: info

我正在通过以下方式访问 Controller 中的日志文件:
    $logger = $this->get('logger'); // Log
$logger->info('somelogcontent');

现在我的问题是我的日志文件包含整个信息级别,这意味着它为我提供了所有 app.INFO 日志(这是我想要的)和 request.INFO(我并不真正需要):
[2012-04-04 11:13:17] request.INFO: Matched route ... blablabla
[2012-04-04 11:13:17] app.INFO: somelogcontent
...

有没有办法不记录Request.INFO?

麦克风

最佳答案

您必须创建一个新的记录器服务,应该在您的类(class)中使用它。像这样,config.yml:

services:
my_logger:
class: Monolog\Logger
arguments: [my_info]
calls:
- [pushHandler, [@my_log_handler]]

my_log_handler:
class: Monolog\Handler\StreamHandler
arguments: [%kernel.root_dir%/logs/my_info.log, 100]

用法(例如在 Controller 中):
$this->get('my_logger')->info('info message');

更多详细信息在 symfony cookbook .

关于Symfony2/Monolog : Log Level - only show app. 信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10008322/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com