使用logback记录JSF中的每个方法调用

时间:2017-11-07 17:09:46

标签: jsf logging

大家好我是java和JSF的新手,我的老板要我自动记录用JSF制作的Web应用程序中的每个事件或方法调用

请帮助

2 个答案:

答案 0 :(得分:1)

你正在寻找单一用例,而我在处理多个案例的过程中,尤其是为了减少我最新项目的源代码......我发现了面向方面编程形式的光辉东西 - > Java世界中的AspectJ。

你可以在这里找到非常好的文章: http://www.yegor256.com/2014/06/01/aop-aspectj-java-method-logging.html

您可以使用自定义注释实现该行为,或者只是将其硬链接到您的应用程序中,因此您无需在代码中指定任何内容,并且每个事件都将使用特定行为进行自动操作(使用/不使用数据等进行日志记录) )。

这样做的另一个非常好的例子是: http://www.baeldung.com/spring-performance-logging

只需添加,与记录事件相同,您可以在出现错误处理程序时创建AspectJ自动日志记录。

不仅如此,您还可以通过在错误/事件处理程序中编写简单的代码行,以统一的方式在整个应用程序中以完全通用的方式处理所有错误...

注意:不要重新发明轮子,所以请看其他人收集有用的AOP,以便在您的项目中重复使用:-))开源是一个很好的社区: https://github.com/jcabi/jcabi-aspects

答案 1 :(得分:0)

如果您的managedbeans是CDI,您可以使用拦截器。在这里查看Interceptor的官方教程https://docs.oracle.com/javaee/7/tutorial/cdi-adv006.htm

拦截器可以拦截CDI中的每个方法调用,你可以在拦截器方法中连接你的日志代码。