系统日志采集传入FTP服务器上

来源:互联网 发布:神经元网络芯片 编辑:程序博客网 时间:2024/05/16 12:32

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;


public class Demo {
 /**
  * 日志目录
  */
 private static final String LOG_FOLDER = "d:/log";
 /**
  * 上次日志生成时间
  */
 private static Date LAST_DATE = null;
 /**
  * 当前日志文件
  */
 private static File CURRENT_LOG_FILE = null;
 /**
  * 格式化日期
  */
 private static final SimpleDateFormat SDF = new SimpleDateFormat("yyyy_MM_dd_hh_mm_ss");
 /**
  * 一小时
  */

 private static String FtpUrl = ftp://yingwen:123@192.168.20.88:21/;

/**

*要上传至FTP服务器地址

*
/
 private static final long HOUR = 60 * 60 * 1000;
 //OA_2009_06_28_09_05_00.log
 /**
  * 记录日志
  */
 public static final void log(String message) {
  if(LAST_DATE == null) {// 如果第一次记录
   // 当前日期
   LAST_DATE = new Date();
   // 生成文件
   CURRENT_LOG_FILE = new File(LOG_FOLDER, "OA_"+SDF.format(LAST_DATE)+".log")); //生成的文件格式为--

        

                                                                                                                            [ OA_2010_06_29_09_17_14.log]

try {
    FtpTool ftool = new FtpTool(FtpUrl); //此类用来ftp上传和下载用
    ftool.login();
    ftool.upload(LOG_FOLDER,"OA_"+SDF.format(LAST_DATE)+".log"); //第一个参数是本地路径,第二参数为要上传的文件名称
   } catch (IOException e) {
    e.printStackTrace();
   }  

} else {// TODO 检查时间
   if(System.currentTimeMillis() - LAST_DATE.getTime() >= 12 * HOUR) {
    // 生成新文件
    LAST_DATE = new Date();
    CURRENT_LOG_FILE = new File(LOG_FOLDER, SDF.format(LAST_DATE));
   }
  }
  // TODO 记录日志
  // TODO 记录格式
  _log(CURRENT_LOG_FILE, message);
 }
 /**
  * 写入文件
  * @param logFile
  * @param message
  */
 private static final void _log(File logFile, String message) {
  // TODO 文件写入
  // 写入到文件中
 }
}

原创粉丝点击