drupal-8 - 如何控制 Drupal 8 monolog dblog 日志级别
问题描述
我将 Drupal 8 与 Monolog 模块 (1.3) 一起用于外部日志支持和 Sentry 日志记录,同时保留核心数据库日志记录 (dblog/watchdog)。这一切都有效,除了我找不到控制看门狗日志记录级别的方法(所以我在生产环境中得到了很多调试日志记录)。
这是我的独白配置(monolog.services.yml):
parameters:
monolog.channel_handlers:
default: ['drupal.dblog', 'drupal.raven']
custom1: ['rotating_file_custom1']
custom2: ['rotating_file_custom2']
custom3: ['rotating_file_custom3']
services:
monolog.handler.rotating_file_custom1:
class: Monolog\Handler\RotatingFileHandler
arguments: ['file://../logs/custom1.log', 25, 'monolog.level.debug']
monolog.handler.rotating_file_custom2:
class: Monolog\Handler\RotatingFileHandler
arguments: ['file://../logs/custom2.log', 25, 'monolog.level.debug']
monolog.handler.rotating_file_custom3:
class: Monolog\Handler\RotatingFileHandler
arguments: ['file://../logs/custom3.log', 25, 'monolog.level.debug' ]
我尝试使用 DrupalHandler 为 drupal.dblog 添加一个新的服务处理程序,但我不知道要使用哪些参数(参数是必需的,它期望 LoggerInterface 实现作为第一个参数)。
我已经阅读了模块文档,但它几乎只关注文件/外部日志记录。
有什么建议么?
TIA
解决方案
我也试图做到这一点,但我也不清楚。解决方案是使用“@”符号作为第一个参数添加核心 dblog 服务。还应该提到的是,日志级别记录为“monolog.level.debug”,但应该在没有前缀“monolog.level”的情况下实现。因为独白参数没有按应有的方式正确加载。这是一个工作示例:
parameters:
monolog.channel_handlers:
default: ['rotating_file_handler', 'db_warning_handler']
locale: ['null']
monolog.processors: ['message_placeholder', 'current_user', 'request_uri', 'ip', 'referer', 'memory_usage']
services:
monolog.handler.db_warning_handler:
class: Drupal\monolog\Logger\Handler\DrupalHandler
arguments: ['@logger.dblog', 'warning']
monolog.handler.rotating_file_handler:
class: Monolog\Handler\RotatingFileHandler
arguments: ['private://logs/debug.log', 30, 'debug']
推荐阅读
- php - 必须重视 else 在 php/(postgreSQL/MySQL) 中不打印任何内容
- pdf - 如何使用 pdfjam 或 pdftk 在 pdf 中添加页脚?
- html - 标头固定顶部不适用于部分引导程序 4
- javascript - 使用 JavaScript 更改 *(所有内容)的 fontSize
- performance - 以毫秒为单位获取推文更新?
- php - 调用字符串上的成员函数 reflash()
- python - 将嵌套的 json 响应标准化为具有任意嵌套级别且键不一致的数据帧
- swiftui - ScrollView 中的初始 SwiftUI 动画
- swiftui - 使用 XCUIElementQuery 在 SwiftUI 中查找嵌入在表单中的 DatePicker() 的可访问性(标识符:)
- python - 如何建立从云端到本地计算机的通知弹出系统