デバッグ メッセージをログ ファイルに書き込めるようにしたいと考えています。これを行う適切な方法は何ですか?私がそこに見つけることができるドキュメントは絶対にありません。Monolog バンドルが言及されていることは知っていますが、何も書いていません。提案してください。
9250 次
1 に答える
13
デフォルトで含まれているMonologBundleを使用していると仮定します
ステップ1
ハンドラーサービスを定義し、そこにディレクトリ/ファイルを渡します
your.log.handler:
class: %monolog.handler.stream.class%
arguments: [ %kernel.logs_dir%/%kernel.environment%.yourFileName.log ]
クラスパラメータはMonologBundle%monolog.handler.stream.class%
で定義されており、クラスです。Monolog\Handler\StreamHandler
ステップ2
ロガーサービスを定義し、そこにハンドラーを注入します
your.logger:
class: %monolog.logger.class%
arguments: [ nameOfLoggingChannel ]
calls: [ [pushHandler, [@your.log.handler]] ]
パラメータ%monolog.logger.class%
もMonologBundleSymfony\Bridge\Monolog\Logger
で定義され、クラスを表します
ステップ3
それをコントローラーに注入し、通常のロガーとして使用します
$logger = $this->get('your.logger');
$logger->warn('We are using custom logger');
あなたのapp/logs/dev.yourFileName.log
于 2012-08-03T06:03:21.997 に答える