Update docker/auth-bench/run-ab.sh
This commit is contained in:
parent
53fe1d5a20
commit
b1193f7c7a
|
@ -1,4 +1,12 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
function prepare_log_file {
|
||||||
|
local log_file="/logs/authenticated.csv"
|
||||||
|
> "$log_file"
|
||||||
|
mkdir -p $(dirname "$log_file")
|
||||||
|
touch "$log_file"
|
||||||
|
}
|
||||||
|
|
||||||
function run_apache_bench_and_check_ttfb {
|
function run_apache_bench_and_check_ttfb {
|
||||||
local urls=(${URLS//,/ })
|
local urls=(${URLS//,/ })
|
||||||
local username=$USERNAME
|
local username=$USERNAME
|
||||||
|
@ -13,38 +21,20 @@ function run_apache_bench_and_check_ttfb {
|
||||||
echo "URL, Average TTFB, AB Mean Time per Request" | tee "$log_file"
|
echo "URL, Average TTFB, AB Mean Time per Request" | tee "$log_file"
|
||||||
|
|
||||||
for url in "${urls[@]}"; do
|
for url in "${urls[@]}"; do
|
||||||
total_ttfb=0 # Reset total TTFB for each URL
|
total_ttfb=0
|
||||||
|
|
||||||
# Apache Bench part
|
|
||||||
ab_summary=$(ab -n "$requests" -c "$concurrency" -A "$username:$password" "$url" 2>&1 | grep "Time per request" | head -1)
|
ab_summary=$(ab -n "$requests" -c "$concurrency" -A "$username:$password" "$url" 2>&1 | grep "Time per request" | head -1)
|
||||||
ab_mean_time_per_request=$(echo "$ab_summary" | awk '{print $4 " " $5}')
|
ab_mean_time_per_request=$(echo "$ab_summary" | awk '{print $4 " " $5}')
|
||||||
|
|
||||||
# TTFB part
|
|
||||||
for i in {1..5}; do
|
for i in {1..5}; do
|
||||||
ttfb=$(curl -o /dev/null -s -w "%{time_starttransfer}\n" -u "$username:$password" "$url")
|
ttfb=$(curl -o /dev/null -s -w "%{time_starttransfer}\n" -u "$username:$password" "$url")
|
||||||
total_ttfb=$(echo "$total_ttfb + $ttfb" | bc)
|
total_ttfb=$(echo "$total_ttfb + $ttfb" | bc)
|
||||||
done
|
done
|
||||||
local mean_ttfb=$(echo "scale=3; $total_ttfb / 5" | bc)
|
local mean_ttfb=$(echo "scale=3; $total_ttfb / 5" | bc)
|
||||||
|
|
||||||
# Combine and log
|
|
||||||
echo "$url, $mean_ttfb, $ab_mean_time_per_request" | tee -a "$log_file"
|
echo "$url, $mean_ttfb, $ab_mean_time_per_request" | tee -a "$log_file"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
# Define your functions here
|
|
||||||
function prepare_log_file {
|
|
||||||
local log_file="/logs/authenticated.csv"
|
|
||||||
> "$log_file" # Clear the contents of the existing log file, if any
|
|
||||||
mkdir -p $(dirname "$log_file") # Ensure the directory exists
|
|
||||||
touch "$log_file" # Create the file if it doesn't exist
|
|
||||||
}
|
|
||||||
|
|
||||||
function run_apache_bench_and_check_ttfb {
|
|
||||||
# Function definition as provided before
|
|
||||||
}
|
|
||||||
|
|
||||||
# Prepare the log file
|
|
||||||
prepare_log_file
|
prepare_log_file
|
||||||
|
run_apache_bench_and_check_ttfb
|
||||||
# Run Apache Bench and check TTFB for URLs
|
|
||||||
run_apache_bench_and_check_ttfb
|
|
||||||
|
|
Loading…
Reference in New Issue