错误、日志与性能 · 第 1 题,共 12 题
在 TYPO3 v14 中,自己的服务类如何获得一个 logger?
有 2 个正确答案。 简单
显示答案
答案
- C 通过构造函数注入一个 Psr\
Log\ LoggerInterface 类型的参数 - D 通过 LoggerAwareInterface 配合 LoggerAwareTrait
解析
TYPO3 采用 PSR-3 日志标准。最简单的方式是通过 构造函数注入 传入 Psr\;TYPO3 随后会创建一个以类名作为通道的 logger。另一种方式是类实现 LoggerAwareInterface 并使用 LoggerAwareTrait;logger 会被自动设置,并可通过 $this->logger 使用。之后只需 $this->logger->warning('Import failed', ['file' => $file]); 这样的调用即可。消息写到哪里由日志配置中的 writer 决定——因此不要在代码中自己创建 writer。