private String createStatusJson() throws JsonProcessingException {
    Map<String, Object> map = new HashMap<>();
    map.put(AbstractLauncher.ServiceState.JSON_CLASSPATH, classpath);
    map.put(AbstractLauncher.ServiceState.JSON_GEMFIREVERSION, gemFireVersion);
    map.put(AbstractLauncher.ServiceState.JSON_HOST, host);
    map.put(AbstractLauncher.ServiceState.JSON_JAVAVERSION, javaVersion);
    map.put(AbstractLauncher.ServiceState.JSON_JVMARGUMENTS, getJvmArguments());
    map.put(AbstractLauncher.ServiceState.JSON_LOCATION, serviceLocation);
    map.put(AbstractLauncher.ServiceState.JSON_LOGFILE, logFile);
    map.put(AbstractLauncher.ServiceState.JSON_MEMBERNAME, memberName);
    map.put(AbstractLauncher.ServiceState.JSON_PID, pid);
    map.put(AbstractLauncher.ServiceState.JSON_PORT, port);
    map.put(AbstractLauncher.ServiceState.JSON_STATUS, statusDescription);
    map.put(AbstractLauncher.ServiceState.JSON_STATUSMESSAGE, statusMessage);
    map.put(AbstractLauncher.ServiceState.JSON_TIMESTAMP, timestampTime);
    map.put(AbstractLauncher.ServiceState.JSON_UPTIME, uptime);
    map.put(AbstractLauncher.ServiceState.JSON_WORKINGDIRECTORY, workingDirectory);

    String status = new ObjectMapper().writeValueAsString(map);

    return status;
  }
Unit tests for {@link ServerLauncher.ServerState}.
geode-core/src/test/java/org/apache/geode/distributed/ServerStateTest.java