Q:

HTML Report in JMeter 5.1 after distributed execution not being generated correctly

The current setup is as follows: 4 Ubuntu boxes one master and 3 slaves. I've been encountering the following issues when executing the tests from command-line in distributed fashion.

If I execute the tests and try to generate the HTML report, JMeter attempts to create the files after each of the machines finish their runs, this causes conflicts as the first machine that finished had already created the HTML folder.
./jmeter -r -n -t ./Jmeter_Performance_PoC.jmx -l ./TestResults.csv -e -o TestResults
If I execute the tests and just generate the CSV report to then generate the HTML report from the CSV file, the report gets generated, but JMeter is not using the files full information, it is not identifying the different thread groups nor is it displaying the execution information per slave.
./jmeter -r -n -t ./Jmeter_Performance_PoC.jmx -l ./TestResults.csv 
./jmeter -g ./TestResults.csv -o ./results

Is there a way of having JMeter generate the consolidated report in distributed execution without having override conflicts?

A:

Just use __machineIP() or __machineName() as a prefix or postfix for the Thread Groups / Samplers labels - this way you (and JMeter) will be able to distinguish the results coming from the different slaves. 
Check out Apache JMeter Functions - An Introduction to get familiarized with the JMeter Functions concept. 

