﻿
				×××××××××××××××××××××××××××××××××××××××××
								修改记录
				×××××××××××××××××××××××××××××××××××××××××
   

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
版本: 2.0.1    时间: 2013-10-10    人员：梁东成

1、增加文件归档执行器 ArcFileRunner
	1) ArcFileRunner 把符合条件的文件或文件夹压缩归档到指定目录，并删除原文件或文件夹
	2) 属性 expire 指定归档到期时间，属性 archive-path 指定归档目录
	3) 归档文件格式：{原文件/文件夹名称}_{系统时间}.zip
	
		（例如：下面的配置把最后修改时间超过 90 天的文件或文件夹归档到 ‘E:\backup’ 目录）
		
		<archive-files archive-path="E:\backup" expire=90>
			<file path="X:\MyApp\logs">*</file>
			<file path="X:\nginx-1.4.1\logs">*.log</file>
		</archive-files>

2、支持多组文件清理策略
	1) config.xml 可以配置多项 <delete-files>、<cut-files> 或 <archive-files>
	2) 不同的配置项可以使用不同的清理策略参数

		（例如：下面配置的两组归档清理策略中，分别指定不同的归档到期时间和归档目录）
		
		<archive-files archive-path="E:\backup" expire=90>
			<file path="X:\MyApp\logs">*</file>
			<file path="X:\nginx-1.4.1\logs">*.log</file>
		</archive-files>
		<archive-files archive-path="E:\backup2" expire=300>
			<file path="X:\MyApp2\logs">*</file>
			<file path="X:\Tomcat-6\logs">*.log</file>
		</archive-files>

3、文件删除执行器 DelFileRunner 支持递归删除文件夹
	1) DelFileRunner 会递归删除符合条件的文件夹及其中的所有文件
	2) 注意：在判断是否删除文件夹时，检测的是文件夹的最后修改时间，而不是其中文件的最后修改时间

		（例如：下面的配置会删除 logs 目录下所有最后修改时间超过 90 天的文件或文件夹）
		
		<delete-files expire=90>
			<file path="X:\MyApp\logs">*</file>
		</delete-files>

4、执行器首次启动延时配置 ‘<start-check-delay>’ 支持指定绝对时间
	1) 当指定为一个整数值时，执行器首次启动延时时间为该值设定的小时数
	2) 当指定为一个 ‘hh:mm’ 格式的值时，执行器首次启动时间为该时分值

		（例如）
		
		<!-- 12 小时后首次启动执行器 -->
		<start-check-delay>12</start-check-delay>
		<!-- 12 点 34 分首次启动执行器，如果当前时间超过 12 点 34 分则在明天的 12 点 34 分首次启动执行器 -->
		<start-check-delay>12:34</start-check-delay>

5、增加单次运行模式（running-only-once mode）
	1) 在单次运行模式下，LogCutter 在启动时立刻运行所有执行器，当所有执行器运行完毕后退出程序
	2) 单次运行模式可避免 LogCutter 作为常驻进程一直运行，配合 CronTab 等任务调度器一起使用则能达到定时清理的目的
	3) 在单次运行模式下 运行 LogCutter 会忽略配置文件的 ‘start-check-delay’ 和 ‘check-interval’ 配置项
	4) 通过命令行参数 ‘-1’ 指示使用单次运行模式启动 LogCutter

		（例如）
		
		   Windows : > run.bat -1
		Unix/Linux : > run.sh -1 [ -d ]

6、优化启动脚本 run.sh / run.bat
	1) 只需配置好系统环境变量 ‘JAVA_HOME’（或 ‘JRE_HOME’） 和 ‘CLASSPATH’ 即可通过启动脚本运行 LogCutter
	2) 启动脚本接受命令行参数并传递到 LogCutter 程序中。其中 run.sh 通过额外的参数 ‘-d’ 指示后台运行 LogCutter

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
版本: 1.0.3    时间: 2013-09-10    人员：梁东成

1、程序包路径改为 org.jessma.logcutter.*
2、增加 Win64 服务程序 LogCutter_x64.exe
3、完善使用帮助文档
4、程序代码中加入 License 注释

－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－
