JBAS-258 syslog file cleanup options
authorBill Erickson <berickxx@gmail.com>
Mon, 22 Dec 2014 15:38:46 +0000 (10:38 -0500)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:46:23 +0000 (15:46 -0400)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
KCLS/misc-scripts/manage-log-files.sh

index b8b8f25..420c308 100755 (executable)
@@ -1,14 +1,35 @@
 #!/bin/bash
 set -eu
 
+# *_AGE values are stored as days
+# Example: a compress value of "3" means compress files 
+# last modified more than 3 days ago.
+COMPRESS_AGE=3
+DELETE_AGE=365
+
+function usage {
+    cat <<USAGE
+    $0 -c <compress-days-back> -d <delete-days-back>
+USAGE
+    exit;
+}
+
+while getopts "d:c:h" opt; do
+    case $opt in
+        c) COMPRESS_AGE=$OPTARG;;
+        d) DELETE_AGE=$OPTARG;;
+        h) usage;
+    esac
+done;
+
 # Delete all Evergreen log files that are older than one year,
 # except for the Apache access log and Evergreen activity log.
 
-/usr/bin/find /var/log/evergreen -type f -ctime +365 \
+/usr/bin/find /var/log/evergreen -type f -ctime +$DELETE_AGE \
     -not -name "ap_access*" -not -name "activity*" -delete
 
 # Compress Evergreen log files older than 3 days
 
-/usr/bin/find /var/log/evergreen/ -type f -ctime +3 \
+/usr/bin/find /var/log/evergreen/ -type f -ctime +$COMPRESS_AGE \
     -not -name "*bz2" -exec /bin/bzip2 {} \;