Dummy for skygw_log_rotate.

This commit is contained in:
VilhoRaatikka
2014-11-11 18:33:17 +02:00
parent 8311d02f61
commit 8af97016bb
2 changed files with 37 additions and 4 deletions

View File

@ -1428,6 +1428,37 @@ return_err:
return err; return err;
} }
int skygw_log_rotate(
logfile_id_t id)
{
int err = 0;
goto return_err;
va_list valist; /**< Dummy, must be present but it is not processed */
if (!logmanager_register(false)) {
ss_dfprintf(stderr,
"Can't register to logmanager, rotating failed\n");
goto return_err;
}
CHK_LOGMANAGER(lm);
err = logmanager_write_log(id, true, false, false, 0, NULL, valist);
if (err != 0) {
fprintf(stderr, "skygw_log_flush failed.\n");
goto return_unregister;
}
return_unregister:
logmanager_unregister();
return_err:
return err;
}
/** /**
* @node Register as a logging client to logmanager. * @node Register as a logging client to logmanager.
* *
@ -2602,7 +2633,8 @@ static void* thr_filewriter_fun(
flushall_logfiles = skygw_thread_must_exit(thr); flushall_logfiles = skygw_thread_must_exit(thr);
/** Process all logfiles which have buffered writes. */ /** Process all logfiles which have buffered writes. */
for (i=LOGFILE_FIRST; i<=LOGFILE_LAST; i <<= 1) { for (i=LOGFILE_FIRST; i<=LOGFILE_LAST; i <<= 1)
{
retry_flush_on_exit: retry_flush_on_exit:
/** /**
* Get file pointer of current logfile. * Get file pointer of current logfile.
@ -2651,14 +2683,14 @@ static void* thr_filewriter_fun(
* buffer is at least half-full * buffer is at least half-full
* -> write to disk * -> write to disk
*/ */
while(bb->bb_refcount > 0) { while(bb->bb_refcount > 0)
{
simple_mutex_unlock( simple_mutex_unlock(
&bb->bb_mutex); &bb->bb_mutex);
simple_mutex_lock( simple_mutex_lock(
&bb->bb_mutex, &bb->bb_mutex,
true); true);
} }
err = skygw_file_write( err = skygw_file_write(
file, file,
(void *)bb->bb_buf, (void *)bb->bb_buf,

View File

@ -75,6 +75,7 @@ void skygw_logmanager_exit(void);
void skygw_log_done(void); void skygw_log_done(void);
int skygw_log_write(logfile_id_t id, const char* format, ...); int skygw_log_write(logfile_id_t id, const char* format, ...);
int skygw_log_flush(logfile_id_t id); int skygw_log_flush(logfile_id_t id);
int skygw_log_rotate(logfile_id_t id);
int skygw_log_write_flush(logfile_id_t id, const char* format, ...); int skygw_log_write_flush(logfile_id_t id, const char* format, ...);
int skygw_log_enable(logfile_id_t id); int skygw_log_enable(logfile_id_t id);
int skygw_log_disable(logfile_id_t id); int skygw_log_disable(logfile_id_t id);