Yakalamak ve Zend Framework ölümcül hataları, uyarıları, bildirimler log

0 Cevap php

Şu anda bu gibi görünüyor bir temel hata denetleyicisi kullanıyorum:

class ErrorController extends My_MyController
{

    public function errorAction()
    {
        $errors = $this->_getParam('error_handler');

        switch ($errors->type) {
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ROUTE:
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_CONTROLLER:
            case Zend_Controller_Plugin_ErrorHandler::EXCEPTION_NO_ACTION:
                // 404 error -- controller or action not found
                $this->getResponse()
                     ->setRawHeader('HTTP/1.1 404 Not Found');

                $this->view->headTitle('HTTP/1.1 404 Not Found');
                $this->view->message = 'HTTP/1.1 404 Not Found';

                break;
            default:
                // application error; display error page, but don't change
                // status code

                // Log the exception:
                $exception = $errors->exception;
                $log = new Zend_Log(
                    new Zend_Log_Writer_Stream(
                        BASE_PATH . '/logs/applicationException.log'
                    )
                );
                $log->debug($exception->getMessage() . "\n" .
                            $exception->getTraceAsString());

                $this->view->headTitle('HTTP/1.1 404 Not Found');
                $this->view->message = 'Application error';

                break;
        }

        $this->view->exception = $errors->exception;
    }
}

Bu, ancak, sadece yakalar ve uygulama durumlarını kaydeder. Herhangi bir uyarı, ihbar ve ölümcül hataları oturum olmaz.

Ben de bu oturum açmak istiyorsunuz. ErrorController bunu yapmak için önerilen bir yolu var mı? (Zend Framework Hataİşleyici sadece uygulama / eylem durumları ve eylem kontrolörleri istisnalar eksik, bir yol yok idare edecek beri) veya index.php ErrorController dışında yapılmalıdır?

0 Cevap