博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Laravel错误与日志处理
阅读量:7223 次
发布时间:2019-06-29

本文共 4246 字,大约阅读时间需要 14 分钟。

App\Exceptions
\
Handler
 class is where all exceptions triggered by your application are
logged and then rendered
back to the user. We'll dive deeper into this class throughout this documentation.
For logging, Laravel utilizes the 
 library, which provides support for a variety of powerful log handlers. Laravel configures several of these handlers for you, allowing you to
choose between
a single log file, rotating log files, or writing error information to the system log.
Error Detail
The 
debug
 option in your 
config
/
app
.
php
 configuration file determines how much information about an error is actually displayed to the user. By default, this option is set to respect the value of the 
APP_DEBUG
 environment variable, which is stored in your 
.
env
 file.
For local development, you should set the 
APP_DEBUG
 environment variable to 
true
. In your production environment,
this value should always be 
false
.
If the value is set to 
true
 in production, you risk exposing sensitive configuration values to your application's end users.
Laravel supports writing log information to 
single
 files, 
daily
 files, the 
syslog
, and the 
errorlog
. To configure which storage mechanism Laravel uses, you should modify the 
log
option in your 
config
/
app
.
php
 configuration file. For example, if you wish to use daily log files instead of a single file, you should set the 
log
 value in your 
app
 configuration file to 
daily
:
'log'
=>
'daily'
Maximum Daily Log Files
When using the 
daily
 log mode, Laravel will only retain
five days
of log files by default. If you want to adjust the number of retained files, you may add a 
log_max_files
 configuration value to your
app
 configuration file:
'log_max_files'
=>
30
Severity Levels
When using Monolog, log messages may have different levels of severity. By default, Laravel
writes all log levels
to storage. However, in your production environment, you may wish to configure the minimum severity that should be logged by adding the 
log_level
 option to your 
app
.
php
configuration file.
Once this option has been configured, Laravel will log all levels
greater than or equal to
the specified severity. For example, a default 
log_level
 of 
error
 will log 
error
critical
alert
, and 
emergency
messages:
'log_level'
=>
env
(
'APP_LOG_LEVEL'
,
'error'
),
Monolog recognizes the following severity levels -
from least severe to most severe
:
debug
info
notice
warning
error
critical
alert
emergency
.
All exceptions are handled by the 
App\Exceptions
\
Handler 
class. This class contains two methods:
report
 and 
render
. We'll examine each of these methods in detail. The 
report
 method is used to log exceptions or send them to an external service like 
 or 
. By default, the 
report
method simply passes the exception to the base class where the exception is logged. However, you are free to log exceptions however you wish.
Ignoring Exceptions By Type想要忽略的
The 
$dontReport 
property
of the exception handler contains an array of exception types that will not be logged. 
Some exceptions describe HTTP error codes from the server. For example, this may be a "page not found" error (404), an "
unauthorized error
" (401) or even a developer generated 500 error. In order to generate such a response from anywhere in your application, you may use the 
abort
 helper:
abort
(
404
);
abort
(
403
,
'Unauthorized action.'
);
Custom HTTP Error Pages
For example, if you wish to customize the error page for 404 HTTP status codes, create a
resources
/
views
/
errors
/
404
.
blade
.
php
The views within this directory should be named to
match the HTTP status code
they correspond to. The 
HttpException
 instance raised by the 
abort
 function will be passed to the view as an 
$exception
 variable.
emergency
alert
critical
error
,
warning
notice
info
 and 
debug
.
By default, Laravel is configured to create a log file for your application in the 
storage
/
logs
 directory. You may write information to the logs using the 
Log 
:
Log
::
emergency
(
$message
);
Log
::
alert
(
$message
);
Log
::
critical
(
$message
);
Log
::
error
(
$message
);
Log
::
warning
(
$message
);
Log
::
notice
(
$message
);
Log
::
info
(
$message
);
Log
::
debug
(
$message
);
Contextual Information上下文信息
An array of contextual data

转载地址:http://cfhym.baihongyu.com/

你可能感兴趣的文章
windows server 2008 r2系统搭建wamp环境
查看>>
docker学习笔记-批量删除停止运行的容器
查看>>
linux添加用户操作日志
查看>>
lvs 持久连接 80 和443 端口iptables mangle
查看>>
Docker的CPU限制限制
查看>>
linux 系统下 snmp 服务配置
查看>>
作为一名网络工程师,我们应该如何定位自己的方向呢?
查看>>
脱口而出-特定情景下的美语反应
查看>>
条件控制语句
查看>>
HTTPS安全访问的原理及其应用
查看>>
笔记本wifi×××
查看>>
haproxy高可用web和mysql配置实例
查看>>
构建Maven工程(2)---MyEclipse安装maven插件
查看>>
rhel5.6 sssd配置方法。
查看>>
Zabbix篇三:windows批量安装客户端Zabbix-agent
查看>>
CentOS7使用DevStack安装Mitaka allinone
查看>>
Maven学习总结(四)——Maven核心概念
查看>>
window2003 支持flv文件设置
查看>>
除了你,其他人都挺努力的!
查看>>
DNS记录类型
查看>>