我想知道当文件大小达到 10MB 时如何拆分码头服务器日志并在运行时进行备份?
我正在使用码头 8 网络服务器。
提前致谢。
伊梅什
感谢杰西的回复,但我没有尝试你提到的方式。我以这种方式解决了这个问题。下载了码头源并获得了命名的日志文件,RolloverFileOutputStream.java
然后我更改了maxFileLenth
方法中的值RollTaskBySize()
。
long maxFileLenth = 1048576*10L; //(10MB)
我将此文件放在我的源代码中并更改了 jetty-loggin.xml 中的值。设置路径以从我的项目中获取修改后的 RolloverFileOutputStream.java,如下所示。
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<New id="ServerLog" class="java.io.PrintStream">
<Arg>
<!-- ****** THIS IS THE CHANGE THAT I MADE ***** -->
<New class="rezg.gdsws.util.RolloverFileOutputStream">
<Arg>
<Property name="jetty.logs" default="/var/log/rezg/app/jetty"/>/yyyy_mm_dd.Server.log
</Arg>
<Arg type="boolean">false</Arg>
<Arg type="int">90</Arg>
<Arg><Call class="java.util.TimeZone" name="getTimeZone"><Arg>GMT</Arg></Call></Arg>
<Get id="ServerLogName" name="datedFilename"/>
</New>
</Arg>
</New>
将 slf4j api jar 放入 lib 目录,然后 slf4j 将用于从那时起进行日志记录..放入您想要的日志记录 impl 并进行相应配置
您可以在此处查看使用 logback 进行繁重工作的基本设置:
http://wiki.eclipse.org/Jetty/Tutorial/Sifting_Logs_with_Logback