当前应用程序位于Spring 3.2/JDK7/Quartz/Log4J2
,我已按照<{p>>计划执行quartz
个作业
Spring Quartz tiggers
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="trigger1" />
<ref bean="trigger2" />
<ref bean="trigger3" />
<ref bean="trigger4" />
<ref bean="trigger5" />
</list>
</property>
</bean>
工作间隔定义
<bean id="trigger1" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="scheduledService1" />
<property name="startDelay" value="5000" />
<property name="repeatInterval" value="2900" />
</bean>
<bean id="trigger2" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="scheduledService2" />
<property name="startDelay" value="7000" />
<property name="repeatInterval" value="3000" />
</bean>
<bean id="trigger3" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="scheduledService3" />
<property name="startDelay" value="9000" />
<property name="repeatInterval" value="3100" />
</bean>
<bean id="trigger4" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="scheduledService4" />
<property name="startDelay" value="11000" />
<property name="repeatInterval" value="3200" />
</bean>
<bean id="trigger5" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="scheduledService5" />
<property name="startDelay" value="13000" />
<property name="repeatInterval" value="2500" />
</bean>
我试图让它们在不同的时段触发。在每个scheduledService
中,它引用了一个带有log4j logger实例的服务类。 fileAppender中的log4j2.xml中只定义了一个记录器,因此应用程序中的所有记录信息都写入安全文件。
我的问题是在这种情况下,如果每个记录器写入由Log4J2
生成的相同日志记录文件,则很可能会导致FileAppender
停止滚动(因为多线程I / O)相同的日志文件,然后日志文件疯狂增长与巨大的文件大小)?如果是这样,如何克服这个问题呢?必须为不同的服务类创建不同的日志文件?我想知道Log4j2是否能以某种方式使上面的场景工作