iptoux / bash_error_lib

An standalone bash "library" that catches mostly all errors of an bash script.
Creative Commons Zero v1.0 Universal
3 stars 0 forks source link

Debug output #2

Closed iptoux closed 1 year ago

iptoux commented 1 year ago

Including control over debug mode/output of an bash script. This is also already coded, but need little rework for standalone usage.

iptoux commented 1 year ago

Done

iptoux@2040:~/gits/bash_error_lib$ ./basherr.sh
iptoux@2040:~/gits/bash_error_lib$ cat 12.15.22_1835637.log 
- [T]: 22:38:47 [F]: basherr.sh [M]:  [L]: 26 [C]: trap 'bs_error "$?" "${FUNCNAME[0]}"' ERR
- [T]: 22:38:47 [F]: basherr.sh [M]:  [L]: 27 [C]: trap 'bs_error "$?" "${FUNCNAME[0]}"' EXIT
- [T]: 22:38:47 [F]: basherr.sh [M]:  [L]: 28 [C]: trap bs_clean EXIT
- [T]: 22:38:47 [F]: basherr.sh [M]:  [L]: 42 [C]: bs_debug false
- [T]: 22:38:47 [F]: bash_error_lib [M]: bs_debug [L]: 176 [C]: switch=false
- [T]: 22:38:47 [F]: bash_error_lib [M]: bs_debug [L]: 178 [C]: '[' false == auto ']'
- [T]: 22:38:47 [F]: bash_error_lib [M]: bs_debug [L]: 178 [C]: '[' false == true ']'
- [T]: 22:38:47 [F]: bash_error_lib [M]: bs_debug [L]: 187 [C]: '[' false == false ']'
- [T]: 22:38:47 [F]: bash_error_lib [M]: bs_debug [L]: 188 [C]: set +o xtrace
iptoux@2040:~/gits/bash_error_lib$ 

How it works

the library lookup if an argument is given when script is called on cli, like ./basherr.sh -d. If not, you can enable/disable it on any line in your script by calling bs_debug (bool).

An example can be found in source of ./basherr.sh in git repo. The function will create a new log for every runtime, so you can easily debug between edits.