From c5b30d6c6c5640618512f219f7db2186afbb7b7b Mon Sep 17 00:00:00 2001 From: somebodywashere <68244480+somebodywashere@users.noreply.github.com> Date: Wed, 20 Mar 2024 13:47:35 +0300 Subject: [PATCH] Fix clear logs job (#2090) --- web/job/clear_logs_job.go | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/web/job/clear_logs_job.go b/web/job/clear_logs_job.go index 70967657..c0291131 100644 --- a/web/job/clear_logs_job.go +++ b/web/job/clear_logs_job.go @@ -19,29 +19,22 @@ func (j *ClearLogsJob) Run() { logFiles := []string{xray.GetIPLimitLogPath(), xray.GetIPLimitBannedLogPath(), xray.GetAccessPersistentLogPath()} logFilesPrev := []string{xray.GetIPLimitBannedPrevLogPath(), xray.GetAccessPersistentPrevLogPath()} - // clear old previous logs - for i := 0; i < len(logFilesPrev); i++ { - if err := os.Truncate(logFilesPrev[i], 0); err != nil { - logger.Warning("clear logs job err:", err) - } - } - // clear log files and copy to previous logs for i := 0; i < len(logFiles); i++ { if i > 0 { // copy to previous logs - logFilePrev, err := os.OpenFile(logFilesPrev[i-1], os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0644) + logFilePrev, err := os.OpenFile(logFilesPrev[i-1], os.O_CREATE|os.O_TRUNC|os.O_WRONLY, 0644) if err != nil { logger.Warning("clear logs job err:", err) } - logFile, err := os.Open(logFiles[i]) - if err != nil { - logger.Warning("clear logs job err:", err) - } - - _, err = io.Copy(logFilePrev, logFile) - if err != nil { + logFile, err := os.OpenFile(logFiles[i], os.O_CREATE|os.O_RDONLY, 0644) + if err == nil { + _, err = io.Copy(logFilePrev, logFile) + if err != nil { + logger.Warning("clear logs job err:", err) + } + } else { logger.Warning("clear logs job err:", err) }