0
A
回答
0
我寫的自定義錯誤處理程序和註冊。
// In config/bootstrap.php
namespace App\Error;
use Cake\Error\ErrorHandler;
use Cake\Mailer\Email;
/**
* AppError
*
* @package App\Error
*/
class AppError extends ErrorHandler
{
/**
* {@inheritdoc}
*/
protected function _displayException($exception)
{
parent::_displayException($exception);
try {
$email = new Email('default');
$email->to('[email protected]')
->emailFormat(Email::MESSAGE_HTML)
->subject('Bug !!!')
->template('bug')
->set(['exception' => $exception])
->send();
} catch (Exception $e) {
// Disable trace for internal errors.
$this->_options['trace'] = false;
$message = sprintf(
"[%s] %s\n%s", // Keeping same message format
get_class($e),
$e->getMessage(),
$e->getTraceAsString()
);
trigger_error($message, E_USER_ERROR);
}
}
}
,打造 「錯誤」 的模板:
// In src/Template/Email/html/bug.ctp
<h1><?= $exception->getMessage() ?></h1>
<p>
<?= nl2br($exception->getTraceAsString()) ?>
</p>
相關問題
- 1. Spring 3.1如何將所有異常發送到一個頁面?
- 2. 如何向exceptionController發送異常?
- 3. Laravel發送所有類型的異常作爲JSON
- 4. ActionController :: Metal如何捕獲所有異常以發送通知電子郵件?
- 5. 查找發生的所有異常
- 6. 發送郵件VB.net異常
- 7. 如何處理所有異常
- 8. ActiveMQ異步發送等待所有要發送的消息
- 9. 如何從Rails應用程序異步發送所有郵件
- 10. 如何在發生某些異常時停止所有測試
- 11. 如何監視代表CLR發生的所有異常?
- 12. 如何斷言沒有引發異常?
- 13. Akka - 孩子發生異常後父母如何發送消息
- 14. 採用F發送所選行:屬性賦予ClassCastException異常
- 15. 捕獲所有異常
- 16. Firebug捕捉所有異常
- 17. 捕獲所有異常
- 18. 處理所有異常
- 19. 發送HTTP請求到服務器都異常時有發生
- 20. 發送短信時沒有發現活動異常
- 21. 如何取消並在Task.WhenAll引發異常時引發異常?
- 22. 是否有一種方法可以發送HttpWebRequest來下載所有url並處理所有異常?
- 23. 捕捉異常,然後拋出/發送異常並繼續
- 24. 通過WCF發送異常(System.Reflection.TargetInvocationException)請求
- 25. 發送郵件表單異常:System.Runtime.InteropServices.COMException:??? ?????? 「SendUsing」? ?÷?
- 26. 空點發送消息時異常
- 27. SQL異常從jtable發送值到sql
- 28. groovy.lang.GroovyRuntime發送電子郵件的異常
- 29. Facebook Graph api通知發送異常
- 30. SDWebImage發送未知的異常
寫一個錯誤處理程序。 – burzum
@burzum我可以註冊多個ErrorHandler嗎? – atkrad