my_bool check_drop(uint audit_class,MYSQL* mysql,char* table) { char* pfile,*pdate; char sql[FN_LEN] = {0}; if(!mysql || !table) return FALSE; my_snprintf(sql,FN_LEN,"DROP TABLE %s", table); pdate = get_current_datetime(audit_datetime); if(audit_class == 2) { opt_audit_class = 2; if(!execute_no_query(mysql,sql)) return FALSE; pfile = get_audit_file_name(audit_name,FILE_NAME_LEN); return check_file_result(pfile,pdate,AUDIT_CREATE_NAME.str,mysql->host,mysql->user,sql); } else{ opt_audit_class = 4; if(!execute_no_query(mysql,sql)) return FALSE; pfile = get_audit_table_name(audit_name,FILE_NAME_LEN); return check_table_result(pfile,pdate,"command",AUDIT_CREATE_NAME.str,"host",mysql->host,"user",mysql->user,"query",sql); } }
const char *get_log_filename() { static char static_log_filename[MAX_BUF]; strcpy(static_log_filename, LOG_DIRECTORY); strcat(static_log_filename, get_current_datetime("/mysql_update_%Y%m%d.log")); return static_log_filename; }
int write_log(int log_id, ...) { char buf[MAX_BUF]; va_list args; va_start(args, log_id); strcpy(buf, get_current_datetime("%Y/%m/%d %H:%M:%S ")); vsprintf(buf+strlen(buf), get_log_by_id(log_id), args); fputs(buf, glog); fputs("\n", glog); va_end(args); return 0; }
/****************************************************************************** * @brief Make logfile name string. *****************************************************************************/ void get_logname(const char *path, int id, char *filename) { char timestamp[MAXSTRING]; char *ext = ".txt"; char *prefix = "vic.log."; memset(timestamp, 0, MAXSTRING); get_current_datetime(timestamp); memset(filename, 0, MAXSTRING); if (id != MISSING) { snprintf(filename, MAXSTRING - 1, "%s%s%s.%06d%s", path, prefix, timestamp, id, ext); } else { snprintf(filename, MAXSTRING - 1, "%s%s%s%s", path, prefix, timestamp, ext); } }