在托管我的Web应用程序的办公室里,LOG4J显示在本地测试的典型操作花费的时间不到1秒,
07 Nov 2019 12:30:01,860 INFO ParticipantServiceImpl(Line 272) - User 1: Operation Start
...
07 Nov 2019 12:30:02,796 INFO ParticipantServiceImpl(Line 881) - User 1: Operation End
Production LOG4J显示,由于许多并发用户通过手机连接世界各地,因此平均操作时间接近5-7秒。输出通常是混乱的,而且混乱的,但是我担心时间戳:时间戳本身是否可靠(即使混乱)?在真实的用户体验中确实存在性能问题,还是LOG4J会出现刷新或并发延迟?
07 Nov 2019 12:30:01,860 INFO ParticipantServiceImpl(Line 272) - User 1: Operation Start
07 Nov 2019 12:31:01,860 INFO ParticipantServiceImpl(Line 272) - User 2: Operation Start
...
07 Nov 2019 12:37:02,796 INFO ParticipantServiceImpl(Line 881) - User 1: Operation End
LOG4J配置为
<RollingFile name="file" fileName="/local/content/tomcat/app/logs/app.log" append="true"
filePattern="/local/content/tomcat/app/logs/app.log.%i">
<PatternLayout>
<Pattern>%d{DATE} %-5p %c{1}(Line %L) - %m%n</Pattern>
</PatternLayout>
<Policies>
<SizeBasedTriggeringPolicy size="5 MB" />
</Policies>
<DefaultRolloverStrategy max="5" />
</RollingFile>
</Appenders>
<Loggers>
<Logger name="com.app" level="debug">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<Logger name="com.opensymphony.xwork2.interceptor" level="info">
<AppenderRef ref="file" />
</Logger>
<Logger name="org.springframework.orm" level="info">
<AppenderRef ref="file" />
</Logger>
<Logger name="org.hibernate.engine.transaction" level="DEBUG">
<AppenderRef ref="console" />
</Logger>
<Logger name="net.sf.ehcache" level="trace">
<AppenderRef ref="file" />
</Logger>
<Root level="info">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Root>
</Loggers>