web-dev-qa-db-ja.com

Drupal 7では、ウォッチドッグエラーレポートで表示できるように配列オブジェクトをどのように出力しますか?

何らかの理由で、出力オブジェクト配列のデバッグにdevelを使用できませんでした。ウォッチドッグエラーレポートに配列データを出力する方法はありますか?これにより、別のモジュールをインストールまたは有効にする必要があるという問題も解決されます。

5

watchdog を使用できますが、メッセージ部分は翻訳可能である必要があるため、すべての変数は、variables配列で定義されたプレースホルダーを使用する必要があります。 format_string をチェックして、これらがどのように機能するかを確認してください。

watchdog(
  'my_module_name',
  'Here is the printed variable: <pre>@placeholder_name</pre>',
  array('@placeholder_name' => print_r( $my_variable, TRUE)),
  WATCHDOG_INFO
);

また、慣例により、最初のパラメーター$type、watchdogを呼び出すモジュール名である必要があります。

10
featherbelly

次のようにして、ウォッチドッグで表示する配列データを出力できます。

// Directly use values.
watchdog("log_name", '<pre>' . print_r( $my_object, true) . '</pre>');

次に、/ admin/reportsに移動して、「log_name」を探します。

9

ただし、別のモジュールを有効にしても構わない場合は、次のような目的でオブジェクトログを作成しました。

https://www.drupal.org/project/object_log

軽量で、コードで使いやすく、ユーザーフレンドリで表示しやすく、他のログイベントが記録されてもログがプッシュダウンされません。

2
Les Lim