当前位置: 首页 > 知识库问答 >
问题:

如何在log4j中包含异常和错误

从智志
2023-03-14
log.info("Hello world");
log.info(5 / 0);

附言。我知道我可以将log.info(e.printstacktrace())放入catch子句中,但我希望记录每个捕获和未捕获的异常。我正在测试,所以有很多不应该捕捉的异常,只是抛出。我需要configuration、property或与log4j相关的任何其他语句,这些语句将所有异常流式传输到其appender中。

P.S.S.我知道我可以将stderr输出重定向到文件,但我不想接触控制台。

共有1个答案

勾渝
2023-03-14

如果希望记录已经捕获的异常,则必须确保catch块执行日志记录,例如:

catch (WhateverException e) {
  log(e); // just a place holder ...
}

如果要记录未捕获的异常,则需要一个未捕获的异常处理程序。参见这里的示例。

如果您想要记录异常的能力,那么确保在某个时刻捕捉到每一个异常是很重要的。

 类似资料:
  • 我有自己的异常扩展,当调用时,我希望它向浏览器输出一条消息。但是,当我抛出这个异常时,抓住它并输出消息,但消息是一个跟踪。 这是我的全球。php: 我的代码片段: 输出到浏览器: 异常'异常'消息'密码未设置'在 /Users/kevin/Documents/Web/app/controllers/Settings/SetupController.php: 8堆栈跟踪:#0[内部功能]: Setu

  • 问题内容: 我有一个需要在jar中存储库的常规脚本。如何将其添加到类路径?我希望脚本是可执行的,所以我在脚本的顶部使用。 问题答案: 如果确实需要,还可以在运行时通过以下方式加载JAR:

  • 尝试转换多个时。使用py2exe将文件复制到exe文件中我得到错误:回溯(最近一次调用上次):文件“ParentWindow.py”,第7行,in 提到的“FileAnalysers1”是包含. py脚本的python包。如何在exe中包含整个包?

  • 问题内容: 我正在编写一个网络自动化程序,到目前为止,使用Selenium的FirefoxDriver可以正常工作。但是,如果未安装Firefox,我想使其使用Chrome。我下载了ChromeDriver,将其放在Eclipse项目的文件夹中,然后运行它。在我添加之后,它运行良好。但是,当我尝试导出它时(使用Eclipse的标准Export)。我相信它会崩溃,因为它找不到ChromeDriver

  • 问题内容: 我正在使用pyinstaller创建我的python脚本的可执行文件。 在脚本中,我使用了以下导入: 问题是,运行时,它将导致包括Firefox而不是Chrome。在结果文件夹c:… \ dist \ myscript \ selenium \ webdriver中,有一个firefox文件夹,因此它只是跳过了chromedriver,这对我来说是个严重的问题,因为脚本需要与Chrom

  • 我正在向joomla组件文件view/edit/tmpl/default添加一些jquery和css。php。我知道我需要使用jdocinclude,但是这样做的步骤是什么?我应该把jdoc:include放在哪里? 代码是这样的。 需要包含的文件