diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d370b9b --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.vscode +logs diff --git a/jmeter/Dockerfile b/jmeter/Dockerfile index a3b4fa9..d52f5f8 100644 --- a/jmeter/Dockerfile +++ b/jmeter/Dockerfile @@ -35,7 +35,7 @@ RUN chmod +x /opt/jmeter/entrypoint.sh WORKDIR /logs -EXPOSE 1099 4445 50000 51000 +EXPOSE 1099 50000 51000 4445/udp # default command in the entrypoint is 'minion' ENTRYPOINT ["/opt/jmeter/entrypoint.sh"] diff --git a/jmeter/docker-compose.yml b/jmeter/docker-compose.yml index ce3be62..df3cd98 100644 --- a/jmeter/docker-compose.yml +++ b/jmeter/docker-compose.yml @@ -15,6 +15,8 @@ services: environment: - MINION_HOSTS=minion1,minion2,minion3 - JMETER_FLAGS=-X + ports: + - "4445:4445/udp" minion1: image: smithmicro/jmeter:latest minion2: diff --git a/jmeter/entrypoint.sh b/jmeter/entrypoint.sh index f4f2bba..b76de9a 100644 --- a/jmeter/entrypoint.sh +++ b/jmeter/entrypoint.sh @@ -21,13 +21,16 @@ if [ ${1##*.} = 'jmx' ]; then HOSTNAME=$PUBLIC_HOSTNAME echo "Using Gru AWS Public HOSTNAME $HOSTNAME" fi + # empty the logs directory, or jmeter may fail + rm -rf /logs/report /logs/*.log # run jmeter in client (gru) mode exec jmeter -n $JMETER_FLAGS \ -R $MINION_HOSTS \ -Dclient.rmi.localport=51000 \ -Djava.rmi.server.hostname=${PUBLIC_HOSTNAME} \ -l $RESULTS_LOG \ - -t $1 + -t $1 \ + -e -o /logs/report fi diff --git a/lucy/lucy.sh b/lucy/lucy.sh index faa8cfb..d2c5630 100755 --- a/lucy/lucy.sh +++ b/lucy/lucy.sh @@ -222,7 +222,7 @@ ssh -i $PEM_PATH/$KEY_NAME.pem -o UserKnownHostsFile=/dev/null -o StrictHostKeyC "docker run -p 1099:1099 -p 51000:51000 -v /tmp:/plans -v /logs:/logs --env MINION_HOSTS=$MINION_HOSTS smithmicro/jmeter:$JMETER_VERSION $JMX_IN_COMTAINER" echo "Copying JTL files from Gru" -scp -i $PEM_PATH/$KEY_NAME.pem -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ec2-user@${GRU_HOST}:/logs/* /logs +scp -r -i $PEM_PATH/$KEY_NAME.pem -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ec2-user@${GRU_HOST}:/logs/* /logs # Step 9 - Stop all tesks echo "Stopping tasks"