Actually sheepdog rotates the log when its size is 500M.
This interfere with the linux distribution logrotate.
When receiving HUP, sheepdog has only to recreate a file
descriptor.

Signed-off-by: Valerio Pachera <[email protected]>
---
 lib/logger.c |   32 --------------------------------
 1 file changed, 32 deletions(-)

diff --git a/lib/logger.c b/lib/logger.c
index 02bab00..617cd65 100644
--- a/lib/logger.c
+++ b/lib/logger.c
@@ -453,19 +453,6 @@ static void dolog(int prio, const char *func, int line,
 static void rotate_log(void)
 {
        int new_fd;
-
-       if (access(log_nowname, R_OK) == 0) {
-               char old_logfile[256];
-               time_t t;
-               struct tm tm;
-               time(&t);
-               localtime_r((const time_t *)&t, &tm);
-               snprintf(old_logfile, sizeof(old_logfile),
-                        "%s.%04d-%02d-%02d-%02d-%02d",
-                        log_nowname, tm.tm_year + 1900, tm.tm_mon + 1,
-                        tm.tm_mday, tm.tm_hour, tm.tm_min);
-               rename(log_nowname, old_logfile);
-       }
        new_fd = open(log_nowname, O_RDWR | O_CREAT | O_APPEND, 0644);
        if (new_fd < 0) {
                syslog(LOG_ERR, "failed to create new log file\n");
@@ -600,28 +587,9 @@ static void logger(char *log_dir, char *outfile)
 
        while (la->active) {
                log_flush();
-
-               block_sighup();
-
-               if (dst_type == LOG_DST_DEFAULT && max_logsize) {
-                       off_t offset;
-
-                       offset = lseek(log_fd, 0, SEEK_END);
-                       if (offset < 0) {
-                               syslog(LOG_ERR, "sheep log error\n");
-                       } else {
-                               size_t log_size = (size_t)offset;
-                               if (log_size >= max_logsize)
-                                       rotate_log();
-                       }
-               }
-
-               unblock_sighup();
-
                if (getppid() != sheep_pid)
                        /* My parent (sheep process) is dead. */
                        break;
-
                sleep(1);
        }
 
-- 
1.7.10.4

-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to