Make sure loh_helpers is sourced only once
This commit is contained in:
parent
27086af023
commit
8a655ae1a2
135
log_helpers
135
log_helpers
@ -1,83 +1,80 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# set -x
|
# set -x
|
||||||
|
|
||||||
#if [ ${log_helpers_sourced:-1} = "1" ]; then
|
if [ ${log_helpers_sourced:-1} = "1" ]; then # include ony once
|
||||||
# readonly log_helpers_sourced=${BASH_SOURCE[0]}
|
readonly log_helpers_sourced=${BASH_SOURCE[0]}
|
||||||
#else
|
|
||||||
# return 0
|
|
||||||
#fi
|
|
||||||
|
|
||||||
readonly log_file=/var/log/update_controller.log
|
readonly log_file=/var/log/update_controller.log
|
||||||
if ! [ -f "$log_file" ]; then
|
if ! [ -f "$log_file" ]; then
|
||||||
touch $log_file
|
touch $log_file
|
||||||
fi
|
|
||||||
|
|
||||||
readonly DEBUG=0
|
|
||||||
readonly INFO=1
|
|
||||||
readonly WARN=2
|
|
||||||
readonly CRIT=3
|
|
||||||
readonly ERROR=4
|
|
||||||
readonly FATAL=5
|
|
||||||
readonly MAX_DEBUG_LEVEL=6
|
|
||||||
|
|
||||||
log_level=0
|
|
||||||
|
|
||||||
set_dbg_level () {
|
|
||||||
if [ $1 < $MAX_DEBUG_LEVEL ]; then
|
|
||||||
log_level=$1
|
|
||||||
fi
|
fi
|
||||||
}
|
|
||||||
|
|
||||||
dbg_level () {
|
readonly DEBUG=0
|
||||||
return $log_level
|
readonly INFO=1
|
||||||
}
|
readonly WARN=2
|
||||||
|
readonly CRIT=3
|
||||||
|
readonly ERROR=4
|
||||||
|
readonly FATAL=5
|
||||||
|
readonly MAX_DEBUG_LEVEL=6
|
||||||
|
|
||||||
log() {
|
log_level=0
|
||||||
if [[ $(("$(wc -l < $log_file)")) -ge $((100000)) ]]; then
|
|
||||||
# remove first line
|
|
||||||
sed -e 1d -i $log_file
|
|
||||||
fi
|
|
||||||
local msg="$(date +'%Y-%m-%d_%T'): $*"
|
|
||||||
printf "log:$msg\n" >&2
|
|
||||||
printf "$msg\n" >> $log_file
|
|
||||||
}
|
|
||||||
|
|
||||||
log_debug() {
|
set_dbg_level () {
|
||||||
if [ $log_level = $DEBUG ]; then
|
if [ $1 < $MAX_DEBUG_LEVEL ]; then
|
||||||
log "DEBUG $*"
|
log_level=$1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
log_info() {
|
dbg_level () {
|
||||||
if [ $log_level -le $INFO ]; then
|
return $log_level
|
||||||
log "INFO $*"
|
}
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
log_warn() {
|
log() {
|
||||||
if [ $log_level -le $WARN ]; then
|
if [[ $(("$(wc -l < $log_file)")) -ge $((100000)) ]]; then
|
||||||
log "WARN $*"
|
# remove first line
|
||||||
fi
|
sed -e 1d -i $log_file
|
||||||
}
|
fi
|
||||||
|
local msg="$(date +'%Y-%m-%d_%T'): $*"
|
||||||
|
printf "log:$msg\n" >&2
|
||||||
|
printf "$msg\n" >> $log_file
|
||||||
|
}
|
||||||
|
|
||||||
log_crit() {
|
log_debug() {
|
||||||
if [ $log_level -le $CRIT ]; then
|
if [ $log_level = $DEBUG ]; then
|
||||||
log "CRIT $*"
|
log "DEBUG $*"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
log_error() {
|
log_info() {
|
||||||
if [ $log_level -le $ERROR ]; then
|
if [ $log_level -le $INFO ]; then
|
||||||
log "ERROR $*"
|
log "INFO $*"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
log_fatal() {
|
log_warn() {
|
||||||
if [ $log_level -le $FATAL ]; then
|
if [ $log_level -le $WARN ]; then
|
||||||
log "FATAL $*"
|
log "WARN $*"
|
||||||
log "exiting ..."
|
fi
|
||||||
exit 1
|
}
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# log "test message1" "test message2"
|
log_crit() {
|
||||||
|
if [ $log_level -le $CRIT ]; then
|
||||||
|
log "CRIT $*"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
log_error() {
|
||||||
|
if [ $log_level -le $ERROR ]; then
|
||||||
|
log "ERROR $*"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
log_fatal() {
|
||||||
|
if [ $log_level -le $FATAL ]; then
|
||||||
|
log "FATAL $*"
|
||||||
|
log "exiting ..."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
###############################################################################
|
||||||
|
fi ### include guard
|
||||||
|
Loading…
Reference in New Issue
Block a user