[thelist] Server log retrieval & storage
CDitty
mail at redhotsweeps.com
Wed Aug 2 22:50:50 CDT 2000
Actually, the whole cron line is one line. No breaks. This is how I have
it.... (put a space between the .pl and the | symbol.) That's all there is
to it. Feel free to ask any questions you may have.
55 23 * * *
/usr/home/redhot/usr/local/etc/httpd/htdocs/sweeps1/cgi-local/log_archiver.pl
| /usr/bin/mail -s "Stats Archived - Red Hot Sweeps" webmaster at redhotsweeps.com
Enjoy
Chris
At 09:28 PM 08/02/2000 , you wrote:
>Wow, Thanks. I'll dig through the code and make the mods to match my site.
>Let's hope I don't have to bug you directly for too many questions.(grin)
>Here's
>the only one I have right now.(grin)
>
>Because of the evil linebreak, I'm not too sure how the "cronfile" line(s)
>should read. Could you resend them and mark where lines start - or
>somehow give
>me a hint? I think it's only two lines but I'm not sure. Thanks.
>
>Very much appreciated. I'll share this whenever someone asks.
>-Hugh
>
> > -----Original Message-----
> > [mailto:thelist-admin at lists.evolt.org]On Behalf Of CDitty
> > Subject: Re: [thelist] Server log retrieval & storage
> >
> > I have you one better. I had a need for this about a year ago. Someone
> > helped me write it and now I will pass it on to the list. I have it run
> > daily, but there is no reason you couldn't run it weekly/monthly.
> >
> > #!/usr/bin/perl
> > # A shell script to rename/archive and move the access logs
> >
> >
> > # Settings
> > $basepath = "FULL PATH TO STATS DIRECTORY HERE";
> > $savepath = "FULL PATH TO STATS ARCHIVE DIRECTORY HERE";
> > $filename = "access_log";
> >
> >
> > @date = localtime(time); #puts the current time/date into an array
> > $day = $date[3] + 1; #have to add 1 since it returns days
> > starting at 0
> > $month = $date[4] + 1; #same with the month
> > #$yr = "20" . $date[5]; #only returns a 2 digit year, change 19 to 20
> > after y2k
> >
> > if ($date[5] > 99) {
> > $yr = 1900 + $date[5];
> > } else {
> > $yr = "20" . $date[5];
> > }
> >
> > $today = $month . $day . $yr; #create a string of today's date
> >
> >
> > $newname = $filename . $today . ".gz"; # create name for new file
> >
> >
> > system("/usr/contrib/bin/gzip " . "$basepath/$filename"); #gzip the
> > access_log, now have access_log.gz
> >
> >
> > #chdir($basepath); # have to change to the directory that the access_log
> > is in to rename it
> > rename("$basepath/$filename.gz", "$basepath/$newname"); #renames
> > access_log.gz to access_log08111999.gz or whatever
> >
> >
> > #if you are putting the gzipped log in another directory
> > system('mv', "$basepath/$newname", $savepath); #move to the
> > archive directory
> >
> > print qq~
> > $filename file compressed and moved to archive directory.
> >
> > Download at - PUT YOUR WEB URL HERE/$newname
> > ~;
> >
> >
> > This is the line I have in my cronfile.
> > 55 23 * * *
> >
> /usr/home/redhot/usr/local/etc/httpd/htdocs/sweeps1/cgi-local/log_archiver.p
> > l | /usr/bin/mail -s "Stats Archived - Red Hot Sweeps"
> > webmaster at redhotsweeps.com
> >
> > This emails the output to me and I just download it at will.
> >
> > CDitty
>
>
>---------------------------------------
>For unsubscribe and other options, including
>the Tip Harvester and archive of TheList go to:
>http://lists.evolt.org Workers of the Web, evolt !
More information about the thelist
mailing list