From 4c3289bd2fde5aa46733f1e34e3bcfdcd9196805 Mon Sep 17 00:00:00 2001 From: PrincessPi3 Date: Tue, 4 Nov 2025 06:49:27 -0700 Subject: [PATCH] waypoint --- customscripts/measure_performance | 23 +++++++++++------------ customscripts/sillylog.csv | 26 +++++++++++++------------- 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/customscripts/measure_performance b/customscripts/measure_performance index 4a28b82..e069418 100644 --- a/customscripts/measure_performance +++ b/customscripts/measure_performance @@ -8,7 +8,7 @@ cmd="$@" # da command as a string or as args start_date=$(date) start_unixseconds=$(date +%s) poll_seconds=2 -logfile=sillylog.csv +logfile=/tmp/sillylog.csv # throw a fit if no args supplied if [ -z "$1" ]; then @@ -16,7 +16,7 @@ if [ -z "$1" ]; then exit 1 fi -echo "testing your gay little command $cmd at $(date +\"%h:%M:%S %Z\")" | tr [a-z] [A-Z] +echo "testing your gay little command $cmd at $(date '+%H:%M:%S %Z')" | tr [a-z] [A-Z] # kill loeg for suretain if [ -f "$logfile" ]; then @@ -25,9 +25,8 @@ if [ -f "$logfile" ]; then fi # csv headers -echo "TIMESTAMP,PID,CPU USAGE %,MEMORY USAGE (KIBIBYTES),MEMORY USAGE %,READ VOLUME PER SECOND (KIBIBYTES),WRITE SIZE PER SECOND (KIBIBYTES)" > "$logfile" +# measurements_csv_fields="TIMESTAMP,PID,CPU USAGE %,MEMORY USAGE (KIBIBYTES),MEMORY USAGE %,READ VOLUME PER SECOND (KIBIBYTES),WRITE SIZE PER SECOND (KIBIBYTES)" # start times -start_unixseconds=$(date +%s) # for duration seconds start_unixmicroseconds=$(date +"%s%6N") # get start microseconds fast as possible before run # run the command with pidstat monitoring it, using eval to handle strings and args methods eval "pidstat -h -H -d -r -u -I $poll_seconds -e $cmd >> \"$logfile\"" @@ -38,12 +37,7 @@ ret=$? end_unixmicroseconds=$(date +"%s%6N") # get dis fast for accuracy duration_microseconds=$(($end_unixmicroseconds - $start_unixmicroseconds)) ## seconds -end_unixseconds=$(date +%s) -duration_seconds=$(($end_unixseconds - $start_unixseconds)) - -# add footer -echo "START_UNIX_SECONDS,END_UNIX_SECONDS,DURATION_SECONDS,DURATION_MICROSECONDS,RETURN_CODE" -echo "$start_unixseconds,$end_unixseconds,$duration_seconds,$duration_microseconds,$ret" +duration_seconds=$(($duration_microseconds / 1000000)) # seconds = microseconds / 1,000,000 cat "$logfile" @@ -51,5 +45,10 @@ cat "$logfile" # then squash spaces and replace with commas # them awk by delimiter comma to output # and replace da original file with tha fixed one -# cat "$logfile" | sed '/^#\|^$\|^Linux/d' | tr -s ' ' ',' | awk -F, '{ cpup += $3 } END { print "sunn:",cpup / NR,$1,$3,$8,$13,$14,$15,$16,$17 }' -cat "$logfile" | sed '/^#\|^$\|^Linux/d' | tr -s ' ' ',' | awk -F, '{ cpup += $3 } END { print "sunn:",cpup / NR }' \ No newline at end of file +# echo $measurements_csv_fields +echo "AVERAGES: CPU% | MEMORY USAGE (KiB) | MEMORY % | READ SIZE PER SECOND (KiB) | WRITE SIZE PER SECOND (KiB)" +cat "$logfile" | sed '/^#\|^$\|^Linux/d' | tr -s ' ' ',' | awk -F, '{ cpup += $8; memk += $13; memp += $14; rkbs += $15; wkbs += $15 } END { print "%CPU: ",cpup / NR,"Memory Usage (KiB): ",memk / NR, "Memory Usage %: ",memp / NR,"\nKiB Read Per Second: ",rkbs / NR,"\nKiB Written Per Second: ",wkbs / NR }' #$1,$3,$8,$13,$14,$15,$16,$17 }' +# add footer +info_csv_fields_data="Duration Seconds: $duration_seconds Duration Microseconds: $duration_microseconds Return Code: $ret" +echo $info_csv_fields_data +# cat "$logfile" | sed '/^#\|^$\|^Linux/d' | tr -s ' ' ',' | awk -F, '{ cpup += $3 } END { print "sunn:",cpup / NR }' \ No newline at end of file diff --git a/customscripts/sillylog.csv b/customscripts/sillylog.csv index 6370e1c..f00e38d 100644 --- a/customscripts/sillylog.csv +++ b/customscripts/sillylog.csv @@ -1,39 +1,39 @@ Linux 6.6.87.2-microsoft-standard-WSL2 (PrincessPi-Desk) 11/04/2025 _x86_64_ (24 CPU) # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262310 1000 164568 98.00 2.00 0.00 0.00 4.17 15 989.50 0.00 1762980 38784 0.24 0.00 8.00 0.00 0 oniux +1762263417 1000 165478 98.50 1.00 0.00 0.00 4.15 6 995.00 0.00 1762980 38400 0.24 0.00 8.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262312 1000 164568 98.00 1.00 0.00 0.00 4.13 15 807.50 0.00 1759736 45764 0.28 0.00 12.00 0.00 0 oniux +1762263419 1000 165478 98.00 1.50 0.00 0.00 4.15 6 976.50 0.00 1759736 47472 0.29 0.00 12.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262314 1000 164568 97.00 3.50 0.00 0.00 4.19 15 2553.00 0.00 1761956 73028 0.45 0.00 0.00 0.00 0 oniux +1762263421 1000 165478 96.50 3.50 0.00 0.00 4.17 6 2431.50 0.00 1761956 73200 0.45 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262316 1000 164568 99.00 1.00 0.00 0.00 4.17 15 121.50 0.00 1761956 73988 0.45 0.00 0.00 0.00 0 oniux +1762263423 1000 165478 98.50 1.50 0.00 0.00 4.17 6 76.50 0.00 1761956 73776 0.45 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262318 1000 164568 99.50 0.50 0.00 0.00 4.17 15 34.00 0.00 1761956 74180 0.45 0.00 0.00 0.00 0 oniux +1762263425 1000 165478 99.00 1.00 0.00 0.00 4.17 6 44.50 0.00 1761956 73968 0.45 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262320 1000 164568 99.00 0.50 0.00 0.00 4.15 15 57.50 0.00 1761956 74756 0.46 0.00 0.00 0.00 0 oniux +1762263427 1000 165478 99.00 1.00 0.00 0.00 4.17 6 40.00 0.00 1761956 74352 0.46 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262322 1000 164568 99.00 1.50 0.00 0.00 4.19 15 30.00 0.00 1761956 74948 0.46 0.00 0.00 0.00 0 oniux +1762263429 1000 165478 99.00 1.00 0.00 0.00 4.17 6 42.50 0.00 1761956 74736 0.46 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262324 1000 164568 99.00 1.00 0.00 0.00 4.17 15 56.50 0.00 1761296 74724 0.46 0.00 0.00 0.00 0 oniux +1762263431 1000 165478 98.50 1.50 0.00 0.00 4.16 6 51.00 0.00 1761296 74380 0.46 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262326 1000 164568 99.00 1.00 0.00 0.00 4.17 15 39.00 0.00 1761296 75108 0.46 0.00 0.00 0.00 0 oniux +1762263433 1000 165478 99.00 1.00 0.00 0.00 4.17 6 38.50 0.00 1761296 74764 0.46 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262328 1000 164568 99.50 0.50 0.00 0.00 4.16 15 102.50 0.00 1761296 75876 0.46 0.00 0.00 0.00 0 oniux +1762263435 1000 165478 105.00 1.50 0.00 0.00 4.44 6 249.50 0.00 1764172 79040 0.48 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262330 1000 164568 257.00 0.50 0.00 0.00 10.73 15 551.00 0.00 1765464 84620 0.52 0.00 0.00 0.00 0 oniux +1762263437 1000 165478 271.50 1.00 0.00 0.00 11.36 6 318.00 0.00 1765464 81536 0.50 0.00 0.00 0.00 0 oniux # Time UID PID %usr %system %guest %wait %CPU CPU minflt/s majflt/s VSZ RSS %MEM kB_rd/s kB_wr/s kB_ccwr/s iodelay Command -1762262332 1000 164568 66.00 1.00 0.00 0.00 2.79 15 328.00 0.00 1759736 82340 0.50 0.00 12.00 0.00 0 oniux -185.220.101.5 +1762263439 1000 165478 99.50 1.50 0.00 0.00 4.21 6 327.00 0.00 1762220 82900 0.51 0.00 12.00 0.00 0 oniux +45.84.107.198