Clear log file in use.


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Clear log file in use.
# 8  
Old 06-19-2007
Yes,Author seems to be a UNIX GURU. This is a small part of a Commerical Application.

So you meant to say." I cant do anything other than watch the log growing in size !!"
coolbhai
# 9  
Old 06-19-2007
Quote:
Originally Posted by coolbhai
So you meant to say." I cant do anything other than watch the log growing in size !!"
The problems are

(a) if the program always keeps the file open, eg it does not reopen on SIGHUP or every message or day.

(b) trying to clear it atomically

Two parts to my solution...

1. There is a UNIX API called "truncate" which will set a file to a certain number of bytes.

2. we can suspend and resume the program with signals SIGSTOP and SIGCONT

So the steps are

1. write a tiny C program that wraps up truncate

Code:
#include<unistd.h>
#include <errno.h>
int main(int argc,char **argv) {
int rc=0;
      while (--argc)
      {
            const char *p=*++argv;
            if (truncate(p,0UL)) {
                 perror(p);
                 rc=1;
            }
      }
      return rc;
}

2. do the following

kill -STOP pid-of-process
cp logfilename backup
truncate logfilename
kill -CONT pid-of-process
# 10  
Old 06-19-2007
Quote:
So you meant to say." I cant do anything other than watch the log growing in size !!"
NO. I meant to say:

Edit the config file, change the log file to another different name.
Send SIGHUP to the process when you are logged in as root.
truncate the old big file.
# 11  
Old 06-20-2007
Clearing the log file

Try doing
>|log_file
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to clear last 5 characters from 14th field in a file?

Hi, I have a file with 15 fields seperated by '|'. The requirement is to clear the last 5 characters of the 14th field. modifications should be done to the original file . Can some one help me in sorting this out. (2 Replies)
Discussion started by: sureshk_85
2 Replies

2. Shell Programming and Scripting

Tcl and clear case to obtain a file name as variable

proc get_view_rel_str { } { set cc_view :] end]] puts $cc_view set a puts $a set a end]] puts $a set a puts $a set a puts $a set a puts $a } get_view_rel_str this is a script in tcl with clearcase view (1 Reply)
Discussion started by: Syed Imran
1 Replies

3. Shell Programming and Scripting

How to clear contents of a file without deleting it.

Hi, I have a script which will use an input.txt file as an input file. I am providing data to this input file in the script and once the script is executed, I want to clear all the contents of this file as during the second time use of this script, I'll be appending the data in this input... (5 Replies)
Discussion started by: pat_pramod
5 Replies

4. Shell Programming and Scripting

clear extra spaces and tabs in a file

Any help appreciated Thanks sample input: > (extra spaces&tabs in here) test1 (extra spaces&tabs in here) 123.123.123.123 (extra spaces&tabs in here) abc (extra spaces&tabs in here) 123 --- < (extra spaces&tabs in... (3 Replies)
Discussion started by: goofist
3 Replies

5. AIX

clear/delete log from 'last' or 'lastlog' command

Dear Friends , From 'last' or 'lastlog' command , I can get the last login informations of the users . now as a system admin , If I want to delete the log information from this 'last' 'lastog' command , then is it possible to do ? plz inform ... ... (1 Reply)
Discussion started by: shipon_97
1 Replies

6. Shell Programming and Scripting

How to clear a file

Hello, I have a script which creates a certain text file. Whenever I call it, I need to recreate this file, because I have no need in the previous content. So I thought to remove the file every time I call the script, and that way I am sure that the previous content will not interrupt me.... (2 Replies)
Discussion started by: shira
2 Replies

7. Shell Programming and Scripting

clear a file in PERL

Hi, How can i clear the contents of a file in perl? (1 Reply)
Discussion started by: chriss_58
1 Replies

8. Linux

SED/AWK Script to clear log file using timestamp?

I have a log file on our system which fills up with lines that have been timestamped, as follows.... 03/03/2008 10:56:06:815] (ERROR) balance: continuing session to genapp02 : 18500 03/03/2008 10:56:06:820] (ERROR) balance: continuing session to genapp02 : 18500 03/03/2008 10:56:07:003]... (2 Replies)
Discussion started by: davesimm
2 Replies

9. Shell Programming and Scripting

How can I clear a line of a file?

Hello, I want to clear or modify a line of a file. It is possible by cat filename | sed '3d' for example. But If I want "3" to be a variable? I can't do sed '$var d' Help me please Thank you very much (1 Reply)
Discussion started by: Nene
1 Replies

10. AIX

Can't clear error log

Hi errclear seems not working on aix 4.3/rs6k, i can't clear HW error with errclear -d H 0 ??? what is wrong ? thanks. (0 Replies)
Discussion started by: andryk
0 Replies
Login or Register to Ask a Question