From 9b73d1c0e9ca979700493337d0a87497b882d811 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 29 Oct 1998 11:11:38 +0000 Subject: [PATCH] put the pid on each line of the log file to facilitate auto-parsing. Requested by Jarkko Hietaniemi (jhi@iki.fi) --- cleanup.c | 3 +++ log.c | 24 ++++++++++++++++++++---- main.c | 5 +---- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/cleanup.c b/cleanup.c index b4eac0c4..ee2fa4d5 100644 --- a/cleanup.c +++ b/cleanup.c @@ -57,6 +57,9 @@ void exit_cleanup(int code) unlink(lp_pid_file()); } } + + if (code) log_exit(code); + exit(code); } diff --git a/log.c b/log.c index a3f77874..3172df64 100644 --- a/log.c +++ b/log.c @@ -192,8 +192,8 @@ void log_send(struct file_struct *file) { extern int module_id; if (lp_transfer_logging(module_id)) { - rprintf(FLOG,"Sending %s [%s] %.0f %s\n", - client_name(0), client_addr(0), + rprintf(FLOG,"%d Sending %s [%s] %.0f %s\n", + (int)getpid(), client_name(0), client_addr(0), (double)file->length, f_name(file)); } } @@ -203,12 +203,27 @@ void log_recv(struct file_struct *file) { extern int module_id; if (lp_transfer_logging(module_id)) { - rprintf(FLOG,"Receiving %s [%s] %.0f %s\n", - client_name(0), client_addr(0), + rprintf(FLOG,"%d Receiving %s [%s] %.0f %s\n", + (int)getpid(), client_name(0), client_addr(0), (double)file->length, f_name(file)); } } +/* called when the transfer is interrupted for some reason */ +void log_exit(int code) +{ + if (code == 0) { + extern struct stats stats; + rprintf(FLOG,"%d wrote %.0f bytes read %.0f bytes total size %.0f\n", + (int)getpid(), + (double)stats.total_written, + (double)stats.total_read, + (double)stats.total_size); + } else { + rprintf(FLOG,"%d transfer interrupted\n", (int)getpid()); + } +} + /* log the incoming transfer of a file for interactive use, this will be called at the end where the client was run */ void log_transfer(struct file_struct *file, char *fname) @@ -219,3 +234,4 @@ void log_transfer(struct file_struct *file, char *fname) rprintf(FINFO,"%s\n", fname); } + diff --git a/main.c b/main.c index 146f1e53..00ccd8e8 100644 --- a/main.c +++ b/main.c @@ -36,10 +36,7 @@ static void report(int f) extern int do_stats; if (am_daemon) { - rprintf(FLOG,"wrote %.0f bytes read %.0f bytes total size %.0f\n", - (double)stats.total_written, - (double)stats.total_read, - (double)stats.total_size); + log_exit(0); if (f == -1 || !am_sender) return; } -- 2.34.1