client9/shlib

logging functionality

オープン

#10 opened on 2018/03/08

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)Shell (40 件のフォーク)github user discovery
enhancementhelp wanted

Repository metrics

Stars
 (430 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Much of the code uses echo as way of returning results or a partial result in a pipe.

Other times echo is used as a logging mechanism, and inconsistently.

Here are two examples of the later:

uname_os_check.sh:  echo "$0: uname_os_check: internal error '$(uname -s)' got converted to '$os' which is not a GOOS value. Please file bug at https://github.com/client9/shlib"
untar.sh:      echo "Unknown archive format for ${tarball}"

Both also go to stdout, not stderr.

Better would be to have a function that does logging.

Thinking

log_error
log_info
log_debug
log_prefix 

The last one would be a function that would emit a common prefix. A function so smart people could completely over-ride it and add a date or whatever, but by default it would be:

log_prefix() {
  echo $0  or nothing ""
}

Also need some way of setting the level. Will need to see what syslog and friends do.

n

コントリビューターガイド