# ==========================================================================
# This is a configuration file for splitlog.
#
#         <http://www.ics.uci.edu/pub/websoft/wwwstat/>
#
# Please note that this is a perl include file, and thus may contain
# anything that might be found in a perl script.  However, it SHOULD ONLY
# contain variable assignments which override the default values in splitlog's
# &init_defaults procedure (all global variables) and/or definition of the
# &user_path_map function for determining the split destination logfile
# name from the given virtual host and/or URL path.  Most options can also
# be overridden on the command-line.
#
# splitlog allows for one optional config file:
#        splitlog.rc      (usually in the user's home directory)
# The name can be changed in the splitlog script or using the -f option.
# If no path is supplied, then the file is looked for on the include path
#
#     .:$ENV{'HOME'}:$ENV{'PERLLIB'}:<path_to_splitlog>
#
# All splitlog defaults are listed below, but commented-out.  You can change
# the associated value by removing the ## comment and changing the assignment.
# Use the command "perl -wc splitlog.rc" to test the syntax (ignore typos).
#
# ==========================================================================
# Specify the command for displaying compressed files to STDOUT
#
##  $Zcat    = 'gunzip -c';   # specify as null string if none are available
##  $Zhandle = '(gz|Z|z)';    # list file extensions that indicate compressed
#
# If address in log entry is one word (a local host), append what?
# Specify an appropriate '.sub.dom.ain'
#
##  $AppendToLocalhost = '.no_where.com';
#
# Specify the maximum number of open file handles allowed.
# You will get "Failed open of ..." errors if it is set too high.
#
##  $MaxHandles = 50;
#
# Specify the default location of your access log
#
##  $DefaultLog = '/usr/local/etc/httpd/logs/access_log';
#
# Specify the default destination directory for the split logfiles
#
##  $DestDir    = '';         # current directory
#
# Specify the filename (no .ext) for non-matching, non-split log entries
#
##  $Remaining  = 'OTHERS';
#
# Specify the amount of anonymization done to the split log entries.
# May be '','i','m','u','im','iu','mi','mu','ui','um','imu'
#    ''  = none
#    /i/ = ident field removed
#    /m/ = machine name replaced with ANON or 0
#    /u/ = authentication userid field removed
#
##  $Anonymize  = '';
#
# Specify whether (1) or not (0) you want the split filenames to be
# based on a prefix (assumed to be a virtual host) of each logfile
# entry instead of on the requested URL path.  The prefix is terminated
# by the first colon ':' or space.
#
##  $Vhosts     = 0;
#
# Specify whether (1) or not (0) you want to lookup unresolved
# IP addresses via DNS. Note that this could be *very* slow!
#
##  $LookupDNS       = 1;
##  $DNScachefile    = 'dnscache';   # DBM files for persistent cache
##  $DNSexpires      = 5356800;      # Cache for two months (in seconds)
#
# The rest of these options are normally only changed on the command-line
#
##  $PrintInvalids   = 0;    # Display invalid log entries on STDERR?
#
##  $SearchAddress   = '';   # Pattern to look for in hostname/IP addresses
##  $SearchCode      = '';   # Pattern to look for in Code
##  $SearchDate      = '';   # Pattern to look for in Date
##  $SearchTime      = '';   # Pattern to look for in Hour
##  $SearchPath      = '';   # Pattern to look for in URL Path
##  $SearchMethod    = '';   # Pattern to look for in Method
#
##  $NotAddress      = '';   # Pattern to reject entry if in IP addresses
##  $NotCode         = '';   # Pattern to reject entry if in Code
##  $NotDate         = '';   # Pattern to reject entry if in Date
##  $NotTime         = '';   # Pattern to reject entry if in Hour
##  $NotPath         = '';   # Pattern to reject entry if in URL Path
##  $NotMethod       = '';   # Pattern to reject entry if in Method
#
##  $EscapeSpecials  = '[+.]';   # Most users forget about regexp syntax
#
# ==========================================================================
# ==========================================================================
# Uncomment and reprogram the following function to determine the output
# logfile name from the vhost prefix (if any) and/or the URL path. 
#
# If left undefined, or if the value returned is undef, then splitlog's 
# &path_map function will determine the logfile name. 
# If '' (the empty string) is returned, then the log entry will go to
# the default file (see $Remaining).
#
# The returned value will be forced into lowercase and all special
# characters will be replaced by underscores before being used by splitlog.
#
## sub user_path_map
## {
##     local($vhost, $path) = @_;   # Don't change this line
##
##     # If logfile prefixing is being used, generally consisting of the
##     # virtual host of the incoming request, then $vhost will contain
##     # the prefix.  However, our example will only concern itself with
##     # the URL path, since that is the more common case for which a
##     # user-defined function like this one is necessary.
##
##     return undef unless (defined($path) && ($path =~ m#^/#));
##
##     # The most typical use of a user-defined routine is to combine
##     # multiple root URLs under a single logfile, e.g.
##
##     if ($path =~ m#^/pub/(websoft|hyperware|icse97)(/|$)#i) {
##         return 'fielding';
##     }
##
##     if ($path =~ m#^/(Dept|Research|Maps)(/|$)#i) {
##         return 'front_office';
##     }
##
##     # or to force disinterested people into the generic OTHERS.log
##
##     if ($path =~ m#^/~(fred|wilma|barney)(/|$)#i) {
##         return '';
##     }
##
##     return undef;   # Let the default routine pick the rest
## }
##
# ==========================================================================
1; # This must be the last line
