开发者社区> 问答> 正文

jfinal 控制台打出的请求日志怎么保存到log4j?? 400 报错

jfinal 控制台打出的请求日志怎么保存到log4j?? 400 报错

@JFinal

如图:

怎么这个信息连带所调用方法执行的sql保存到log4j?

展开
收起
爱吃鱼的程序员 2020-05-30 23:40:00 732 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    这个是 用 system.out  输出的; 请看 com.jfinal.core.ActionReporter的 doReport 方法.  你 记录这个有什么意义?######不然 log4j 应该记录些什么?难道只记录异常?不记录发生异常的过程?######

    简单介绍两个方法:

    1:通过全局拦截器,在拦截器中通过反射得到 ActionInvocation 对象中的 action、inters 对象,就可以获取到你需要的信息,urlPara 可以通过 controller.getPara() 获取到,method可以通过ai.getMethodName() 获取到

    2:另一个不太常规的方法,将 System.out 输出流切换到你自己的实现类上去,在你自己的实现类上使用 log4j 输出。

        JFinal Action Report 设计用于开发阶段对开发者的实时提示,一般不建议楼主的用法,通常用一个全局拦截器记录所有异常即可

    ######回复 @chi_9 : 日志记录得越详细当然越有助于解决问题,异常里面包含了错误堆栈,能够知道是哪一行代码抛出的异常,所以不需要再重复记录action,至于action参数及 sql 当然记录了更有助于排查错误,因为有些错误只在特定的参数下面出现######以前也没在意过日志,想请教一下,一般log4j应该怎么记录日志呢?只记录异常吗?那在发现异常的时候怎么来判断异常呢?是不是也应该记录一下action的请求(就是我上面发的图片)和对数据库操作的sql呢?不然只看异常,怎么能够准确分析问题所在?还是看到异常出现的位置,进行模拟测试?求教######      
    2020-05-30 23:40:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
PostgresChina2018_赖思超_PostgreSQL10_hash索引的WAL日志修改版final 立即下载
Kubernetes下日志实时采集、存储与计算实践 立即下载
日志数据采集与分析对接 立即下载