如题,我用的是eclipse。
配置文件如下
log4j.rootLogger=WARN, stdout, file log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%n%-d{yyyy-MM-dd HH:mm:ss}%n[%p]-[Thread: %t]-[%C.%M()]: %m%n # Output to the File log4j.appender.file=org.apache.log4j.FileAppender log4j.appender.file.File=./jfinal_demo.log #log4j.appender.file.File=../WebRoot/data/tcbcloud2.log log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%n%-d{yyyy-MM-dd HH:mm:ss}%n[%p]-[Thread: %t]-[%C.%M()]: %m%n # Druid log4j.logger.druid.sql=warn,stdout log4j.logger.druid.sql.DataSource=warn,stdout log4j.logger.druid.sql.Connection=warn,stdout log4j.logger.druid.sql.Statement=debug,stdout log4j.logger.druid.sql.ResultSet=warn,stdout
在代码中的调用如下
Logger logg=Logger.getLogger(ExceptionInterceptor.class);
private void logWrite(Invocation inv,Exception e){ //开发模式 if (JFinal.me().getConstants().getDevMode()){ e.printStackTrace(); } StringBuilder sb =new StringBuilder("\n---Exception Log Begin---\n"); sb.append("Controller:").append(inv.getController().getClass().getName()).append("\n"); sb.append("Method:").append(inv.getMethodName()).append("\n"); sb.append("Exception Type:").append(e.getClass().getName()).append("\n"); sb.append("Exception Details:"); logg.error(sb.toString(),e); }
主要问题还是出在不生成文件,在控制台的输出是正常的,还是说我没找到正确文件的位置?我在“D:\Workspaces\Eclipse_Oxygen\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\tcbcloud2”这种路径里也没找到,打包放在Tomcat下运行也没找到。。很焦灼。。
项目:JFinal
./ 这个就会返上一个文件夹, 如:
eclipse里面main运行的时候,就在 工程项目文件夹里面了。
用Tomcat的时候, 就在Tomcat的安装目录里面了