X-Git-Url: https://defaria.com/gitweb/?a=blobdiff_plain;f=clients%2FHP%2Froll_logs;fp=clients%2FHP%2Froll_logs;h=b38dc79ad61844b5e63520d121b3e6c4178fbe9e;hb=a8c84d2892f07a6863b68a11eb0a4a79ffd71fb5;hp=0000000000000000000000000000000000000000;hpb=95384f94f88aceeb5eef2d322210ba4a438b6512;p=clearscm.git diff --git a/clients/HP/roll_logs b/clients/HP/roll_logs new file mode 100755 index 0000000..b38dc79 --- /dev/null +++ b/clients/HP/roll_logs @@ -0,0 +1,115 @@ +#!/bin/ksh +################################################################################ +# +# File: roll_logs +# Description: Rolls log files +# Author: Andrew@DeFaria.com +# Created: Thu Dec 9 10:05:09 PST 1999 +# Modified: +# Language: Korn Shell +# +# (c) Copyright 2001, Andrew@DeFaria.com, all rights reserved +# +################################################################################ +# Set me to command name +me=$(basename $0) + +# Set adm_base +adm_base=${adm_base:-$HOME/adm} + +# Set adm_fpath +adm_fpath=${adm_fpath:-$adm_base/functions} + +# Source functions +. $adm_fpath/common +. $adm_fpath/logs + +function usage { + if [ "_$1" != "_" ]; then + display "$1" + display + fi + display "Usage: $me -[da|aily] | -[w|eekly]" + exit 1 +} # usage + +# Check for execution by root +if is_not_root; then + error "This script must be run as root" 1 +fi + +type= +while [ $# -ge 1 ]; do + case "$1" in + -usage) + usage + ;; + + -v|-verbose) + verbose=yes + ;; + + -d|-debug) + debug=yes + ;; + + -da|-daily) + type=daily + ;; + + -w|-weekly) + type=weekly + ;; + + *) + usage "Unrecognized parameter $1" + ;; + esac + shift +done + +if [ "_$type" = "_" ]; then + usage "Must specify -daily or -weekly" +fi + +#Directory logfile backuplog what +dailylogs="\ +/var/adm automount.log autolog.week automount\n\ +/var/adm nettl.LOG00 nettl.week nettracelog\n\ +/var/adm ninstall.log nlog.week ninstall\n\ +/var/adm ptydaemonlog ptylog.week ptydaemon\n\ +/var/adm rpc.lockd.log rpc.lockd.week rpc.lockd\n\ +/var/adm rpc.statd.log rpc.statd.week rpc.statd\n\ +/var/adm vtdaemonlog vtlog.week vtdaemon\n\ +/var/adm/cron log log.week cron\n\ +/var/adm/lp log log.week lp\n\ +/var/adm/syslog syslog.log syslog.week syslogd" + +weeklylogs="\ +/var/adm autolog.week autolog.oldweek automount\n\ +/var/adm nettl.week nettl.oldweek nettracelog\n\ +/var/adm nlog.week nlog.oldweek ninstall\n\ +/var/adm ptylog.week ptylog.oldweek ptydaemon\n\ +/var/adm rpc.lockd.week rpc.lockd.oldweek rpc.lockd\n\ +/var/adm rpc.statd.week rpc.statd.oldweek rpc.statd\n\ +/var/adm vtlog.week vtlog.oldweek vtdaemon\n\ +/var/adm/cron log.week log.oldweek cron\n\ +/var/adm/lp log.week log.oldweek lp\n\ +/var/adm/syslog syslog.week syslog.oldweek syslogd" + +if [ "$type" = "daily" ]; then + verbose "Daily roll_logs" + logfiles="$dailylogs" +else + verbose "Weekly roll_logs" + logfiles="$weeklylogs" +fi + +print "$logfiles" | while read dir logfile backup_logfile what; do + verbose "Rolling ($what) logfile $logfile -> $backup_logfile..." + if [ "$type" = "weekly" ]; then + # Clear out oldweek file first + rm -f $backup_logfile + fi + roll_log $dir $logfile $backup_logfile $what +done