Drupal 8 Logger

Drupal 8 Logger

モジュール開発時のログ出力に使用するLoggerです。

以下のように記述すると、Drupal標準のログに出力され、「レポート」-> 「Recent log messages」から、ログを見ることができます。


\Drupal::logger('my_module')->notice($message);
\Drupal::logger('my_module')->error($message);
\Drupal::logger('my_module')->debug($message);

'my_module'には、モジュール名を記述します。

以下はプレースホルダを使用する例です。


    \Drupal::logger('content_entity_example')->notice('@type: deleted %title.',
        array(
            '@type' => $this->entity->bundle(),
            '%title' => $this->entity->label(),
        ));

プレースホルダ タイプ

@variable — ほとんどの場合このタイプが使用されて変数が置き換えられます。特殊文字の場合はHTMLのエスケープ処理が行われます。

%variable — @variableと基本的には同じですが、<em>タグで強調されます。

:variable — href属性の値を置き換える場合に使用します。HTMLエスケープおよび危険なプロトコルのフィルターが行われます。

参照:protected static function FormattableMarkup::placeholderFormat

 

Drupalのloggerで使用できるメソッドは、重大度に対応していて、以下となります。

  • emergency:緊急
  • alert:警告
  • critical:重大な
  • error:エラー
  • warning:警告
  • notice:注意
  • info:Info
  • debug:デバッグ

重大度

参照:interface LoggerInterface

使用例は以下となります。


\Drupal::logger('my_module')->emergency($message);
\Drupal::logger('my_module')->alert($message);
\Drupal::logger('my_module')->critical($message);
\Drupal::logger('my_module')->error($message);
\Drupal::logger('my_module')->warning($message);
\Drupal::logger('my_module')->debug($message);

カテゴリー

コメントを追加

CAPTCHA
この質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。
画像CAPTCHA
画像内に表示されている文字列を入力してください。