新在Symfoob娱乐下载ny 3.4:更好的控制台例外
2017年9月14日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
设计异常消息是很困难的,因为他们大多是在有压力的情况下使用。其内容必须达到一个微妙的平衡提供足够的信息来找出异常原因,并没有给太多的信息,可能混淆或压力更多的用户。
在Syob娱乐下载mfony 3.3我们重新设计了网络异常在Symfonob娱乐下载y 3.4,我们将做同样的事情控制台的例外。最初的例外是他们的主要问题集中在解释发生了什么,忽略异常发生。例如,考虑这Symfony控制台例外:ob娱乐下载
1 2
\ob娱乐下载 \调试\ [Symfony \组件异常ContextErrorException)注意:未定义的变量:b
问题是解释,包括具体的异常类,但这个错误在哪里发生的?文件和行应该考虑修复它吗?如果你运行以下命令在一个更详细的模式你会看到确切的文件和行,但这通常意味着运行命令的- v
选择。
重复执行一个命令并不总是可能的或方便:也许错误发生10分钟后执行一个长时间运行的命令,或者只出现第一次执行之前更改一些信息在数据库中,或无人值守运行Cron任务。
现在看看相同的异常显示的Symfony 3.4:ob娱乐下载
1 2
在CacheClearCommand。php第88行:注意:未定义的变量:b
控制台例外现在总是显示确切的文件和行错误发生,无论如何是冗长的命令。此外,默认情况下,显示的异常类不再因为它大多数时候不是那么有用。运行时显示异常类详细模式中的命令。
这个新的行为唯一的例外是Symfony控制台组件的内部异常。ob娱乐下载显示文件和行号不是有用的在这种情况下,因为这是你的责任,你不能改变。因此,而不是这样的:
1 2 3 4
在应用程序中。php第615行:命令“foo”没有定义。你的意思是这个吗?应用:foo
你将看到内部异常如下:
1 2 3
命令“foo”没有定义。你的意思是这个吗?应用:foo
发表在#生活在边缘
评论
法比安·卢卡斯
说9月14日,2017年在23
# 1
不是很有用,包括名称空间,而不只是文件名吗?
胡里奥奥斯卡古铁雷斯马丁内斯
说9月14日,2017年在十九38
# 2
我认为这是非常方便的知道错误的确切位置。这些控制台应用程序是很好的!
评论都关门了。
以确保评论保持相关,他们关闭了旧的帖子。