最近由于想着每次调试socket接收数据情况都需要源码debug好麻烦,要是能把接收到的数据输出到一个单独的日志文件,那出问题的时候,查看问题就方便多了。
log4j的日志是可以很方便自定义的,只是这个jboss没有搞过,不晓得怎么搞,查阅一番资料后,终于找到了自定义的方式。
首先,需要找到jboss目录下的 standalone.xml 这个文件,路径(“jboss-eap-6.2standaloneconfiguration”)
这个文件中有一部分是配置日志输出的,就是下面截图中的这个部分
于是仿着写了一个
<periodic-rotating-file-handler name="myappender" autoflush="true"> <formatter> <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> </formatter> <file relative-to="jboss.server.log.dir" path="9901.log"/> <suffix value=".yyyy-MM-dd"/> <append value="true"/> </periodic-rotating-file-handler> <logger category="category9901" use-parent-handlers="false"> <level name="INFO"/> <handlers> <handler name="myappender"/> </handlers> </logger>
下面这个属性的作用,表示不继承root-logger,继承和不继承的区别是,继承的话,会在原来的日志文件和这里自定义的日志文件中都输出,但是不继承的话,这个日志只会输出到这个自定义的日志文件中。
use-parent-handlers="false"
代码中应用的方式
import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; private static Log logger = LogFactory.getLog("category9901");
这样就完成了