Skip to content
Snippets Groups Projects
Commit 32f97c64 authored by silvergl's avatar silvergl
Browse files

Merge branch 'main' of github.com:kieker-monitoring/moobench into main

parents 19424e9c 2171ebc6
No related branches found
No related tags found
No related merge requests found
...@@ -19,6 +19,7 @@ pipeline { ...@@ -19,6 +19,7 @@ pipeline {
KEYSTORE = credentials('kieker-irl-key') KEYSTORE = credentials('kieker-irl-key')
UPDATE_SITE_URL = "sftp://repo@repo.se.internal/moobench" UPDATE_SITE_URL = "sftp://repo@repo.se.internal/moobench"
DOCKER_ARGS = '' DOCKER_ARGS = ''
BATCH_MODE = "yes"
} }
options { options {
......
...@@ -92,6 +92,8 @@ checkExecutable moobench "${MOOBENCH_BIN}" ...@@ -92,6 +92,8 @@ checkExecutable moobench "${MOOBENCH_BIN}"
checkExecutable receiver "${RECEIVER_BIN}" checkExecutable receiver "${RECEIVER_BIN}"
checkFile aop-file "${AOP}" checkFile aop-file "${AOP}"
showParameter
TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} ` TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} `
info "Experiment will take circa ${TIME} seconds." info "Experiment will take circa ${TIME} seconds."
......
...@@ -72,10 +72,10 @@ function executeBenchmarkBody() { ...@@ -72,10 +72,10 @@ function executeBenchmarkBody() {
loop="$2" loop="$2"
recursion="$3" recursion="$3"
if [[ "${RECEIVER[$index]}" ]] ; then if [[ "${RECEIVER[$index]}" ]] ; then
echo "receiver ${RECEIVER[$index]}" debug "receiver ${RECEIVER[$index]}"
${RECEIVER[$index]} >> "${DATA_DIR}/kieker.receiver-${loop}-${index}.log" & ${RECEIVER[$index]} >> "${DATA_DIR}/kieker.receiver-${loop}-${index}.log" &
RECEIVER_PID=$! RECEIVER_PID=$!
echo "PID $RECEIVER_PID" debug "PID ${RECEIVER_PID}"
fi fi
executeExperiment "$loop" "$recursion" "$index" "${TITLE[$index]}" "${WRITER_CONFIG[$index]}" executeExperiment "$loop" "$recursion" "$index" "${TITLE[$index]}" "${WRITER_CONFIG[$index]}"
......
...@@ -63,13 +63,12 @@ checkExecutable java "${JAVA_BIN}" ...@@ -63,13 +63,12 @@ checkExecutable java "${JAVA_BIN}"
checkFile R-script "${RSCRIPT_PATH}" checkFile R-script "${RSCRIPT_PATH}"
checkFile opentelemetry-agent "${AGENT_JAR}" checkFile opentelemetry-agent "${AGENT_JAR}"
showParameter
TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} ` TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} `
info "Experiment will take circa ${TIME} seconds." info "Experiment will take circa ${TIME} seconds."
JAVA_ARGS="-server" JAVA_ARGS="-Xms1G -Xmx2G -verbose:gc"
JAVA_ARGS="${JAVA_ARGS} -Xms1G -Xmx2G"
JAVA_ARGS="${JAVA_ARGS} -verbose:gc "
JAVA_ARGS_NOINSTR="${JAVA_ARGS}" JAVA_ARGS_NOINSTR="${JAVA_ARGS}"
JAVA_ARGS_OPENTELEMETRY_BASIC="${JAVA_ARGS} -javaagent:${AGENT_JAR} -Dotel.resource.attributes=service.name=moobench -Dotel.instrumentation.methods.include=moobench.application.MonitoredClassSimple[monitoredMethod];moobench.application.MonitoredClassThreaded[monitoredMethod]" JAVA_ARGS_OPENTELEMETRY_BASIC="${JAVA_ARGS} -javaagent:${AGENT_JAR} -Dotel.resource.attributes=service.name=moobench -Dotel.instrumentation.methods.include=moobench.application.MonitoredClassSimple[monitoredMethod];moobench.application.MonitoredClassThreaded[monitoredMethod]"
...@@ -123,4 +122,5 @@ mv "${BASE_DIR}/OpenTelemetry.log" "${RESULTS_DIR}/OpenTelemetry.log" ...@@ -123,4 +122,5 @@ mv "${BASE_DIR}/OpenTelemetry.log" "${RESULTS_DIR}/OpenTelemetry.log"
[ -f "${RESULTS_DIR}/hotspot-1-${RECURSION_DEPTH}-1.log" ] && grep "<task " "${RESULTS_DIR}/"hotspot-*.log > "${RESULTS_DIR}/OpenTelemetry.log" [ -f "${RESULTS_DIR}/hotspot-1-${RECURSION_DEPTH}-1.log" ] && grep "<task " "${RESULTS_DIR}/"hotspot-*.log > "${RESULTS_DIR}/OpenTelemetry.log"
[ -f "${BASE_DIR}/errorlog.txt" ] && mv "${BASE_DIR}/errorlog.txt" "${RESULTS_DIR}" [ -f "${BASE_DIR}/errorlog.txt" ] && mv "${BASE_DIR}/errorlog.txt" "${RESULTS_DIR}"
exit 0
# end # end
...@@ -81,8 +81,9 @@ function runOpenTelemetryLogging { ...@@ -81,8 +81,9 @@ function runOpenTelemetryLogging {
${MORE_PARAMS} &> "${RESULTS_DIR}/output_${i}_${RECURSION_DEPTH}_${k}.txt" ${MORE_PARAMS} &> "${RESULTS_DIR}/output_${i}_${RECURSION_DEPTH}_${k}.txt"
if [ ! "$DEBUG" = true ] if [ ! "$DEBUG" = true ]
then then
echo "DEBUG is $DEBUG, deleting opentelemetry logging file" rm "${RESULTS_DIR}/output_${i}_${RECURSION_DEPTH}_${k}.txt"
rm ${RESULTS_DIR}/output_"$i"_"$RECURSION_DEPTH"_$k.txt else
debug "Keeping opentelemetry logging file"
fi fi
} }
......
...@@ -43,6 +43,11 @@ function createRLabels() { ...@@ -43,6 +43,11 @@ function createRLabels() {
## Generate Results file ## Generate Results file
function runStatistics() { function runStatistics() {
if [ "${TOTAL_NUM_OF_CALLS}" == 1 ] ; then
export SKIP=0
else
export SKIP=${TOTAL_NUM_OF_CALLS}/2
fi
R --vanilla --silent << EOF R --vanilla --silent << EOF
results_fn="${RAWFN}" results_fn="${RAWFN}"
out_yaml_fn="${RESULTS_DIR}/results.yaml" out_yaml_fn="${RESULTS_DIR}/results.yaml"
...@@ -51,7 +56,7 @@ configs.recursion=${RECURSION_DEPTH} ...@@ -51,7 +56,7 @@ configs.recursion=${RECURSION_DEPTH}
configs.labels=c($LABELS) configs.labels=c($LABELS)
configs.framework_name="${FRAMEWORK_NAME}" configs.framework_name="${FRAMEWORK_NAME}"
results.count=${TOTAL_NUM_OF_CALLS} results.count=${TOTAL_NUM_OF_CALLS}
results.skip=${TOTAL_NUM_OF_CALLS}/2 results.skip=${SKIP}
source("${RSCRIPT_PATH}") source("${RSCRIPT_PATH}")
EOF EOF
} }
...@@ -107,7 +112,7 @@ function writeConfiguration() { ...@@ -107,7 +112,7 @@ function writeConfiguration() {
function printIntermediaryResults { function printIntermediaryResults {
for ((index=0;index<${#TITLE[@]};index+=1)); do for ((index=0;index<${#TITLE[@]};index+=1)); do
echo -n "Intermediary results "${TITLE[$index]}" " info_n "Intermediary results "${TITLE[$index]}" "
cat ${RAWFN}-*-${RECURSION_DEPTH}-${index}.csv | awk -F';' '{print $2}' | getSum cat ${RAWFN}-*-${RECURSION_DEPTH}-${index}.csv | awk -F';' '{print $2}' | getSum
done done
} }
...@@ -145,6 +150,10 @@ function info() { ...@@ -145,6 +150,10 @@ function info() {
echo -e "${INFO} $@" echo -e "${INFO} $@"
} }
function info_n() {
echo -n -e "${INFO} $@"
}
function debug() { function debug() {
if [ "${DEBUG}" == "yes" ] ; then if [ "${DEBUG}" == "yes" ] ; then
echo -e "${DEBUG_INFO} $@" echo -e "${DEBUG_INFO} $@"
...@@ -208,6 +217,20 @@ function checkDirectory() { ...@@ -208,6 +217,20 @@ function checkDirectory() {
fi fi
} }
function showParameter() {
info "FRAMEWORK_NAME ${FRAMEWORK_NAME}"
info "RESULTS_DIR ${RESULTS_DIR}"
info "RAWFN ${RAWFN}"
info "JAVA_BIN ${JAVA_BIN}"
info "SLEEP_TIME ${SLEEP_TIME}"
info "NUM_OF_LOOPS ${NUM_OF_LOOPS}"
info "THREADS ${THREADS}"
info "RECURSION_DEPTH ${RECURSION_DEPTH}"
info "TOTAL_NUM_OF_CALLS ${TOTAL_NUM_OF_CALLS}"
info "METHOD_TIME ${METHOD_TIME}"
info "DEBUG ${DEBUG}"
}
FRAMEWORK_NAME=$(basename -- "${BASE_DIR}") FRAMEWORK_NAME=$(basename -- "${BASE_DIR}")
RESULTS_DIR="${BASE_DIR}/results-${FRAMEWORK_NAME}" RESULTS_DIR="${BASE_DIR}/results-${FRAMEWORK_NAME}"
RAWFN="${RESULTS_DIR}/raw" RAWFN="${RESULTS_DIR}/raw"
......
...@@ -62,13 +62,12 @@ checkDirectory results-directory "${RESULTS_DIR}" recreate ...@@ -62,13 +62,12 @@ checkDirectory results-directory "${RESULTS_DIR}" recreate
checkExecutable java "${JAVA_BIN}" checkExecutable java "${JAVA_BIN}"
checkFile R-script "${RSCRIPT_PATH}" checkFile R-script "${RSCRIPT_PATH}"
showParameter
TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} ` TIME=`expr ${METHOD_TIME} \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} + ${SLEEP_TIME} \* 4 \* ${NUM_OF_LOOPS} \* ${RECURSION_DEPTH} + 50 \* ${TOTAL_NUM_OF_CALLS} / 1000000000 \* 4 \* ${RECURSION_DEPTH} \* ${NUM_OF_LOOPS} `
info "Experiment will take circa ${TIME} seconds." info "Experiment will take circa ${TIME} seconds."
JAVA_ARGS="-server" JAVA_ARGS="-Xms1G -Xmx2G -verbose:gc"
JAVA_ARGS="${JAVA_ARGS} -Xms1G -Xmx2G"
JAVA_ARGS="${JAVA_ARGS} -verbose:gc "
JAVA_ARGS_NOINSTR="${JAVA_ARGS}" JAVA_ARGS_NOINSTR="${JAVA_ARGS}"
JAVA_ARGS_LTW="${JAVA_ARGS} -javaagent:${BASE_DIR}/agent/inspectit-ocelot-agent-1.11.1.jar -Djava.util.logging.config.file=${BASE_DIR}/config/logging.properties" JAVA_ARGS_LTW="${JAVA_ARGS} -javaagent:${BASE_DIR}/agent/inspectit-ocelot-agent-1.11.1.jar -Djava.util.logging.config.file=${BASE_DIR}/config/logging.properties"
...@@ -77,8 +76,6 @@ JAVA_ARGS_INSPECTIT_NULLWRITER="${JAVA_ARGS_LTW} -Dinspectit.service-name=mooben ...@@ -77,8 +76,6 @@ JAVA_ARGS_INSPECTIT_NULLWRITER="${JAVA_ARGS_LTW} -Dinspectit.service-name=mooben
JAVA_ARGS_INSPECTIT_ZIPKIN="${JAVA_ARGS_LTW} -Dinspectit.service-name=moobench-inspectit -Dinspectit.exporters.metrics.prometheus.enabled=false -Dinspectit.exporters.tracing.zipkin.url=http://127.0.0.1:9411/api/v2/spans -Dinspectit.config.file-based.path=${BASE_DIR}/config/zipkin/" JAVA_ARGS_INSPECTIT_ZIPKIN="${JAVA_ARGS_LTW} -Dinspectit.service-name=moobench-inspectit -Dinspectit.exporters.metrics.prometheus.enabled=false -Dinspectit.exporters.tracing.zipkin.url=http://127.0.0.1:9411/api/v2/spans -Dinspectit.config.file-based.path=${BASE_DIR}/config/zipkin/"
JAVA_ARGS_INSPECTIT_PROMETHEUS="${JAVA_ARGS_LTW} -Dinspectit.service-name=moobench-inspectit -Dinspectit.exporters.metrics.zipkin.enabled=false -Dinspectit.exporters.metrics.prometheus.enabled=true -Dinspectit.config.file-based.path=${BASE_DIR}/config/prometheus/" JAVA_ARGS_INSPECTIT_PROMETHEUS="${JAVA_ARGS_LTW} -Dinspectit.service-name=moobench-inspectit -Dinspectit.exporters.metrics.zipkin.enabled=false -Dinspectit.exporters.metrics.prometheus.enabled=true -Dinspectit.config.file-based.path=${BASE_DIR}/config/prometheus/"
info "RESULTS_DIR: ${RESULTS_DIR}"
info "RAWFN: $RAWFN"
writeConfiguration writeConfiguration
# #
......
export SLEEP_TIME=10
export NUM_OF_LOOPS=1
export THREADS=1
export RECURSION_DEPTH=1
export TOTAL_NUM_OF_CALLS=1
export METHOD_TIME=0
export DEBUG=false
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment