[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r5366 - in GNUnet: . src/util/loggers
From: |
gnunet |
Subject: |
[GNUnet-SVN] r5366 - in GNUnet: . src/util/loggers |
Date: |
Sun, 29 Jul 2007 01:53:57 -0600 (MDT) |
Author: grothoff
Date: 2007-07-29 01:53:57 -0600 (Sun, 29 Jul 2007)
New Revision: 5366
Modified:
GNUnet/ChangeLog
GNUnet/src/util/loggers/file.c
Log:
fixing log rotation
Modified: GNUnet/ChangeLog
===================================================================
--- GNUnet/ChangeLog 2007-07-29 07:34:05 UTC (rev 5365)
+++ GNUnet/ChangeLog 2007-07-29 07:53:57 UTC (rev 5366)
@@ -1,3 +1,6 @@
+Sun Jul 29 01:53:32 MDT 2007
+ Fixing log rotation.
+
Sat Jul 21 23:42:11 MDT 2007
Radical changes to MySQL implementation (trying to
address certain scalability issues).
Modified: GNUnet/src/util/loggers/file.c
===================================================================
--- GNUnet/src/util/loggers/file.c 2007-07-29 07:34:05 UTC (rev 5365)
+++ GNUnet/src/util/loggers/file.c 2007-07-29 07:53:57 UTC (rev 5366)
@@ -145,7 +145,7 @@
FREE (fullname);
return OK;
}
- logdate = &fullname[strlen (def)];
+ logdate = &fullname[strlen (def) + 1];
datefmt = getDateFormat ();
ret = strptime (logdate, datefmt, &t);
FREE (datefmt);
@@ -198,12 +198,25 @@
}
static void
+purge_old_logs (FileContext * fctx, const char *logfilename)
+{
+ char *dirname;
+
+ dirname = STRDUP (logfilename);
+ while ((strlen (dirname) > 0) &&
+ (dirname[strlen (dirname) - 1] != DIR_SEPARATOR))
+ dirname[strlen (dirname) - 1] = '\0';
+ disk_directory_scan (NULL, dirname, &removeOldLog, fctx);
+ FREE (dirname);
+
+}
+
+static void
filelogger (void *cls, GE_KIND kind, const char *date, const char *msg)
{
FileContext *fctx = cls;
char *name;
int ret;
- char *dirname;
MUTEX_LOCK (fctx->lock);
if (fctx->logrotate)
@@ -223,12 +236,7 @@
}
FREE (fctx->filename);
fctx->filename = name;
- dirname = STRDUP (name);
- while ((strlen (dirname) > 0) &&
- (dirname[strlen (dirname) - 1] != DIR_SEPARATOR))
- dirname[strlen (dirname) - 1] = '\0';
- disk_directory_scan (fctx->ectx, dirname, &removeOldLog, fctx);
- FREE (dirname);
+ purge_old_logs (fctx, name);
}
else
{
@@ -329,6 +337,7 @@
fctx->basename = STRDUP (filename);
fctx->logstart = start;
fctx->lock = MUTEX_CREATE (YES);
+ purge_old_logs (fctx, name);
return GE_create_context_callback (mask,
&filelogger, fctx, &fileclose, NULL);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r5366 - in GNUnet: . src/util/loggers,
gnunet <=