List of usage examples for org.apache.commons.math3.random ValueServer setMode
public void setMode(int mode)
From source file:org.hawkular.metrics.generator.DataGenerator.java
public void run(CommandLine cmdLine) throws Exception { Stopwatch stopwatch = Stopwatch.createStarted(); if (cmdLine.hasOption("h")) { printUsage();/*w w w. j a v a2s . c o m*/ return; } keyspace = cmdLine.getOptionValue("keyspace", "hawkular_metrics"); dataDir = new File(cmdLine.getOptionValue("data-dir", "./data")); dataDir.mkdirs(); tenants = Integer.parseInt(cmdLine.getOptionValue("tenants", "100")); metricsPerTenant = Integer.parseInt(cmdLine.getOptionValue("metrics-per-tenant", "100")); ValueServer valueServer = new ValueServer(); valueServer.setMu(100); valueServer.setMode(ValueServer.UNIFORM_MODE); String endValue = cmdLine.getOptionValue("end"); if (endValue == null) { endTime = System.currentTimeMillis(); } else { endTime = getDuration("end", endValue, startEndRegexp); } String startValue = cmdLine.getOptionValue("start"); if (startValue == null) { startTime = endTime - TimeUnit.MILLISECONDS.convert(1, TimeUnit.HOURS); } else { startTime = endTime - getDuration("start", startValue, startEndRegexp); } String intervalValue = cmdLine.getOptionValue("interval"); if (intervalValue == null) { interval = TimeUnit.MILLISECONDS.convert(1, TimeUnit.MINUTES); } else { interval = getDuration("interval", intervalValue, intervalRegexp); } bufferSize = Integer.parseInt(cmdLine.getOptionValue("buffer-size", "128")); CQLSSTableWriter writer = createWriter(); long totalDataPoints = 0; long currentTime = startTime; while (currentTime <= endTime) { for (int i = 0; i < tenants; ++i) { for (int j = 0; j < metricsPerTenant; ++j) { UUID timeUUID = TimeUUIDUtils.getTimeUUID(currentTime); writer.addRow("TENANT-" + i, GAUGE.getCode(), "GAUGE-" + j, 0L, timeUUID, valueServer.getNext()); ++totalDataPoints; } } currentTime += interval; } writer.close(); stopwatch.stop(); System.out.println("\n\nStart time: " + startTime); System.out.println("End time: " + endTime); System.out.println("Total duration: " + (endTime - startTime) + " ms"); System.out.println("Interval: " + interval); System.out.println("Tenants: " + tenants); System.out.println("Metrics per tenant: " + metricsPerTenant); System.out.println("Total data points: " + totalDataPoints); System.out.println("Execution time: " + stopwatch.elapsed(TimeUnit.MILLISECONDS) + " ms"); }