added log-rolling to the to-do list for docs - I can just add it
to the default config.tcl file, right?
Joel, you're on the right track but it's not quite that simple.
First, here's all the stuff I have in my AOLserver config.tcl related
to both the server and access logs. You may want to change some of
the settings for the OpenACS default config.tcl (I'm not sure), but
you should at least look at what all of these do:
ns_section ns/parameters
ns_param serverlog $error_log_full_filename($which)
# Number of days to keep old error logs around:
ns_param maxbackup 7
ns_section ns/server/$server_name/module/nslog
ns_param File $access_log_full_filename
# Number of days to keep old access logs around:
ns_param maxbackup 7
ns_param EnableHostnameLookup Off
ns_param LogRefer Off
ns_param LogUserAgent Off
ns_param maxbackup 7
ns_param RollDay *
ns_param RollFmt %Y-%m-%d-%H:%M
ns_param RollHour 0
ns_param RollOnSignal On
ns_param RollLog On
ns_param ExtendedHeaders X-User-Tracking
The settings above will take care of rolling the access log without
doing anything else. But to roll the server log, you need to schedule
ns_logroll (usually once per night at midnight) to roll the log. See
my old Jan. 18 2003 definition of my dtk_roll_server_log proc above.
I think using a simple helper proc like that is a bit nicer than
scheduling ns_logroll directly, because it writes a notice to the log
before and after telling you what's going on. So you just need a proc
like that (probably named "ad_roll_server_log"), and the call to
ad_schedule_proc.
Hm, I don't see anywhere better to put it, so,
ad_roll_server_log
should probably just go into
packages/acs-tcl/tcl/utilities-proc.tcl
, and the call to
ad_schedule_proc should go into the matching
utilities-init.tcl
file.
Once that's all done... then the only thing to put into the docs is
pointers to those places, and telling people how to change it in case
they need to.