diff --git a/build/build-bifromq-starter/bin/bifromq-start.bat b/build/build-bifromq-starter/bin/bifromq-start.bat index 072b042f9..d5b01116d 100644 --- a/build/build-bifromq-starter/bin/bifromq-start.bat +++ b/build/build-bifromq-starter/bin/bifromq-start.bat @@ -60,6 +60,13 @@ if not exist "%LOG_DIR%" ( mkdir "%LOG_DIR%" ) +rem Heap dump directory to use +if "" == "%HEAP_DUMP_DIR%" set HEAP_DUMP_DIR=%LOG_DIR% +rem create heap dump directory +if not exist "%HEAP_DUMP_DIR%" ( + mkdir "%HEAP_DUMP_DIR%" +) + rem data directory to use if "" == "%DATA_DIR%" set DATA_DIR=%BASE_DIR%\data rem create data directory @@ -131,7 +138,7 @@ if "" == "%JVM_GC_OPTS%" ( '-XX:+UseZGC' ^ '-XX:ZAllocationSpikeTolerance=5' ^ '-XX:+HeapDumpOnOutOfMemoryError' ^ - '-XX:HeapDumpPath="%LOG_DIR%"' ^ + '-XX:HeapDumpPath=%HEAP_DUMP_DIR%' ^ '-Xlog:async' ^ '-Xlog:gc:file="%LOG_DIR%\gc.log:time,tid,tags:filecount=5,filesize=50m"' ) diff --git a/build/build-bifromq-starter/bin/bifromq-start.sh b/build/build-bifromq-starter/bin/bifromq-start.sh index 24df48d1f..e7fb2f126 100755 --- a/build/build-bifromq-starter/bin/bifromq-start.sh +++ b/build/build-bifromq-starter/bin/bifromq-start.sh @@ -64,6 +64,12 @@ if [ "x$LOG_DIR" = "x" ]; then fi mkdir -p "$LOG_DIR" +# Heap dump directory to use, default is log directory +if [ "x$HEAP_DUMP_DIR" = "x" ]; then + HEAP_DUMP_DIR="$LOG_DIR" +fi +mkdir -p "$HEAP_DUMP_DIR" + # Data directory to use if [ "x$DATA_DIR" = "x" ]; then DATA_DIR="$BASE_DIR/data" @@ -156,7 +162,7 @@ if [ -z "$JVM_GC_OPTS" ]; then -Xlog:gc:file='${LOG_DIR}/gc-%t.log:time,tid,tags:filecount=5,filesize=50m' \ -XX:+CrashOnOutOfMemoryError \ -XX:+HeapDumpOnOutOfMemoryError \ - -XX:HeapDumpPath='${LOG_DIR}' \ + -XX:HeapDumpPath=${HEAP_DUMP_DIR} \ " fi