diff --git a/gloam/conf/config.properties b/gloam/conf/config.properties index 1fe7a12..7aae17b 100644 --- a/gloam/conf/config.properties +++ b/gloam/conf/config.properties @@ -1,7 +1,7 @@ #数据库连接 #jdbcUrl = jdbc:sqlite:/home/wwr/oam2.db #jdbcUrl = jdbc:sqlite:D:\\Workspaces\\wwrWork\\gloam\\db\\oam.db -jdbcUrl = jdbc:sqlite:C:/Users/ThinkPad/git/oam/gloam/db/oam.db +jdbcUrl = jdbc:sqlite:C:/Users/Administrator/Desktop/oam.db #jdbcUrl = jdbc:sqlite://10.0.6.103/sqlite/oam.db devMode = true @@ -48,4 +48,7 @@ device_config_scriptCmd=device_config #进程更新文件上传目录 process_upload_path=/home/wwr/gloam/upload -ipinfo.config.path=C:\\Users\\ThinkPad\\git\\oam\\gloam\\collector\\config \ No newline at end of file +ipinfo.config.path=C:\\Users\\ThinkPad\\git\\oam\\gloam\\collector\\config + +#监测表定时清理配置 +detect_info_clear=_nmsc,_cpu,_disk,_memory,_netdata,_ping,_port,_process,_system_date,detection_info \ No newline at end of file diff --git a/gloam/src/com/nis/gloam/config/BaseConfig.java b/gloam/src/com/nis/gloam/config/BaseConfig.java index d64e5e5..fcbd6a5 100644 --- a/gloam/src/com/nis/gloam/config/BaseConfig.java +++ b/gloam/src/com/nis/gloam/config/BaseConfig.java @@ -48,11 +48,13 @@ import com.nis.gloam.interceptor.LoginInterceptor; import com.nis.gloam.interceptor.OperateLogInterceptor; import com.nis.gloam.service.NodeTableService; import com.nis.gloam.task.DetectDataFileReadTask; +import com.nis.gloam.task.LogTimerTask; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; +import java.util.Date; import java.util.List; import java.util.Properties; import java.util.Timer; @@ -208,5 +210,8 @@ public class BaseConfig extends JFinalConfig{ Timer timer = new Timer(); timer.schedule(new DetectDataFileReadTask(timer), 2000); logger.info("文件定时读取任务启动"); + Timer clearTableTimer=new Timer(); + clearTableTimer.schedule(new LogTimerTask(clearTableTimer), new Date()); + logger.info("监测数据定时清理任务启动"); } } diff --git a/gloam/src/com/nis/gloam/task/LogTimerTask.java b/gloam/src/com/nis/gloam/task/LogTimerTask.java index 5680bd8..8a97dd4 100644 --- a/gloam/src/com/nis/gloam/task/LogTimerTask.java +++ b/gloam/src/com/nis/gloam/task/LogTimerTask.java @@ -1,10 +1,14 @@ package com.nis.gloam.task; +import java.util.Arrays; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.Timer; import java.util.TimerTask; + +import org.apache.log4j.Logger; + import com.jfinal.kit.PropKit; import com.jfinal.plugin.activerecord.Db; /** @@ -14,23 +18,45 @@ import com.jfinal.plugin.activerecord.Db; */ public class LogTimerTask extends TimerTask { private Timer timer; - + private Logger logger=Logger.getLogger(LogTimerTask.class); public LogTimerTask(Timer timer){ this.timer = timer; } @Override public void run() { + try { PropKit.use("config.properties"); int date = Integer.parseInt(PropKit.get("delete_logtime")); + String[] clearTables=PropKit.get("detect_info_clear").split(","); + logger.info("clearTables-->"+Arrays.toString(clearTables)); Calendar calendar=new GregorianCalendar(); calendar.setTime(new Date()); calendar.add(calendar.DATE, -date); - Db.update("delete from sys_log where create_time"+sql+calendar.getTime().getTime()); + + Db.update(sql,calendar.getTime().getTime()); + logger.info("清理表:"+table+"完成"); + + + } + restart(date); + } catch (Exception e) { + logger.error("监测表清理失败!",e); + } } //定时删除日志 一周清除一次一周前的日志 可修改配置文件来设定日志保存天数 - public void restart(){ - timer.schedule(new LogTimerTask(timer), 604800000); + public void restart(int day){ + timer.schedule(new LogTimerTask(timer), day*24*3600*1000); } }