def get_log_value(self): ''' 获取配置并分析日志文件,压缩分析结果 ''' confdic = {} # 存放配置参数 logdic = {} # 存放日志配置参数 conf = Gernal_conf(self.config) confdic = conf.get_value(self.config) errorlog_dic = self.get_log_name(confdic['error_log_file']) tomcat_log = confdic['tomcat_log'] error_log = os.path.join( errorlog_dic['logpath'], errorlog_dic['log_name']) log = Tomcat_log_analysis(confdic['log_time'],confdic['buffer']) if os.path.exists(tomcat_log): datalines = log.get_lastlog(tomcat_log) log.deal_log(datalines, self.temp_log) result = log.log_analysis(self.temp_log) f_out = gzip.open(confdic['error_log_file'], 'wb') for line in result: if line: f_out.write(line) f_out.close() mail_send = Send_Email(confdic) mail_send.sendAttachMail()
class Tomcat_log(): def __init__(self,config): self.config = config time_local = time.strftime('%Y-%m-%d', time.localtime(time.time())) self.temp_log = "/tmp/%s.tmp.log" % time_local def set_default_value(self): ''' 设置配置文件默认值 ''' self.set_value = Gernal_conf(self.config) self.set_value.set_log_default_value() self.set_value.save() def get_log_name(self, log): file_log = log # 文件名含有gz的 logfile = os.path.basename(file_log) # 日志路径 logpath = os.path.dirname(file_log) # 文件名不含gz的 log_name = '.'.join(logfile.split('.')[0:3]) return {"logfile": logfile, "logpath": logpath, "log_name": log_name} def get_log_value(self): ''' 获取配置并分析日志文件,压缩分析结果 ''' confdic = {} # 存放配置参数 logdic = {} # 存放日志配置参数 conf = Gernal_conf(self.config) confdic = conf.get_value(self.config) errorlog_dic = self.get_log_name(confdic['error_log_file']) tomcat_log = confdic['tomcat_log'] error_log = os.path.join( errorlog_dic['logpath'], errorlog_dic['log_name']) log = Tomcat_log_analysis(confdic['log_time'],confdic['buffer']) if os.path.exists(tomcat_log): datalines = log.get_lastlog(tomcat_log) log.deal_log(datalines, self.temp_log) result = log.log_analysis(self.temp_log) f_out = gzip.open(confdic['error_log_file'], 'wb') for line in result: if line: f_out.write(line) f_out.close() mail_send = Send_Email(confdic) mail_send.sendAttachMail()
def set_default_value(self): ''' 设置配置文件默认值 ''' self.set_value = Gernal_conf(self.config) self.set_value.set_log_default_value() self.set_value.save()