Showing posts with label nohup. Show all posts
Wednesday, July 28, 2010
Using rotatelogs to rotate nohup.out
Extending my focus on rotatelogs, I was thinking of to use them with other software. This might help me to on how to rotate nohup.out without using cronjob. First, I need something to throw STDOUT. Something simple as below;
Script above will run in infinite loop and echo date output to STDOUT every 2 secs. Next is to test it with nohup so it could survive logout.
Let it run for a couple of seconds and kill it by CTRL-C. Then verify that the nohup.out contains couple lines of date in it. Next step is to pipe it with rotatelogs and observe what happen
Command line above will pipe the STDOUT from the simple test.sh and send them to rotatelogs to be rotated accordingly. nohup.out.%S will cause the nohup.out filename to rotate as below (%S: 2-digit second from rotatelogs)
Oops! Now I relize that the output file will never be replaced. It keep on appending to an old file. Meaning that it will grow and need to be manually archive. :-(
Looking forward to try logrotate and it will be my next post, soon.
#!/bin/sh
while [ 1 ]
do
echo `date`
sleep 2
done
Script above will run in infinite loop and echo date output to STDOUT every 2 secs. Next is to test it with nohup so it could survive logout.
username@myserver:/mydir $ nohup ./test.sh
nohup: appending output to `nohup.out'
Let it run for a couple of seconds and kill it by CTRL-C. Then verify that the nohup.out contains couple lines of date in it. Next step is to pipe it with rotatelogs and observe what happen
username@myserver:/mydir $ nohup ./test.sh | ./rotatelogs nohup.out.%S 10 &
[1] 24828
Command line above will pipe the STDOUT from the simple test.sh and send them to rotatelogs to be rotated accordingly. nohup.out.%S will cause the nohup.out filename to rotate as below (%S: 2-digit second from rotatelogs)
-rw-r--r-- 1 username usergrp 1479 2010-07-28 10:32 nohup.out.40
-rw-r--r-- 1 username usergrp 1595 2010-07-28 10:32 nohup.out.50
-rw-r--r-- 1 username usergrp 1711 2010-07-28 10:33 nohup.out.00
-rw-r--r-- 1 username usergrp 1682 2010-07-28 10:33 nohup.out.10
-rw-r--r-- 1 username usergrp 1653 2010-07-28 10:33 nohup.out.20
-rw-r--r-- 1 username usergrp 1566 2010-07-28 10:33 nohup.out.30
Oops! Now I relize that the output file will never be replaced. It keep on appending to an old file. Meaning that it will grow and need to be manually archive. :-(
Looking forward to try logrotate and it will be my next post, soon.
Subscribe to:
Posts
(
Atom
)

