public static void main()

in src/main/java/com/uber/rss/tools/StreamServerStressTool.java [758:829]


    public static void main(String[] args) {
        StreamServerStressTool tool = new StreamServerStressTool();
        
        int i = 0;
        while (i < args.length) {
            String argName = args[i++];
            if (argName.equalsIgnoreCase("-workDir")) {
                tool.workDir = args[i++];
            } else if (argName.equalsIgnoreCase("-servers")) {
                String servers = args[i++];
                String[] strArray = servers.split(",");
                for (String entry: strArray) {
                    String[] hostAndPort = entry.split(":");
                    tool.serverHosts.add(hostAndPort[0]);
                    tool.serverPorts.add(Integer.parseInt(hostAndPort[1]));
                }
            } else if (argName.equalsIgnoreCase("-epoll")) {
                tool.useEpoll = Boolean.parseBoolean(args[i++]);
            } else if (argName.equalsIgnoreCase("-numServers")) {
                tool.numServers = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-numServerThreads")) {
                tool.numServerThreads = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-writeClientQueueSize")) {
                tool.writeClientQueueSize = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-writeClientThreads")) {
                tool.writeClientThreads = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-appId")) {
                tool.appId = args[i++];
            } else if (argName.equalsIgnoreCase("-numBytes")) {
                String numBytesStr = args[i++];
                tool.numBytes = com.uber.rss.util.StringUtils.getBytesValue(numBytesStr);
            } else if (argName.equalsIgnoreCase("-numMaps")) {
                tool.numMaps = Integer.parseInt(args[i++]);
                tool.startMapId = 0;
                tool.endMapId = tool.numMaps - 1;
            } else if (argName.equalsIgnoreCase("-numMapAttempts")) {
                tool.numMapAttempts = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-startMapId")) {
                tool.startMapId = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-endMapId")) {
                tool.endMapId = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-mapDelay")) {
                tool.mapDelay = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-mapSlowness")) {
                tool.mapSlowness = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-maxWait")) {
                tool.maxWait = Long.parseLong(args[i++]);
            } else if (argName.equalsIgnoreCase("-numPartitions")) {
                tool.numPartitions = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-numSplits")) {
                tool.numSplits = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-numReplicas")) {
                tool.numReplicas = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-partitionFanout")) {
                tool.partitionFanout = Integer.parseInt(args[i++]);
            } else if (argName.equalsIgnoreCase("-deleteFiles")) {
                tool.deleteFiles = Boolean.parseBoolean(args[i++]);
            } else {
                throw new IllegalArgumentException("Unsupported argument: " + argName);
            }
        }
        
        try {
            tool.run();
        } finally {
            tool.cleanup();
        }
        
        M3Stats.closeDefaultScope();

        logger.info(String.format("%s finished", StreamServerStressToolLongRun.class.getSimpleName()));
    }