forked from EvergreenCrypto/docker-finance
client/container: implement debug log-levels
DOCKER_FINANCE_DEBUG will now support the following: 0 = no debug output 1 = `print_debug` (bash/PHP) 2 = level 1 + `set -xv` (bash)
This commit is contained in:
4
client/docker-finance.d/client/env/gen.bash
vendored
4
client/docker-finance.d/client/env/gen.bash
vendored
@@ -31,8 +31,8 @@ export DOCKER_FINANCE_VERSION="$global_client_version"
|
||||
|
||||
# Developer related
|
||||
|
||||
if [ -z "$DOCKER_FINANCE_DEBUG" ]; then
|
||||
export DOCKER_FINANCE_DEBUG=false
|
||||
if [[ -z "$DOCKER_FINANCE_DEBUG" || ! "$DOCKER_FINANCE_DEBUG" =~ ^0$|^1$|^2$ ]]; then
|
||||
export DOCKER_FINANCE_DEBUG=0
|
||||
fi
|
||||
|
||||
# Allows transparent r/w of mounted volumes
|
||||
|
||||
@@ -18,14 +18,15 @@
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# WARNING: because of completion, the docker-finance environment file
|
||||
# is never read. Ergo, for debugging, you'll need to run the following:
|
||||
# is never read. Ergo, for debugging, you'll need to run the following
|
||||
# with log-level 1 or 2:
|
||||
#
|
||||
# `export DOCKER_FINANCE_DEBUG=true && . ~/.bashrc`
|
||||
# `export DOCKER_FINANCE_DEBUG=2 && . ~/.bashrc`
|
||||
#
|
||||
# and then proceed to call `docker-finance` / `dfi` with your commands.
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
[ "$DOCKER_FINANCE_DEBUG" == true ] && set -xv
|
||||
[ "$DOCKER_FINANCE_DEBUG" == 2 ] && set -xv
|
||||
|
||||
# If not yet installed, gracefully exit
|
||||
if ! hash docker &>/dev/null; then
|
||||
|
||||
@@ -161,7 +161,7 @@ function main()
|
||||
lib_docker::docker "$@" || lib_utils::die_usage "$_usage"
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
[ "$DOCKER_FINANCE_DEBUG" == true ] && set -xv
|
||||
[ "$DOCKER_FINANCE_DEBUG" == 2 ] && set -xv
|
||||
|
||||
#
|
||||
# Command facade
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
[ "$DOCKER_FINANCE_DEBUG" == true ] && set -xv
|
||||
[ "$DOCKER_FINANCE_DEBUG" == 2 ] && set -xv
|
||||
|
||||
[ -z "$DOCKER_FINANCE_CONTAINER_FLOW" ] && exit 1
|
||||
|
||||
|
||||
@@ -94,7 +94,7 @@ function main()
|
||||
lib_finance::finance "$@" || lib_utils::die_usage "$_usage"
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
[ "$DOCKER_FINANCE_DEBUG" == true ] && set -xv
|
||||
[ "$DOCKER_FINANCE_DEBUG" == 2 ] && set -xv
|
||||
|
||||
#
|
||||
# Facade commands
|
||||
|
||||
@@ -91,7 +91,7 @@ namespace docker_finance\utils
|
||||
|
||||
public static function print_debug(mixed $message): void
|
||||
{
|
||||
if (getenv('DOCKER_FINANCE_DEBUG') == "true") {
|
||||
if (preg_match('/^1$|^2$/', getenv('DOCKER_FINANCE_DEBUG'))) {
|
||||
$bt = debug_backtrace();
|
||||
fwrite(STDERR, "\e[33m[DEBUG] {$bt[1]['file']}:{$bt[1]['line']} -> {$bt[1]['function']} -> ");
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ function lib_utils::print_fatal()
|
||||
function lib_utils::print_debug()
|
||||
{
|
||||
# shellcheck disable=SC2154
|
||||
if [[ "$DOCKER_FINANCE_DEBUG" == true ]]; then
|
||||
if [[ "$DOCKER_FINANCE_DEBUG" =~ ^1$|^2$ ]]; then
|
||||
local _debug="${BASH_SOURCE[1]##*/}:${BASH_LINENO[0]} -> ${FUNCNAME[1]}"
|
||||
lib_utils::__print "\e[33m" "[DEBUG] ${_debug} -> $*"
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user