From 5cab54c35ef2b256b31754fb3df0a376becee897 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 12 May 2021 10:07:06 +0100 Subject: better logging and better testing --- modules/log.source.sh | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 modules/log.source.sh (limited to 'modules/log.source.sh') diff --git a/modules/log.source.sh b/modules/log.source.sh new file mode 100644 index 00000000..55d693ec --- /dev/null +++ b/modules/log.source.sh @@ -0,0 +1,26 @@ +log () { + local -r level="$1"; shift + + for message in "$@"; do + echo "$message" + done | log::_pipe "$level" +} + +log::pipe () { + log::_pipe "$1" +} + +log::_pipe () { + local -r level="$1"; shift + + if [[ "$level" == VERBOSE && -z "$LOG_VERBOSE" ]]; then + return + fi + + local -r callee=${FUNCNAME[2]} + local -r stamp=$($DATE +%Y%m%d-%H%M%S) + + while read -r line; do + echo "$level|$stamp|$callee|$line" >&2 + done +} -- cgit v1.2.3