test(bkgpslog):Minor debug msg
[EVA-2020-02.git] / exec / bkgpslog
index 99238ed516725267b7b6f31cf8bb85c8c9b42eb9..e181bb4e885f3552fa2a4e714d99dfd59b9066cd 100755 (executable)
@@ -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.4.4-alpha2";          # Define version of script.
+SCRIPT_VERSION="0.5.4";          # 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)
@@ -360,7 +360,7 @@ dateTimeShort(){
            TIME_INPUT="$argTime";
        else
            ### F: Time argument not valid; exit
-           yell "ERROR:Invalid time argument suppliedExiting."; exit 1;
+           yell "ERROR:Invalid time argument supplied: \"$argTime\""; yell "Exiting."; exit 1;
        fi
     fi
     # Construct and deliver separator-les date string
@@ -976,7 +976,8 @@ magicBufferSleepPID() {
     # for value in "${errorHistory[@]}"; do
     #  errReset=$(( errReset + ( value*BUFFER_TTL_NS ) ));
     # done;
-    errReset="$(( (errReset + (errNS*BUFFER_TTL_NS)) ))" && vbm "errReset:$errReset";
+    vbm "errReset(orig):$errReset"
+    errReset="$(( (errReset + (errNS*BUFFER_TTL_NS)) ))" && vbm "errReset(post):$errReset";
 #    errResetx10e3="$(( ( errResetx10e3 + ( errNSx10e3 * BUFFER_TTL_NS ) )*10**3 ))" && vbm "errResetx10e3:$errResetx10e3";
 
     # Calculate errRate in nanoseconds per nanosecond
@@ -1011,7 +1012,6 @@ magicBufferSleepPID() {
     ## Form float BUFFER_TTL_ADJ_FLOAT
     BUFFER_TTL_ADJ_FLOAT="$BUFFER_TTL_ADJ_INT"."$BUFFER_TTL_ADJ_FLOATFRAC" && vbm "BUFFER_TTL_ADJ_FLOAT:$BUFFER_TTL_ADJ_FLOAT";
     vbm "STATUS:Calculated adjusted BUFFER_TTL (seconds):$BUFFER_TTL_ADJ_FLOAT";
-    sleep 1 # Debug
 } # Calc BUFFER_TTL_ADJ_FLOAT so buffer starts every BUFFER_TTL seconds
 magicWriteVersion() {
     # Desc: Appends time-stamped VERSION to PATHOUT_TAR
@@ -1056,15 +1056,15 @@ 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().";
+    timeBufferStart="$(dateTimeShort "$(date --date="$BUFFER_TTL seconds ago")" )" && vbm "timeBufferStart:$timeBufferStart"; # 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
@@ -1099,7 +1099,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 +1258,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 +1271,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;
@@ -1327,13 +1327,13 @@ main() {
     CMD_CONV_KML="gpsbabel -i nmea -f - -o kml -F - " && vbm "STATUS:Set CMD_CONV_KML to:$CMD_CONV_KML"; # convert NMEA to KML
 
     # MAIN LOOP:Record gps data until script lifespan ends
-    timeBufferFirstNS="$(timeEpochNS)"; bufferRound=0; BUFFER_TTL_ADJ_FLOAT="10.0";
+    timeBufferFirstNS="$(timeEpochNS)"; bufferRound=0; BUFFER_TTL_ADJ_FLOAT="$BUFFER_TTL";
     while [[ "$SECONDS" -lt "$SCRIPT_TTL" ]]; do
        magicParseRecipientDir;
        magicGatherWriteBuffer &
-       sleep "$BUFFER_TTL_ADJ_FLOAT";
+       sleep "$BUFFER_TTL_ADJ_FLOAT"; # adjusted by magicBufferSleepPID
        ((bufferRound++));
-       magicBufferSleepPID; # Calculates BUFFER_TTL_ADJ from BUFFER_TTL given buffer expected start time vs. actual
+       magicBufferSleepPID; # Calculates BUFFER_TTL_ADJ_FLOAT from BUFFER_TTL given buffer expected start time vs. actual
     done    
 
     # Cleanup