########################################################################### # # This file provides utility functions and is included by other scripts. # # The following global variables must be set before calling functions from this # file: # - basename -- base name of the calling script (main application); # - log_file -- where to store log records; # ########################################################################### log() { [ -z "$log_file" ] && return; log_level="$1" log_msg="$2" ts=`date` echo "[$ts] [$basename] [$log_level] $log_msg" >> "$log_file"; } ########################################################################### log_debug() { log 'DEBUG' "$1" } ########################################################################### log_info() { log 'INFO' "$1" echo "$1" } ########################################################################### log_error() { log 'ERROR' "$1" echo "Error: $1" } ########################################################################### quit() { exit_status="$1" log_debug "-- $basename: finished (exit_status: $exit_status) --" exit $exit_status }