在log4J中使用时,缓冲区对Async Appender有何帮助

时间:2012-04-19 06:43:40

标签: java log4j

我在我的应用程序中使用asyncappender,下面有四个rollingfileappender。 我无法获得其中使用的缓冲区的详细信息。 我需要澄清:

  1. 缓冲区如何工作?
  2. 如何记录缓冲区中的事件后刷新缓冲区?
  3. 我们可以使用配置文件(.xml文件)进行刷新吗?还是需要在java类中编写代码?

1 个答案:

答案 0 :(得分:1)

  1. 有一个记录事件的队列。有一个调度程序线程从队列中获取事件并将其发布到底层的appender。
  2. 2,3。线程会在某个时刻自动刷新。

    你无法手动控制刷新,我认为这是设计,因为它是实现细节。

    我认为异步appender对文件追加器没有任何意义,因为它们通常工作得足够快。我认为它的主要目的是包裹数据库或smtp appender,它们可能会产生暂时的网络故障。