0

我正在做一个大项目。出于记录目的,我们使用了 log4j1.2.12

我希望当代码发生任何异常时,我想要以下异常的详细信息:URL(从哪个异常发生)带参数、IP 地址(从哪个 IP 放置我的请求)、时间戳、Java 类名、Java方法名称,以及 Struts 动作名称。

在我的整个代码中,在每个 java 文件中,我都使用了 try-catch-finally。

public static final Logger log = Logger.getLogger(xyz.class);

try{
     //My Code
} catch(Exception e) {
     log.error("Exception Message :", e);
}

它只写了异常细节而不是我需要的细节那么我怎样才能实现我的目标?

注意:我们的项目有超过 2000 个 java 文件,其中 try-catch-finally 来了......所以,我不能手动更改/编辑/修改每个 java 文件中的代码。

  1. 所以,我想我应该开箱即用。!??我对吗?
  2. 我是否有可能在 log4j.properties 文件中添加/更改/修改某些配置并可以实现我的目标?
  3. 我需要更改日志框架吗?
  4. 不接触java代码,有可能吗?

我会感谢你的所有建议。

提前致谢。

4

1 回答 1

1

查看PatternLayout以及如何设置 Configraaion-File。添加转换字符以获得您想要的值。例如:

%d{yyy-MM-dd_HH:mm:ss,SSS} 完整日期

%l 用于完全限定的调用方法名称。

于 2013-03-09T09:53:45.617 回答