以ThrMc.java为例,说明参数enableOutput和outputToFile的用途

首先附上ThrMc.java的代码:

public class ThrMc {

	

	/**
	 * The main method.
	 * 
	 * @param args the arguments
	 * @throws IOException Signals that an I/O exception has occurred.
	 */
	public static void main(String[] args) throws IOException {
		boolean enableOutput = true;                                                                                       //能够输出标志(输出仿真具体步骤,如虚拟机创建,分配虚拟机,迁移虚拟机具体步骤)
		boolean outputToFile = false;                                                                                      //输出到文件标志
		String inputFolder = NonPowerAware.class.getClassLoader().getResource("workload/planetlab").getPath();             //得到输入文件夹路径,即工作负载文件夹
		//得到字符串inputFolder:/C:/Users/Dell/workspace/cloudsim-cloudsim-4.0/modules/cloudsim-examples/target/classes/workload/planetlab
		
		String outputFolder = "output";                                                                 //输出文件夹名称
		String workload = "20110303"; // PlanetLab workload                                             //工作负载文件夹名称
		String vmAllocationPolicy = "thr"; // Static Threshold (THR) VM allocation policy               //采用的虚拟机分配策略
		String vmSelectionPolicy = "mc"; // Maximum Correlation (MC) VM selection policy                //才用的虚拟机选择策略
		String parameter = "0.8"; // the static utilization threshold                                   //利用率阈值

		
		
		
		new PlanetLabRunner(
				enableOutput,
				outputToFile,
				inputFolder,
				outputFolder,
				workload,
				vmAllocationPolicy,
				vmSelectionPolicy,
				parameter);
			
	}

}

第一个参数enableOutput的功能:控制输出的标志,控制是否输出仿真全过程的日志记录。若将该参数修改为false,输出结果如下:

以ThrMc.java为例,说明参数enableOutput和outputToFile的用途

第二个参数outputToFile的功能:控制输出标志,是否以文件的形式输出仿真全过程的日志记录。(最后生成一个output文件夹,文件夹中包含一个以试验名字命名的txt文本,详细记录了仿真的全过程的日志记录)。将参数修改为true,最后生成500多M的txt文本,记录了java控制台的输出信息,这样可以解决java堆栈不足,无法显示仿真全过程的详细日志记录问题!!!

最后生成的文件夹为“output”。

以ThrMc.java为例,说明参数enableOutput和outputToFile的用途

在“output”文件夹中,最后生成一个以试验名字命名的txt文本,记录着仿真的详细过程日志记录,包括虚拟机创建,虚拟机分配,虚拟机迁移,以及每五分钟采样的数据等等。如下图所示:

以ThrMc.java为例,说明参数enableOutput和outputToFile的用途

以ThrMc.java为例,说明参数enableOutput和outputToFile的用途