私の CakePHP 2.2 アプリケーションでは、debug.log ファイル内に「通知」が表示されます。ほぼ毎日この警告が表示されますが、問題を解決できませんでした。そのため、debug.log 内に追加のデータを書き込む必要があります。しかし、この「通知」が発生したときにそのデータを書きたいと思います。
たとえば、次の通知が表示されます。
2012-09-26 19:53:01 Notice: Notice (8):
Trying to get property of non-object in
[/var/www/vhosts/example.com/app/View/Tools/index.ctp, line 42]
Trace:
include - APP/View/Tools/index.ctp, line 42
View::_evaluate() - CORE/Cake/View/View.php, line 920
View::_render() - CORE/Cake/View/View.php, line 883
View::render() - CORE/Cake/View/View.php, line 475
Controller::render() - CORE/Cake/Controller/Controller.php, line 957
Dispatcher::_invoke() - CORE/Cake/Routing/Dispatcher.php, line 193
Dispatcher::dispatch() - CORE/Cake/Routing/Dispatcher.php, line 161
[main] - APP/webroot/index.php, line 96
この通知が発生したときに、すべてのセッション変数を debug.log ファイルに追加したいと考えています。
これどうやってするの?
何をどこに書くべきかを変更できますlib/Cake/Log/Cakelog.php
か?
編集:関連するコードスニペットを貼り付けます:
39 <?php if ($auth) { ?>
40 <form class="well" >
41
42 <?php if (isset($user->profile_url)) {
43 echo '<img src="'.$user->profile_url.'" width="48" height="48"/>';
44 } ?>
45
46 <strong><?php echo $user->screen_name; if (isset($user->name)) { echo " (" . $user->name . ")"; } ?></strong><br/>
47 <small><?php if (isset($user->description)) { echo $user->description; } ?> </small><br/>
48 <small><?php if (isset($user->url)) { echo $user->url; } ?> </small><br/>
49 <br/>