Drupal8模块开发 – Drupal8 Logging API

本章节我们学习Drupal8 Logging API.
在Drupal8中,hook_watchdog()已经不再被支持了,如果一个Drupal8的模块要实现日志,就必需注册一个日志的服务
services:

logger.mylog:
class: Drupal\mylog\Logger\MyLog
tags:
– { name: logger }
这个类必需继承 \Psr\Log\LoggerInterface
namespace Drupal\mylog\Logger;

use Drupal\Core\Logger\RfcLoggerTrait;
use Psr\Log\LoggerInterface;

class MyLog implements LoggerInterface {
use RfcLoggerTrait;

/**
 * {@inheritdoc}
 */
public function log($level, $message, array $context = array()) {
// Do stuff
}

}

在Drupal8中,watchdog($type, $message, $variables, $severity, $link) 已经不再被支持,替代的Drupal8 Logging API是: \Drupal::logger($type)->log($severity, $message, $variables)

Drupal7中的watchdog如下:
// Logs a notice
watchdog(‘my_module’, $message, array());
// Logs an error
watchdog(‘my_module’, $message, array(), WATCHDOG_ERROR);

Drupal8 Logging API的使用如下:
// Logs a notice
\Drupal::logger(‘my_module’😉->notice($message);
// Logs an error
\Drupal::logger(‘my_module’😉->error($message);

注明:本文为星速云原创版权所有,禁止转载,一经发现将追究版权责任!

(0)
上一篇 2022年7月20日 上午3:04
下一篇 2022年7月20日 上午3:04

相关推荐

发表评论

登录后才能评论
问答社区 QQ客服
微信客服
微信客服
分享本页
返回顶部