在Java中,异常处理可以通过多种方式进行。让我们使用日志框架(如log4j或sl4j )区分异常处理,这两个框架都可以将日志重定向到一个文件中,以处理异常。
如果不使用Logger框架,而是使用异常类方法printStackTrace()来处理异常并通过将异常调用堆栈重定向到文件而不是标准错误输出/控制台来获得异常调用堆栈,那么现在有以下问题:
printStacktrace()更倾向于什么理由?提前感谢!
发布于 2016-11-23 15:49:22
对于2)日志框架不是更好的文件处理程序,但是,例如,从代码中提取日志记录的配置。因此,当您更改配置(例如,用于开发和生产的日志的其他详细级别)时,您不必更改代码--您只需在每个测试阶段使用其他日志框架配置。如果要更改日志文件名、日志文件大小(旋转)或不同包或类的特定日志细节,则可以通过修改配置轻松地做到这一点。
发布于 2016-11-23 23:20:26
您不应该使用printStackTrace()有很多原因,而且,一旦这不是最近的事,让我们不要重开方向盘(特别注意上帝完美的例外环节,确实非常好)。
日志框架允许我们做很多事情(这么多):
特别是定制的appender特性是很棒的,因为我们可以将日志发送到非文件目的地,如扣篮、相扑逻辑、洛格利、原木存放物等,就像现在许多公司在分析和监视其生产系统时所做的那样。
另外,考虑分析正确的日志记录框架满足您的需求。
https://stackoverflow.com/questions/40768376
复制相似问题