+ eval $LOGFE
+}
+
+# NOTE: no logging available until get_parameters is run, since that's what sets logging
+# in order to trigger earlier logging manually set B_USE_LOGGING to true in top variables.
+# $1 alone: logs data; $2 with or without $3 logs func start/end.
+# $1 type (fs/fe/cat/raw) or logged data; [$2 is $FUNCNAME; [$3 - function args]]
+log_function_data()
+{
+ if [ "$B_USE_LOGGING" == 'true' ];then
+ local logged_data='' spacer=' ' line='----------------------------------------'
+ case $1 in
+ fs)
+ logged_data="Function: $2 - Primary: Start"
+ if [ -n "$3" ];then
+ logged_data="$logged_data\n${spacer}Args: $3"
+ fi
+ spacer=''
+ ;;
+ fe)
+ logged_data="Function: $2 - Primary: End"
+ spacer=''
+ ;;
+ cat)
+ if [[ $B_LOG_FULL_DATA == 'true' ]];then
+ logged_data="\n$line\nFull file data: cat $2\n\n$( cat $2 )\n$line\n"
+ spacer=''
+ fi
+ ;;
+ raw)
+ if [[ $B_LOG_FULL_DATA == 'true' ]];then
+ logged_data="\n$line\nRaw system data:\n\n$2\n$line\n"
+ spacer=''
+ fi
+ ;;
+ *)
+ logged_data="$1"
+ ;;
+ esac
+ # Create any required line breaks and strip out escape color code, either ansi (case 1)or irc (case 2).
+ # This pattern doesn't work for irc colors, if we need that someone can figure it out
+ if [[ -n $logged_data ]];then
+ if [[ $B_LOG_COLORS != 'true' ]];then
+ echo -e "${spacer}$logged_data" | sed -r 's/\x1b\[[0-9]{1,2}(;[0-9]{1,2}){0,2}m//g' >> $LOG_FILE
+ else
+ echo -e "${spacer}$logged_data" >> $LOG_FILE
+ fi
+ fi
+ fi
+}
+
+# called in the initial -@ 10 script args setting so we can get logging as soon as possible
+# will have max 3 files, inxi.log, inxi.1.log, inxi.2.log
+create_rotate_logfiles()
+{
+ if [[ ! -d $SCRIPT_DATA_DIR ]];then
+ mkdir $SCRIPT_DATA_DIR
+ fi
+ # do the rotation if logfile exists
+ if [[ -f $LOG_FILE ]];then
+ # copy if present second to third
+ if [[ -f $LOG_FILE_1 ]];then
+ mv -f $LOG_FILE_1 $LOG_FILE_2
+ fi
+ # then copy initial to second
+ mv -f $LOG_FILE $LOG_FILE_1
+ fi
+ # now create the logfile
+ touch $LOG_FILE
+ # and echo the start data
+ echo "=========================================================" >> $LOG_FILE
+ echo "START $SCRIPT_NAME LOGGING:" >> $LOG_FILE
+ echo "Script started: $( date +%Y-%m-%d-%H:%M:%S )" >> $LOG_FILE
+ echo "=========================================================" >> $LOG_FILE