使用 AsynchAppender 在 Java EE 中进行异步日志记录
我们希望在 Java EE 应用程序中使用 Log4J 的“AsynchAppender”。该应用程序部署在 Glassfish V2 应用程序服务器
上。
Log4J的“AsynchAppender”是基于线程实现的。反过来,在 Java EE 应用程序中应该避免使用线程。有使用“AsynchAppender”的经验吗?在 Java EE 应用程序中使用 Log4J 进行异步日志记录的最佳实践有哪些?
We would like to use Log4J's "AsynchAppender"
within our Java EE application. The application is deployed on a Glassfish V2 app-server
.
Log4J's "AsynchAppender" is based on a thread implementation. Threads in turn should be avoided within Java EE applications. Are there any experiences using the "AsynchAppender"? What are best practices doing asynchronous logging using Log4J in Java EE applications?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 log4j AsyncAppender 在 J2EE 应用程序中以异步方式记录日志。
AsyncAppender 收集发送给它的事件,然后将它们分派给所有引用的真实附加程序。它使用单独的线程来服务其缓冲区中的事件。在 J2EE 应用程序中,通常不鼓励在请求处理程序中实现线程调用。最佳实践是将日志记录作为单独的服务来处理该应用程序的所有日志。
You can use log4j AsyncAppender to log asynchronous way in your J2EE applications.
AsyncAppender collects the events sent to it and then dispatch them to all the real appenders that are referred.It uses a separate thread to serve the events in its buffer.Implementing thread calls in request handler is generally discouraged in J2EE applications. Best practice is to dedicate logging as separate service which will handles all logs of that application.