X-Git-Url: https://zdv2.bktei.com/gitweb/EVA-2020-02.git/blobdiff_plain/2155200ade63e2d3a9c4884e65831b51e02e892f..e56d6109401b4760bb51f8d0dd8ee46f364ed4ab:/exec/bkgpslog?ds=inline diff --git a/exec/bkgpslog b/exec/bkgpslog index c901b27..ba66b79 100755 --- a/exec/bkgpslog +++ b/exec/bkgpslog @@ -14,7 +14,7 @@ DIR_TMP_DEFAULT="/dev/shm"; # Default parent of working directory SCRIPT_TIME_START=$(date +%Y%m%dT%H%M%S.%N); PATH="$HOME/.local/bin:$PATH"; # Add "$(systemd-path user-binaries)" path in case apps saved there SCRIPT_HOSTNAME=$(hostname); # Save hostname of system running this script. -SCRIPT_VERSION="0.5.2"; # Define version of script. +SCRIPT_VERSION="0.5.6"; # Define version of script. SCRIPT_NAME="bkgpslog"; # Define basename of script file. SCRIPT_URL="https://gitlab.com/baltakatei/ninfacyzga-01"; # Define wesite hosting this script. AGE_VERSION="1.0.0-beta2"; # Define version of age (encryption program) @@ -343,7 +343,7 @@ dateTimeShort(){ # Input: arg1: 'date'-parsable timestamp string (optional) # Output: stdout: timestamp (ISO-8601, no separators) # Depends: yell - local TIME_CURRENT TIME_CURRENT_SHORT + local TIME_CURRENT TIME_CURRENT_SHORT argTime argTime="$1"; # Get Current Time @@ -360,7 +360,7 @@ dateTimeShort(){ TIME_INPUT="$argTime"; else ### F: Time argument not valid; exit - yell "ERROR:Invalid time argument supplied. Exiting."; exit 1; + yell "ERROR:Invalid time argument supplied: \"$argTime\""; yell "Exiting."; exit 1; fi fi # Construct and deliver separator-les date string @@ -391,7 +391,7 @@ dateShort(){ TIME_INPUT="$argTime"; else ### F: Time argument not valid; exit - yell "ERROR:Invalid time argument supplied. Exiting."; exit 1; + yell "ERROR:Invalid time argument supplied: \"$argTime\""; yell "Exiting."; exit 1; fi fi # Construct and deliver separator-les date string @@ -1056,15 +1056,16 @@ magicGatherWriteBuffer() { # Depends: magicWriteVersion(), appendFileTar() local FN + vbm "DEBUG:STATUS:$FN:Started magicGatherWriteBuffer()."; # Debug:Get function name FN="${FUNCNAME[0]}"; # Create buffer file with unique name - PATHOUT_BUFFER="$DIR_TMP/buffer$SECONDS"; + PATHOUT_BUFFER="$DIR_TMP/buffer$SECONDS" && vbm "PATHOUT_BUFFER:$PATHOUT_BUFFER"; # Fill buffer timeout "$BUFFER_TTL"s gpspipe -r -o "$PATHOUT_BUFFER" ; - timeBufferStart="$(dateTimeShort "$(date --date="$BUFFER_TTL seconds ago")")"; # Note start time - vbm "DEBUG:STATUS:$FN:Started magicWriteBuffer()."; + timeBufferStartLong="$(date --date="$BUFFER_TTL seconds ago" --iso-8601=seconds)" && vbm "timeBufferStartLong:$timeBufferStartLong" || yell "ERROR:timeBufferStartLong fail"; + timeBufferStart="$(dateTimeShort "$timeBufferStartLong" )" && vbm "timeBufferStart:$timeBufferStart" || yell "ERROR:timeBufferStart fail"; # Note start time # Determine file paths (time is start of buffer period) FILEOUT_BASENAME="$timeBufferStart""--""$bufferTTL_STR""..""$SCRIPT_HOSTNAME""_location" && vbm "STATUS:Set FILEOUT_BASENAME to:$FILEOUT_BASENAME"; ## Files saved to DIR_TMP @@ -1076,19 +1077,25 @@ magicGatherWriteBuffer() { PATHOUT_KML="$DIR_TMP"/"$FILEOUT_KML" && vbm "STATUS:Set PATHOUT_KML to:$PATHOUT_KML"; ## Files saved to disk (DIR_OUT) ### one file per day (Ex: "20200731..hostname_location.[.gpx.gz].tar") - PATHOUT_TAR="$DIR_OUT"/"$(dateShort "$(date --date="$BUFFER_TTL seconds ago")")".."$SCRIPT_HOSTNAME""_location""$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX".tar && \ + PATHOUT_TAR="$DIR_OUT"/"$(dateShort "$(date --date="$BUFFER_TTL seconds ago" --iso-8601=seconds)")".."$SCRIPT_HOSTNAME""_location""$CMD_COMPRESS_SUFFIX""$CMD_ENCRYPT_SUFFIX".tar && \ vbm "STATUS:Set PATHOUT_TAR to:$PATHOUT_TAR"; # DEBUG: check vars - vbm "STATUS:DIR_TMP :$DIR_TMP"; - vbm "STATUS:PATHOUT_TAR :$PATHOUT_TAR"; - vbm "STATUS:PATHOUT_NMEA:$PATHOUT_NMEA"; - vbm "STATUS:PATHOUT_GPX:$PATHOUT_GPX"; - vbm "STATUS:PATHOUT_KML:$PATHOUT_KML"; + vbm "STATUS:FN :$FN"; + vbm "STATUS:DIR_TMP :$DIR_TMP"; + vbm "STATUS:PATHOUT_TAR :$PATHOUT_TAR"; + vbm "STATUS:PATHOUT_NMEA :$PATHOUT_NMEA"; + vbm "STATUS:PATHOUT_GPX :$PATHOUT_GPX"; + vbm "STATUS:PATHOUT_KML :$PATHOUT_KML"; + vbm "STATUS:BUFFER_TTL :$BUFFER_TTL"; + vbm "STATUS:PATHOUT_BUFFER :$PATHOUT_BUFFER"; + vbm "STATUS:timeBufferStart:$timeBufferStart"; + vbm "FILEOUT_BASENAME :$FILEOUT_BASENAME"; # Validate PATHOUT_TAR as tar. checkMakeTar "$PATHOUT_TAR"; ## Add VERSION file if checkMakeTar had to create a tar (exited 1) or replace one (exited 2) + vbm "exit status before magicWriteVersion:$?" if [[ $? -eq 1 ]] || [[ $? -eq 2 ]]; then magicWriteVersion; fi # Write bufferBash to PATHOUT_TAR @@ -1099,7 +1106,7 @@ magicGatherWriteBuffer() { # Remove secured chunks from DIR_TMP rm "$PATHOUT_BUFFER" "$PATHOUT_NMEA" "$PATHOUT_GPX" "$PATHOUT_KML"; - vbm "DEBUG:STATUS:$FN:Finished magicWriteBuffer()."; + vbm "DEBUG:STATUS:$FN:Finished magicGatherWriteBuffer()."; } # write buffer to disk magicParseRecipientDir() { # Desc: Updates recPubKeysValid with pubkeys in dir specified by '-R' option ("recipient directory") @@ -1258,7 +1265,7 @@ magicParseCustomTTL() { ## T: Check if argCustomBufferTTL is an integer if validateInput "$argCustomBufferTTL" "integer"; then ### T: argCustomBufferTTL is an integer - BUFFER_TTL="$argCustomBufferTTL"; + BUFFER_TTL="$argCustomBufferTTL" && vbm "Custom BUFFER_TTL from -b:$BUFFER_TTL"; else ### F: argcustomBufferTTL is not an integer yell "ERROR:Invalid integer argument for custom buffer time-to-live."; showUsage; exit 1; @@ -1271,7 +1278,7 @@ magicParseCustomTTL() { ## T: Check if argCustomScriptTTL is a time element (ex: "day", "hour") if validateInput "$argCustomScriptTTL" "time_element"; then ### T: argCustomScriptTTL is a time element - SCRIPT_TTL_TE="$argCustomScriptTTL"; + SCRIPT_TTL_TE="$argCustomScriptTTL" && vbm "Custom SCRIPT_TTL_TE from -B:$SCRIPT_TTL_TE"; else ### F: argcustomScriptTTL is not a time element yell "ERROR:Invalid time element argument for custom script time-to-live."; showUsage; exit 1; @@ -1282,6 +1289,8 @@ magicParseCustomTTL() { main() { + # DEBUG: Print environment variables + vbm "echo $(printenv)"; # Process arguments processArguments "$@"; ## Act upon arguments