AXIS2顽固的日志输出


   项目里使用AXIS2作客户端Webservice的调用,发现日志里是大量的http header和content信息,如下图所示:

    
   


  很自然的把AXIS2作为重点怀疑对象,AXIS2的package以org.apache开头,但log4j.properties里面的

    log4j.logger.org.apache=INFO, stdout, fileout

  可是不起作用
  

 日志中本来应该是class信息的位置,出现了header和conent,猜测是http请求处理时输出的,于是找到了AxisHttpConnectionImpl类,如下:




  

 wire比较可疑,继续找AXIS2在处理http请求时依赖的httpclient包,找到了官方的说明:




  在log4j增加了

    log4j.logger.httpclient.wire=INFO, stdout, fileout
    log4j.logger.org.apache.commons.httpclient=INFO, stdout, fileout

  终于成功关闭http header的content debug日志信息输出。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误信息出现是因为在代码中没有为日志记录器配置日志输出器。日志记录器(logger)是用来记录应用程序运行时的信息和消息的工具。它通常用来调试和查找错误。 通过配置一个或多个日志输出器(appender),可以指定将日志信息输出到不同的目标,比如文件、控制台或数据库。 当出现`Axis wran no appenders could be found for logger`的错误信息时,说明在`Axis`这个模块中的日志记录器没有配置输出器。这将导致运行时的日志信息无法记录和输出。 要解决这个问题,我们需要在代码中为该日志记录器配置一个适当的日志输出器。具体的配置方法可能会因使用的日志框架而有所不同,以下是一个示例: ```java import org.apache.log4j.Logger; import org.apache.log4j.ConsoleAppender; import org.apache.log4j.PatternLayout; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass.class); public static void main(String[] args) { // 配置日志输出器(Appender) ConsoleAppender consoleAppender = new ConsoleAppender(); consoleAppender.setLayout(new PatternLayout("%d %-5p %c - %m%n")); // 将输出器添加到日志记录器 logger.addAppender(consoleAppender); // 开始记录日志 logger.info("This is a log message"); } } ``` 以上代码假设使用的是 Apache log4j 日志框架,并在控制台打印日志信息。根据实际情况,你可能需要根据所使用的日志框架和需求进行适当的修改。 总结起来,解决`axis wran no appenders could be found for logger`的错误信息,需要为相应的日志记录器配置一个有效的日志输出器。 ### 回答2: "axis wran no appenders could be found for logger" 是一个常见的警告信息,通常出现在使用 Apache Axis 时。警告的意思是该代码中没有为记录器指定任何附加程序(appender)。 日志记录器(logger)是一种用于记录应用程序运行时信息的工具,它可以将输出信息传递给附加程序。附加程序是处理日志消息的组件,可以将消息输出到控制台、文本文件、数据库等。 当出现这个警告时,说明在使用 Axis 运行的应用程序中,没有正确配置和指定日志记录器的附加程序。要解决这个问题,可以按照以下步骤进行操作: 1. 确认代码中是否有日志配置文件,通常是一个名为 log4j.properties 或 log4j.xml 的文件。 2. 确保日志配置文件中已经定义了至少一个附加程序(appender),并将其与相应的记录器(logger)关联起来。 3. 如果没有找到日志配置文件,可以创建一个新的文件,并在其中指定至少一个附加程序。 4. 如果已经有日志配置文件,但没有定义附加程序,则需要在文件中添加该定义。 5. 理想情况下,附加程序应包括输出到控制台和输出到文件的选项,以便在开发和调试过程中查看日志。 总结而言,"axis wran no appenders could be found for logger" 警告信息指出在使用 Axis 的应用程序中没有为记录器指定任何附加程序。解决方法是在日志配置文件中定义至少一个附加程序,并将其与记录器关联。 ### 回答3: "axis wran no appenders could be found for logger"是一个错误提示,它表示在Axis框架中没有找到适当的记录器(Appenders)。这个错误通常出现在使用日志记录器输出日志时。 在Axis框架中,日志记录器(Logger)用于在应用程序运行过程中记录重要信息。Appenders是与日志记录器关联的工具,用于确定日志信息的输出目的地,例如文件、终端、数据库等。 当出现"axis wran no appenders could be found for logger"错误提示时,通常是因为没有正确配置日志记录器的Appenders。这可能是由于缺失或错误的日志配置文件、不正确的配置参数或未引入正确的日志库文件等原因导致的。 要解决这个问题,可以考虑以下几个步骤: 1. 确保日志配置文件存在且正确:检查项目中的日志配置文件,通常是一个以".conf"或".properties"等扩展名的文件。确保该文件正确指定了要使用的Appenders,并且与日志记录器正确关联。 2. 检查日志库的引入:查看项目的依赖关系或构建配置,确保引入了正确的日志库文件。例如,常见的日志库有Log4j、Logback等,根据项目的具体情况选择合适的。 3. 检查日志记录器配置:查看代码中的日志记录器配置,确保录入了正确的日志记录器,并与Appenders关联。例如,在Java中使用Log4j库,可以使用以下代码配置日志记录器: ``` Logger logger = Logger.getLogger(MyClass.class); logger.addAppender(new ConsoleAppender(new SimpleLayout())); ``` 这将将日志信息输出到控制台。 4. 如果以上步骤都不起作用,可以考虑重新安装或更新使用的日志库,确保库文件完整且与项目兼容。 总之,"axis wran no appenders could be found for logger"错误提示表示在Axis框架中找不到适当的日志记录器Appenders。通过检查和确保正确配置日志记录器和相关的Appenders,可以解决此问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值