diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2d331118be52a629b60544901021c036fe70f485..02b87873590bf3057b5eeef49b958fcc09fd6885 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,7 +10,8 @@ that users understand how the changes affect the new version.
 -->
 Version 3.1.0-dev
 ---------------------------
-+ Isoseq3: Add workaround for glob command not locating files in output directory.
++ Isoseq3: Make sure stderr log file from Refine is unique and not overwritten.
++ Isoseq3: Add workaround in Refine for glob command not locating files in output directory.
 + Isoseq3: Fix --min-polya-length argument syntax.
 + Lima: Add workaround for glob command not locating files in output directory.
 + CCS: Add missing backslash.
diff --git a/isoseq3.wdl b/isoseq3.wdl
index 549bc40ef97a4b92b56c72a2a6f6102ee6fe8b71..8cc0db8fe0456f5626ee4eebb8bb586846a370d1 100644
--- a/isoseq3.wdl
+++ b/isoseq3.wdl
@@ -49,28 +49,28 @@ task Refine {
         ~{true="--require-polya" false="" requirePolyA} \
         --log-level ~{logLevel} \
         --num-threads ~{cores} \
-        ~{"--log-file " + outputPrefix + ".flnc.stderr.log"} \
+        --log-file "${bamNewName}.stderr.log" \
         ~{inputBamFile} \
         ~{primerFile} \
         ${bamNewName}
 
-        # Copy commands below are needed because glob command does not find
-        # multiple bam/bam.pbi/consensusreadset.xml/filter_summary.json/report.csv
-        # files when not located in working directory.
+        # Copy commands below are needed because naming schema for Refine output
+        # can not be correctly handled in the WDL output section.
         cp "${bamNewName}" "${combinedOutput}"
         cp "${bamNewName}.pbi" "${combinedOutput}.pbi"
         cp "${bamNewName/bam/consensusreadset}.xml" "${combinedOutput/bam/consensusreadset}.xml"
         cp "${bamNewName/bam/filter_summary}.json" "${combinedOutput/bam/filter_summary}.json"
         cp "${bamNewName/bam/report}.csv" "${combinedOutput/bam/report}.csv"
+        cp "${bamNewName}.stderr.log" "${combinedOutput}.stderr.log"
     >>>
 
     output {
-        Array[File] outputFLNCfile = glob("~{basename(outputPrefix)}*.bam")
-        Array[File] outputFLNCindexFile = glob("~{basename(outputPrefix)}*.bam.pbi")
-        Array[File] outputConsensusReadsetFile = glob("~{basename(outputPrefix)}*.consensusreadset.xml")
-        Array[File] outputFilterSummaryFile = glob("~{basename(outputPrefix)}*.filter_summary.json")
-        Array[File] outputReportFile = glob("~{basename(outputPrefix)}*.report.csv")
-        File outputSTDERRfile = outputPrefix + ".flnc.stderr.log"
+        Array[File] outputFLNCfile = glob("*.bam")
+        Array[File] outputFLNCindexFile = glob("*.bam.pbi")
+        Array[File] outputConsensusReadsetFile = glob("*.consensusreadset.xml")
+        Array[File] outputFilterSummaryFile = glob("*.filter_summary.json")
+        Array[File] outputReportFile = glob("*.report.csv")
+        Array[File] outputSTDERRfile = glob("*.stderr.log")
     }
 
     runtime {