- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用日志框架的配置为 TYPO3 中的一个自定义类配置日志记录,如下所述:
我想为每个类配置日志
\Aip\Taglialacoda\Task\
如果没有配置,日志消息将写入 typo3temp\var\log 下的日志文件中
我试过几次这样的:
$GLOBALS['TYPO3_CONF_VARS']['LOG']['Aip']['Taglialacoda']['Task']['writerConfiguration'] = [
TYPO3\CMS\Core\Log\LogLevel::INFO => [
TYPO3\CMS\Core\Log\Writer\SyslogWriter::class => [],
]
];
结果总是一样的:我找不到任何地方记录的消息。我写的类是一个任务,所以它扩展了 AbstractTask 并有自己的记录器。出于这个原因,我已经安装了另一个记录器(我不希望每个任务都写入 SYS LOG)正如我在没有配置的情况下所说的,新记录器写入日志文件。添加错误类型的配置类会引发异常(因此考虑了配置)。使用日志消息上方的配置似乎消失了。
最佳答案
总结:
据我所知,如果您想使用日志记录框架记录到 sys_log 数据库表并在仅具有核心功能的“日志”BE 模块中读取它,那么您就不走运了。
或者:
使用扩展“logs ”(来源 GitHub )(免责声明:这是已在 GitHub 上“存档”的第三方扩展,我不知道它是否会得到支持或支持多久).它在“管理工具”中创建自己的后端模块“日志”。
编写您自己的 LogWriter,它将以“Log”BE 模块可读的正确格式写入 sys_log 表。
您的配置看起来不错(总体而言),但无法按预期工作。
您可能首先要确定,您知道 SyslogWriter 将写入的位置。这在 documentation 中有解释。 . SyslogWriter 不会像人们预期的那样写入“sys_log”数据库表,而是通过 syslog 写入系统日志。最终结果取决于您的配置。您可能需要检查您的/var/log/messages。这可能不是您想要的。请改用 FileWriter 或 DatabaseWriter。
但是,如果您使用 DatabaseWriter ,这将无法通过后端的“日志”模块读取,如文档中所述:
The Admin Tools > Log module is not adapted to the records written by the DatabaseWriter into the sys_log table. If you write such records there, you will not be able to see them using that module. Tip: There’s a tool for viewing such records in the TYPO3 backend at https://github.com/vertexvaar/logs.
我认为,如果您将 TYPO3 中的日志记录视为 2 个独立的 API,它会有所帮助:
带1的方法是使用$GLOBALS['TYPO3_CONF_VARS'][SYS][belogErrorReporting]
配置的
因此,如上所述,如果您想使用日志记录框架 (2.) 记录到 sys_log 并在仅具有核心功能的“日志”BE 模块中读取它,那么您就不走运了。列出了一个扩展 https://github.com/vertexvaar/logs .另一种可能性是创建自己的 LogWriter,然后在其中使用 writelog() 写入 sys_log。这样你以后会更加灵活。
我个人也很喜欢的是带sentry-typo3的哨兵方法.你可能想看看它。但是你必须设置一个哨兵服务器。但这很容易完成(至少它对我来说是开箱即用的),但这当然取决于您的网站运行的位置。
$this->logger
)和到完成的系统日志
.关于logging - TYPO3:如何正确配置 $GLOBALS ['TYPO3_CONF_VARS' ] ['LOG' ],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61628714/
我是一名优秀的程序员,十分优秀!