diff --git a/README.md b/README.md index 6f1b901..89848ea 100644 --- a/README.md +++ b/README.md @@ -187,24 +187,30 @@ $ curl -X DELETE "localhost:8080/delete_all" ### Query Endpoints -These endpoints match those used by the Grafana Simple JSON datasource. +These endpoints match those used by the [Grafana Simple JSON datasource](https://grafana.com/grafana/plugins/grafana-simple-json-datasource/). -#### GET /search +#### POST /search + +Responds with a JSON array containing selectable values of an event field (e.g. `jdk.ObjectAllocationSample.objectClass`) specified in the JSON body's `target` field. Used to define available selections for [dashboard variables](https://grafana.com/docs/grafana/v7.5/variables/). + +If `target` is set to `*`, responds with all selectable event fields. -Responds with a JSON array containing the selectable query elements. CURL Example ```bash -$ curl "localhost:8080/search" +$ curl -X POST --data '{ "target": "jdk.ObjectAllocationSample.objectClass" }' "localhost:8080/search" ``` + #### POST /query -Responds with a JSON array containing elements for a query. The query body format matches that of the Grafana Simple JSON datasource. +Responds with a JSON array containing data points for a query. The query body format matches that of the Grafana Simple JSON datasource. + +The `target` field can have parameters to filter matching data points If there is no parameter, no matching is performed. If a parameter is specified with "*", matching is done for all possible value of that parameter. CURL Example ```bash -$ curl -X POST --data "Query Body" "localhost:8080/query" +$ curl -X POST --data '{ "target": "jdk.ObjectAllocationSample.weight?objectClass=java.util.HashSet", ...}' "localhost:8080/query" ``` ## Supported JFR Events @@ -296,6 +302,11 @@ jdk.JVMInformation jdk.PhysicalMemory jdk.ThreadContextSwitchRate + +jdk.ObjectAllocationSample.eventThread +jdk.ObjectAllocationSample.stackTrace +jdk.ObjectAllocationSample.objectClass +jdk.ObjectAllocationSample.weight ``` ### Unsupported JFR Events diff --git a/src/main/java/io/cryostat/jfr/datasource/events/RecordingService.java b/src/main/java/io/cryostat/jfr/datasource/events/RecordingService.java index 3347d12..bca2d5f 100644 --- a/src/main/java/io/cryostat/jfr/datasource/events/RecordingService.java +++ b/src/main/java/io/cryostat/jfr/datasource/events/RecordingService.java @@ -39,8 +39,14 @@ import java.io.File; import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; import java.util.Iterator; import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; import javax.enterprise.context.ApplicationScoped; @@ -54,6 +60,7 @@ import org.openjdk.jmc.common.item.ItemToolkit; import org.openjdk.jmc.common.unit.IQuantity; import org.openjdk.jmc.common.unit.IRange; +import org.openjdk.jmc.common.unit.IUnit; import org.openjdk.jmc.common.unit.QuantityConversionException; import org.openjdk.jmc.common.unit.QuantityRange; import org.openjdk.jmc.common.unit.UnitLookup; @@ -63,7 +70,11 @@ import io.cryostat.jfr.datasource.json.JsonUtils; import io.cryostat.jfr.datasource.server.Query; +import io.cryostat.jfr.datasource.server.Search; +import io.cryostat.jfr.datasource.server.Target; +import io.cryostat.jfr.datasource.utils.ArgRunnable; +import com.fasterxml.jackson.databind.JsonMappingException; import io.vertx.core.json.JsonArray; import io.vertx.core.json.JsonObject; import org.slf4j.Logger; @@ -80,10 +91,19 @@ public boolean eventsLoaded() { return events != null; } - public String search() { - if (events == null) { + public String search(Search search) throws JsonMappingException { + if (!eventsLoaded()) { return JsonUtils.EMPTY_ARRAY; } + if (search.getTarget().isPresent()) { + String target = search.getTarget().get(); + return target.equals("*") ? getEventTypes() : getTargetValues(target); + } else { + throw new JsonMappingException(null, "missing target field in json body"); + } + } + + public String getEventTypes() throws JsonMappingException { JsonArray json = new JsonArray(); Iterator i = events.iterator(); while (i.hasNext()) { @@ -109,65 +129,226 @@ public String search() { return json.toString(); } + public String getTargetValues(String target) { + if (target.isBlank()) { + return JsonUtils.EMPTY_ARRAY; + } + + JsonArray json = new JsonArray(); + IItemCollection filteredEvents = filterEvents(target); + String targetField = target.substring(target.lastIndexOf(".") + 1); + + // Should be only 0 or 1 iterator as filtered by name + for (IItemIterable itemIterable : filteredEvents) { + IType type = itemIterable.getType(); + List> attributes = type.getAttributes(); + IMemberAccessor accessor = null; + + for (IAttribute attribute : attributes) { + if (targetField.equals(attribute.getIdentifier())) { + accessor = ItemToolkit.accessor(attribute); + break; + } + } + + if (accessor != null) { + for (IItem item : itemIterable) { + json.add(accessor.getMember(item).toString()); + } + } + } + return json.toString(); + } + + public JsonObject getDuration() { + final JsonObject targetObject = new JsonObject(); + + JsonArray columns = new JsonArray(); + JsonObject targetCol = new JsonObject(); + targetCol.put("text", "Duration"); + targetCol.put("type", "number"); + columns.add(targetCol); + + JsonArray rows = new JsonArray(); + + targetObject.put("rows", rows); + targetObject.put("columns", columns); + + long startTime = Long.MAX_VALUE; + long stopTime = 0; + + for (IItemIterable itemIterable : events) { + IType type = itemIterable.getType(); + IMemberAccessor startTimeAccessor = + JfrAttributes.START_TIME.getAccessor(type); + IMemberAccessor endTimeAccessor = + JfrAttributes.END_TIME.getAccessor(type); + for (IItem item : itemIterable) { + try { + long eventStartTime = + startTimeAccessor.getMember(item).longValueIn(UnitLookup.EPOCH_MS); + + startTime = Math.min(eventStartTime, startTime); + stopTime = Math.max(eventStartTime, stopTime); + if (endTimeAccessor != null) { + long eventEndTime = + endTimeAccessor.getMember(item).longValueIn(UnitLookup.EPOCH_MS); + stopTime = Math.max(eventEndTime, stopTime); + } + } catch (QuantityConversionException e) { + // Do nothing + } + } + } + + JsonArray row = new JsonArray(); + LOGGER.info("Start time: " + startTime); + LOGGER.info("Stop time: " + stopTime); + + row.add(Long.valueOf(Math.max(stopTime - startTime, 0))); + rows.add(row); + + return targetObject; + } + + public JsonObject getStartTime() { + final JsonObject targetObject = new JsonObject(); + + JsonArray columns = new JsonArray(); + JsonObject targetCol = new JsonObject(); + targetCol.put("text", "Start Time"); + targetCol.put("type", "number"); + columns.add(targetCol); + + JsonArray rows = new JsonArray(); + + targetObject.put("rows", rows); + targetObject.put("columns", columns); + + long startTime = Long.MAX_VALUE; + + for (IItemIterable itemIterable : events) { + IType type = itemIterable.getType(); + IMemberAccessor startTimeAccessor = + JfrAttributes.START_TIME.getAccessor(type); + for (IItem item : itemIterable) { + try { + long markTime = + startTimeAccessor.getMember(item).longValueIn(UnitLookup.EPOCH_MS); + + startTime = Math.min(markTime, startTime); + } catch (QuantityConversionException e) { + // Do nothing + } + } + } + + JsonArray row = new JsonArray(); + row.add(Long.valueOf(startTime)); + rows.add(row); + + return targetObject; + } + public String query(Query query) { try { if (events == null) { return JsonUtils.EMPTY_ARRAY; } - JsonArray json = new JsonArray(); + JsonArray responseJson = new JsonArray(); query.applyTargets( (t) -> { - JsonObject targetObject = new JsonObject(); - json.add(targetObject); - String target = t.getTarget(); String type = t.getType(); - if ("timeserie".equals(type)) { - this.getTimeseries(query, target, targetObject); - } else if ("table".equals(type)) { - this.getTable(query, target, targetObject); + LOGGER.info(type); + if (type.equals("timeserie")) { + for (JsonObject obj : + this.getTimeseries(t, query.getFrom(), query.getTo())) { + responseJson.add(obj); + } + } else if (type.equals("table")) { + responseJson.add(this.getTable(t, query.getFrom(), query.getTo())); } }); - return json.toString(); + return responseJson.toString(); } catch (Exception e) { e.printStackTrace(); return JsonUtils.EMPTY_ARRAY; } } - public void getTimeseries(Query query, String target, JsonObject targetObject) { - if (target.contains(".")) { - targetObject.put("target", target); - JsonArray datapointsArray = new JsonArray(); - targetObject.put("datapoints", datapointsArray); - - String eventName = target.substring(0, target.lastIndexOf(".")); - String eventField = target.substring(target.lastIndexOf(".") + 1); - IQuantity start = UnitLookup.EPOCH_MS.quantity(query.getFrom()); - IQuantity end = UnitLookup.EPOCH_MS.quantity(query.getTo()); - IRange range = QuantityRange.createWithEnd(start, end); - IItemCollection filteredEvents = - events.apply(ItemFilters.type(eventName)) - .apply(ItemFilters.rangeContainedIn(JfrAttributes.LIFETIME, range)); - - if (filteredEvents.hasItems()) { - for (IItemIterable itemIterable : filteredEvents) { - IType type = itemIterable.getType(); - List> attributes = type.getAttributes(); - for (IAttribute attribute : attributes) { - if (eventField.equals(attribute.getIdentifier())) { - IMemberAccessor startTimeAccessor = - JfrAttributes.START_TIME.getAccessor(type); - IMemberAccessor accessor = ItemToolkit.accessor(attribute); + public List getTimeseries(Target target, long from, long to) { + final List targetObjects = new ArrayList<>(); - for (IItem item : itemIterable) { - if (!(accessor.getMember(item) instanceof IQuantity)) { - return; - } - JsonArray datapoint = new JsonArray(); - datapoint.add(((IQuantity) accessor.getMember(item)).doubleValue()); + final String targetIdentifier = target.getTargetIdentifier(); // eventName.field format + final Map> targetOptions = target.getTargetOptions(); + + // Field name of the target event + String eventField = targetIdentifier.substring(targetIdentifier.lastIndexOf(".") + 1); + + // A set of target options that are specified as * (all) + final Set toUpdateOptions = new HashSet<>(); + // Populate response json array + if (targetOptions.isEmpty()) { + targetObjects.add(createEmptyTargetJson(targetIdentifier, Optional.empty())); + } else { + targetOptions.forEach( + (fieldName, valueSet) -> { + if (valueSet.contains( + "*")) { // Do not exact values. Add in each event iteration. + toUpdateOptions.add(fieldName); + } else { + valueSet.forEach( + (val) -> { + targetObjects.add( + createEmptyTargetJson(val, Optional.of(fieldName))); + }); + } + }); + } + + applyFilterEvents( + targetIdentifier, + from, + to, + (filteredEvents) -> { + // Iterators for event types that match filters + // Note: There should be only 0 or 1 iterator as filter is defined as event + // name. + for (IItemIterable itemIterable : filteredEvents) { + IType type = itemIterable.getType(); + List> attributes = type.getAttributes(); + final Map> aMap = new HashMap<>(); + + for (IAttribute attribute : attributes) { // Attributes of the events + if (eventField.equals(attribute.getIdentifier())) { + aMap.put(eventField, ItemToolkit.accessor(attribute)); + } else if (targetOptions.get(attribute.getIdentifier()) != null) { + aMap.put( + attribute.getIdentifier(), ItemToolkit.accessor(attribute)); + } + } + + if (!aMap.isEmpty() && aMap.get(eventField) != null) { + IMemberAccessor targetAccessor = aMap.get(eventField); + for (IItem item : itemIterable) { // Iterate on each event long startTime = 0; + JsonArray datapoint = new JsonArray(); // [y, x] + + Object value = targetAccessor.getMember(item); + if (value instanceof IQuantity) { + IQuantity quanity = (IQuantity) value; + IUnit displayUnit = displayUnit(quanity.getUnit()); + datapoint.add(quanity.doubleValueIn(displayUnit)); + } else { + // Note: content can be JSON, which requires transformation in + // Grafana. + datapoint.add(value.toString()); + } + try { + IMemberAccessor startTimeAccessor = + JfrAttributes.START_TIME.getAccessor(type); startTime = startTimeAccessor .getMember(item) @@ -176,62 +357,125 @@ public void getTimeseries(Query query, String target, JsonObject targetObject) { // Do Nothing } datapoint.add(startTime); - datapointsArray.add(datapoint); + + if (targetOptions.isEmpty()) { + targetObjects.get(0).getJsonArray("datapoints").add(datapoint); + } else { + targetOptions.forEach( + (fieldName, valueSet) -> { + IMemberAccessor accessor = + aMap.get(fieldName); + if (accessor != null) { + String group = + accessor.getMember(item).toString(); + boolean found = false; + for (JsonObject obj : targetObjects) { + // Must match option field name (i.e. + // category) and target name + String paramField = + obj.getJsonObject("meta") + .getString("paramField"); + if (paramField.equals(fieldName) + && obj.getString("target") + .equals(group)) { + found = true; + obj.getJsonArray("datapoints") + .add(datapoint); + } + } + if (toUpdateOptions.contains(fieldName) + && !found) { + JsonObject obj = + createEmptyTargetJson( + group, + Optional.of(fieldName)); + obj.getJsonArray("datapoints") + .add(datapoint); + targetObjects.add(obj); + } + } + }); + } } } } - } - } - } + }); + + return targetObjects; } - public void getTable(Query query, String target, JsonObject targetObject) { - if (target.contains(".")) { - JsonArray columns = new JsonArray(); - targetObject.put("columns", columns); + public JsonObject getTable(Target target, long from, long to) { + final JsonObject targetObject = new JsonObject(); + final String targetIdentifier = target.getTargetIdentifier(); - JsonArray rows = new JsonArray(); - targetObject.put("rows", rows); + // Special cases for duration and startTime + if (targetIdentifier.equals(Target.durationTargetIdentifier)) { + return getDuration(); + } else if (targetIdentifier.equals(Target.startTimeTargetIdentifier)) { + return getStartTime(); + } - targetObject.put("type", "table"); + String targetEventField = targetIdentifier.substring(targetIdentifier.lastIndexOf(".") + 1); - JsonObject timestamp = new JsonObject(); - timestamp.put("text", "Time"); - timestamp.put("type", "time"); - columns.add(timestamp); + targetObject.put("type", "table"); - String eventName = target.substring(0, target.lastIndexOf(".")); - String eventField = target.substring(target.lastIndexOf(".") + 1); + JsonArray columns = new JsonArray(); - JsonObject field = new JsonObject(); - field.put("text", eventField); - field.put("type", "number"); - columns.add(field); + JsonObject timestampCol = new JsonObject(); + timestampCol.put("text", "Time"); + timestampCol.put("type", "time"); + columns.add(timestampCol); - IQuantity start = UnitLookup.EPOCH_MS.quantity(query.getFrom()); - IQuantity end = UnitLookup.EPOCH_MS.quantity(query.getTo()); - IRange range = QuantityRange.createWithEnd(start, end); - IItemCollection filteredEvents = - events.apply(ItemFilters.type(eventName)) - .apply(ItemFilters.rangeContainedIn(JfrAttributes.LIFETIME, range)); + JsonObject targetCol = new JsonObject(); + targetCol.put("text", targetEventField); + targetCol.put("type", "string"); // default string + columns.add(targetCol); - if (filteredEvents.hasItems()) { - for (IItemIterable itemIterable : filteredEvents) { - IType type = itemIterable.getType(); - List> attributes = type.getAttributes(); - for (IAttribute attribute : attributes) { - if (eventField.equals(attribute.getIdentifier())) { - IMemberAccessor startTimeAccessor = - JfrAttributes.START_TIME.getAccessor(type); - IMemberAccessor accessor = ItemToolkit.accessor(attribute); + JsonArray rows = new JsonArray(); + + targetObject.put("rows", rows); + targetObject.put("columns", columns); + + applyFilterEvents( + targetIdentifier, + from, + to, + (filteredEvents) -> { + // Iterators for event types that match filters + // Note: There should be only 0 or 1 iterator as filter is defined as event + // name. + for (IItemIterable itemIterable : filteredEvents) { + IType type = itemIterable.getType(); + List> attributes = type.getAttributes(); + IMemberAccessor accessor = null; + + for (IAttribute attribute : attributes) { // Attributes of the events + if (targetEventField.equals(attribute.getIdentifier())) { + accessor = ItemToolkit.accessor(attribute); + columns.forEach( + (obj) -> { // Update targetField type + JsonObject jsonObj = ((JsonObject) obj); + String colName = jsonObj.getString("text"); + if (colName.equals(targetEventField)) { + jsonObj.put( + "type", + getColumnType( + attribute + .getContentType() + .getIdentifier())); + } + }); + } + } + + if (accessor != null) { for (IItem item : itemIterable) { - if (!(accessor.getMember(item) instanceof IQuantity)) { - return; - } JsonArray datapoint = new JsonArray(); long startTime = 0; try { + IMemberAccessor startTimeAccessor = + JfrAttributes.START_TIME.getAccessor(type); startTime = startTimeAccessor .getMember(item) @@ -240,14 +484,58 @@ public void getTable(Query query, String target, JsonObject targetObject) { // Do Nothing } datapoint.add(startTime); - datapoint.add(((IQuantity) accessor.getMember(item)).doubleValue()); + + Object value = accessor.getMember(item); + if (value instanceof IQuantity) { + IQuantity quanity = (IQuantity) value; + IUnit displayUnit = displayUnit(quanity.getUnit()); + datapoint.add(quanity.doubleValueIn(displayUnit)); + } else { + datapoint.add(value.toString()); + } + rows.add(datapoint); } } } - } - } + }); + return targetObject; + } + + public void applyFilterEvents( + String targetIdentifier, long from, long to, ArgRunnable runnable) { + runnable.run(filterEvents(targetIdentifier, from, to)); + } + + public IItemCollection filterEvents(String targetIdentifier, long from, long to) { + String eventName = targetIdentifier.substring(0, targetIdentifier.lastIndexOf(".")); + IQuantity start = UnitLookup.EPOCH_MS.quantity(from); + IQuantity end = UnitLookup.EPOCH_MS.quantity(to); + IRange range = QuantityRange.createWithEnd(start, end); + IItemCollection filteredEvents = + this.events.apply( + ItemFilters.and( + ItemFilters.type(eventName), + ItemFilters.rangeContainedIn(JfrAttributes.LIFETIME, range))); + return filteredEvents; + } + + public IItemCollection filterEvents(String targetIdentifier) { + String eventName = targetIdentifier.substring(0, targetIdentifier.lastIndexOf(".")); + IItemCollection filteredEvents = this.events.apply(ItemFilters.type(eventName)); + return filteredEvents; + } + + public JsonObject createEmptyTargetJson(String identifier, Optional paramField) { + JsonObject jsonObject = new JsonObject(); + jsonObject.put("target", identifier); + jsonObject.put("datapoints", new JsonArray()); + jsonObject.put("meta", new JsonObject()); + + if (paramField.isPresent()) { + jsonObject.getJsonObject("meta").put("paramField", paramField.get()); } + return jsonObject; } public String annotations() { @@ -255,9 +543,35 @@ public String annotations() { return JsonUtils.EMPTY_ARRAY; } // TODO: Implement annotation support + // Reference: https://grafana.com/grafana/plugins/grafana-simple-json-datasource/ return JsonUtils.EMPTY_ARRAY; } + public IUnit displayUnit(IUnit originalUnit) { + String unitIdentifier = originalUnit.getContentType().getIdentifier(); + switch (unitIdentifier) { + case "memory": + return UnitLookup.BYTE; + case "timespan": + return UnitLookup.MILLISECOND; + case "frequency": + return UnitLookup.HERTZ; + default: + return originalUnit; + } + } + + public String getColumnType(String unitIdentifier) { + switch (unitIdentifier) { + case "memory": + case "timespan": + case "frequency": + return "number"; + default: + return "string"; + } + } + public void loadEvents(String filename) throws IOException { if (filename == null || filename == "") { throw new IOException("Invalid JFR filename"); diff --git a/src/main/java/io/cryostat/jfr/datasource/server/JfrResource.java b/src/main/java/io/cryostat/jfr/datasource/server/Datasource.java similarity index 86% rename from src/main/java/io/cryostat/jfr/datasource/server/JfrResource.java rename to src/main/java/io/cryostat/jfr/datasource/server/Datasource.java index 296d14a..3c743e9 100644 --- a/src/main/java/io/cryostat/jfr/datasource/server/JfrResource.java +++ b/src/main/java/io/cryostat/jfr/datasource/server/Datasource.java @@ -51,6 +51,7 @@ import io.cryostat.jfr.datasource.events.RecordingService; import io.cryostat.jfr.datasource.sys.FileSystemService; +import io.quarkus.vertx.web.ReactiveRoutes; import io.quarkus.vertx.web.Route; import io.quarkus.vertx.web.Route.HttpMethod; import io.smallrye.common.annotation.Blocking; @@ -62,8 +63,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -public class JfrResource { - private static final Logger LOGGER = LoggerFactory.getLogger(JfrResource.class); +public class Datasource { + private static final Logger LOGGER = LoggerFactory.getLogger(Datasource.class); private static final String UNSET_FILE = ""; private volatile String loadedFile = UNSET_FILE; @@ -80,17 +81,31 @@ void root(RoutingContext context) { response.end(); } - @Route(path = "/search", methods = HttpMethod.GET) + @Route( + path = "/search", + methods = HttpMethod.POST, + produces = {ReactiveRoutes.APPLICATION_JSON}) void search(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "application/json", "GET"); - response.end(recordingService.search()); + JsonObject body = context.getBodyAsJson(); + try { + if (body != null && !body.isEmpty()) { + LOGGER.info(body.toString()); + response.end(recordingService.search(new Search(body))); + return; + } + } catch (Exception e) { + e.printStackTrace(); + } + response.setStatusCode(400).end("Error: invalid search body"); } - @Route(path = "/query", methods = HttpMethod.POST) + @Route( + path = "/query", + methods = HttpMethod.POST, + produces = {ReactiveRoutes.APPLICATION_JSON}) void query(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "application/json", "POST"); try { JsonObject body = context.getBodyAsJson(); if (body != null && !body.isEmpty()) { @@ -106,18 +121,22 @@ void query(RoutingContext context) { response.end("Error: invalid query body"); } - @Route(path = "/annotations", methods = HttpMethod.GET) + @Route( + path = "/annotations", + methods = HttpMethod.POST, + produces = {"text/plain"}) void annotations(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "GET"); response.end(recordingService.annotations()); } - @Route(path = "/set", methods = HttpMethod.POST) + @Route( + path = "/set", + methods = HttpMethod.POST, + produces = {"text/plain"}) @Blocking void set(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "POST"); String file = context.getBodyAsString(); String filePath = jfrDir + File.separator + file; @@ -125,11 +144,13 @@ void set(RoutingContext context) { setFile(filePath, file, response, new StringBuilder()); } - @Route(path = "/upload", methods = HttpMethod.POST) + @Route( + path = "/upload", + methods = HttpMethod.POST, + produces = {"text/plain"}) @Blocking void upload(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "POST"); final StringBuilder responseBuilder = new StringBuilder(); @@ -137,11 +158,13 @@ void upload(RoutingContext context) { response.end(responseBuilder.toString()); } - @Route(path = "/load", methods = HttpMethod.POST) + @Route( + path = "/load", + methods = HttpMethod.POST, + produces = {"text/plain"}) @Blocking void load(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "POST"); final StringBuilder responseBuilder = new StringBuilder(); @@ -151,10 +174,12 @@ void load(RoutingContext context) { setFile(filePath, lastFile, response, responseBuilder); } - @Route(path = "/list", methods = HttpMethod.GET) + @Route( + path = "/list", + methods = HttpMethod.GET, + produces = {"text/plain"}) void list(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "GET"); try { StringBuilder responseBuilder = new StringBuilder(); @@ -172,20 +197,24 @@ void list(RoutingContext context) { } } - @Route(path = "/current", methods = HttpMethod.GET) + @Route( + path = "/current", + methods = HttpMethod.GET, + produces = {"text/plain"}) void current(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "GET"); LOGGER.info("Current: " + loadedFile); response.end(loadedFile + System.lineSeparator()); } - @Route(path = "/delete_all", methods = HttpMethod.DELETE) + @Route( + path = "/delete_all", + methods = HttpMethod.DELETE, + produces = {"text/plain"}) @Blocking void deleteAll(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "DELETE"); final StringBuilder stringBuilder = new StringBuilder(); try { @@ -201,11 +230,13 @@ void deleteAll(RoutingContext context) { } } - @Route(path = "/delete", methods = HttpMethod.DELETE) + @Route( + path = "/delete", + methods = HttpMethod.DELETE, + produces = {"text/plain"}) @Blocking void delete(RoutingContext context) { HttpServerResponse response = context.response(); - setHeaders(response, "text/plain", "DELETE"); String fileName = context.getBodyAsString(); if (fileName == null || fileName.isEmpty()) { @@ -328,11 +359,4 @@ private void deleteFile(String filename) throws IOException { throw new FileNotFoundException(filename + " does not exist"); } } - - private void setHeaders(HttpServerResponse response, String contentType, String allowedMethod) { - response.putHeader("content-type", contentType); - response.putHeader("Access-Control-Allow-Methods", allowedMethod); - response.putHeader("Access-Control-Allow-Origin", "*"); - response.putHeader("Access-Control-Allow-Headers", "accept, content-type"); - } } diff --git a/src/main/java/io/cryostat/jfr/datasource/server/Query.java b/src/main/java/io/cryostat/jfr/datasource/server/Query.java index 137fd1b..3e54f9b 100644 --- a/src/main/java/io/cryostat/jfr/datasource/server/Query.java +++ b/src/main/java/io/cryostat/jfr/datasource/server/Query.java @@ -42,6 +42,7 @@ import java.time.temporal.TemporalAccessor; import io.cryostat.jfr.datasource.utils.ArgRunnable; +import io.cryostat.jfr.datasource.utils.InvalidQueryException; import io.vertx.core.json.JsonArray; import io.vertx.core.json.JsonObject; @@ -60,7 +61,7 @@ public JsonArray getTargets() { return this.query.getJsonArray("targets"); } - public void applyTargets(ArgRunnable runnable) { + public void applyTargets(ArgRunnable runnable) throws InvalidQueryException { JsonArray targets = this.query.getJsonArray("targets"); for (int i = 0; i < targets.size(); i++) { JsonObject target = targets.getJsonObject(i); diff --git a/src/main/java/io/cryostat/jfr/datasource/server/Search.java b/src/main/java/io/cryostat/jfr/datasource/server/Search.java new file mode 100644 index 0000000..e104702 --- /dev/null +++ b/src/main/java/io/cryostat/jfr/datasource/server/Search.java @@ -0,0 +1,54 @@ +/* + * Copyright The Cryostat Authors + * + * The Universal Permissive License (UPL), Version 1.0 + * + * Subject to the condition set forth below, permission is hereby granted to any + * person obtaining a copy of this software, associated documentation and/or data + * (collectively the "Software"), free of charge and under any and all copyright + * rights in the Software, and any and all patent rights owned or freely + * licensable by each licensor hereunder covering either (i) the unmodified + * Software as contributed to or provided by such licensor, or (ii) the Larger + * Works (as defined below), to deal in both + * + * (a) the Software, and + * (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if + * one is included with the Software (each a "Larger Work" to which the Software + * is contributed by such licensors), + * + * without restriction, including without limitation the rights to copy, create + * derivative works of, display, perform, and distribute the Software and make, + * use, sell, offer for sale, import, export, have made, and have sold the + * Software and the Larger Work(s), and to sublicense the foregoing rights on + * either these or other terms. + * + * This license is subject to the following condition: + * The above copyright notice and either this complete permission notice or at + * a minimum a reference to the UPL must be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +package io.cryostat.jfr.datasource.server; + +import java.util.Optional; + +import io.vertx.core.json.JsonObject; + +public class Search { + private Optional target; + + public Search(JsonObject body) { + this.target = Optional.ofNullable(body.getString("target")); + } + + public Optional getTarget() { + return this.target; + } +} diff --git a/src/main/java/io/cryostat/jfr/datasource/server/Target.java b/src/main/java/io/cryostat/jfr/datasource/server/Target.java index e66c12d..77562ff 100644 --- a/src/main/java/io/cryostat/jfr/datasource/server/Target.java +++ b/src/main/java/io/cryostat/jfr/datasource/server/Target.java @@ -37,20 +37,87 @@ */ package io.cryostat.jfr.datasource.server; +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +import io.cryostat.jfr.datasource.utils.InvalidQueryException; + public class Target { - private final String target; + private final String targetIdentifier; private final String type; + private final Map> targetOptions; + + public static final String durationTargetIdentifier = "events.custom.recordingDuration"; + public static final String startTimeTargetIdentifier = "events.custom.startTime"; + + public enum ParamOperator { // TODO: Support inequality for numeric fields. + EQUAL("="); + + private final String identifier; + + ParamOperator(String identifier) { + this.identifier = identifier; + } + + String getIdentifier() { + return this.identifier; + } + } + + private static final String PARAM_SEPARATOR = "&"; - public Target(String target, String type) { - this.target = target; + public Target(String target, String type) throws InvalidQueryException { + this.targetIdentifier = parseTargetIdentifier(target); + this.targetOptions = parseTargetOptions(target); this.type = type; } - public String getTarget() { - return this.target; + public String getTargetIdentifier() { + return this.targetIdentifier; } public String getType() { return this.type; } + + public Map> getTargetOptions() { + return this.targetOptions; + } + + private String parseTargetIdentifier(String target) { + final int idx = target.indexOf("?"); + return idx >= 0 ? target.substring(0, target.indexOf("?")) : target; + } + + private Map> parseTargetOptions(String target) + throws InvalidQueryException { + target = target.replaceAll("\\\\", ""); // Remove escapes + final Map> options = new HashMap<>(); + final int idx = target.indexOf("?"); + if (idx >= 0) { + for (String option : target.substring(idx + 1).split(PARAM_SEPARATOR)) { + int equalSignIndex = option.indexOf(ParamOperator.EQUAL.getIdentifier()); + + if (equalSignIndex < 0) { + throw new InvalidQueryException(option); + } + + String fieldName = option.substring(0, equalSignIndex); + String[] fieldValues = + (equalSignIndex + 1 >= option.length()) + ? new String[] {""} + : option.substring(equalSignIndex + 1).split(","); + + if (options.containsKey(fieldName)) { + options.get(fieldName).addAll(Arrays.asList(fieldValues)); + } else { + options.put(fieldName, new HashSet(Arrays.asList(fieldValues))); + } + } + } + return options; + } } diff --git a/src/main/java/io/cryostat/jfr/datasource/utils/InvalidQueryException.java b/src/main/java/io/cryostat/jfr/datasource/utils/InvalidQueryException.java new file mode 100644 index 0000000..f7a051f --- /dev/null +++ b/src/main/java/io/cryostat/jfr/datasource/utils/InvalidQueryException.java @@ -0,0 +1,44 @@ +/* + * Copyright The Cryostat Authors + * + * The Universal Permissive License (UPL), Version 1.0 + * + * Subject to the condition set forth below, permission is hereby granted to any + * person obtaining a copy of this software, associated documentation and/or data + * (collectively the "Software"), free of charge and under any and all copyright + * rights in the Software, and any and all patent rights owned or freely + * licensable by each licensor hereunder covering either (i) the unmodified + * Software as contributed to or provided by such licensor, or (ii) the Larger + * Works (as defined below), to deal in both + * + * (a) the Software, and + * (b) any piece of software and/or hardware listed in the lrgrwrks.txt file if + * one is included with the Software (each a "Larger Work" to which the Software + * is contributed by such licensors), + * + * without restriction, including without limitation the rights to copy, create + * derivative works of, display, perform, and distribute the Software and make, + * use, sell, offer for sale, import, export, have made, and have sold the + * Software and the Larger Work(s), and to sublicense the foregoing rights on + * either these or other terms. + * + * This license is subject to the following condition: + * The above copyright notice and either this complete permission notice or at + * a minimum a reference to the UPL must be included in all copies or + * substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +package io.cryostat.jfr.datasource.utils; + +public class InvalidQueryException extends Exception { + public InvalidQueryException(String param) { + super(String.format("Parameter \"%s\" is invalid", param)); + } +} diff --git a/src/test/java/io/cryostat/jfr/datasource/server/DatasourceTest.java b/src/test/java/io/cryostat/jfr/datasource/server/DatasourceTest.java index b262cba..7754a52 100644 --- a/src/test/java/io/cryostat/jfr/datasource/server/DatasourceTest.java +++ b/src/test/java/io/cryostat/jfr/datasource/server/DatasourceTest.java @@ -96,15 +96,12 @@ public void testGetCurrent() { .then() .statusCode(200) .body(is(System.lineSeparator())) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testPostUpload() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -136,22 +133,19 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testPostSet() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -183,45 +177,36 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "Set: jmc.cpu.jfr" + System.lineSeparator(); - given().body("jmc.cpu.jfr") + expected = "Set: recording.jfr" + System.lineSeparator(); + given().body("recording.jfr") .when() .post("/set") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/current") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testPostLoad() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -253,9 +238,9 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -263,26 +248,20 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/current") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testGetList() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -314,17 +293,14 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.pathOf(Mockito.anyString())) .thenAnswer( @@ -372,41 +348,31 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { return Files.isRegularFile(target); } }); - ; - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/list") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "Set: jmc.cpu.jfr" + System.lineSeparator(); - given().body("jmc.cpu.jfr") + expected = "Set: recording.jfr" + System.lineSeparator(); + given().body("recording.jfr") .when() .post("/set") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "**jmc.cpu.jfr**" + System.lineSeparator(); + expected = "**recording.jfr**" + System.lineSeparator(); given().when() .get("/list") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test @@ -464,15 +430,12 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testGetCurrentAfterSettingAndAfterDeleting() throws IOException { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -505,9 +468,9 @@ public Path answer(InvocationOnMock invocation) throws IOException { }); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -515,21 +478,15 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/current") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.isDirectory(Mockito.any(Path.class))) .thenAnswer( @@ -545,7 +502,7 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { Path.of( System.getProperty("java.io.tmpdir"), "jfr-file-uploads", - "jmc.cpu.jfr")); + "recording.jfr")); Mockito.when(fsService.deleteIfExists(Mockito.any(Path.class))) .thenAnswer( @@ -557,31 +514,25 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { } }); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(204) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); given().when() .get("/current") .then() .statusCode(200) .body(is(System.lineSeparator())) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test - public void testGetSearch() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + public void testPostSearchEvents() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -606,9 +557,9 @@ public Path answer(InvocationOnMock invocation) throws IOException { }); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -616,28 +567,84 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File outputFile = new File("src/test/resources/search.output.txt"); + File inputFile = new File("src/test/resources/searches/search.events.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = new File("src/test/resources/searches/search.events.output.txt"); assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); - given().when() - .get("/search") + + given().body(input) + .when() + .post("/search") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); + } + + @Test + public void testPostSearchTarget() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + Mockito.when(fsService.pathOf(Mockito.anyString())) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + String uploadedFileName = invocation.getArgument(0); + return Path.of(uploadedFileName); + } + }); + Mockito.when(fsService.exists(Mockito.any(Path.class))).thenReturn(false); + Mockito.when(fsService.move(Mockito.any(Path.class), Mockito.any(Path.class))) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + Path source = invocation.getArgument(0); + Path dest = invocation.getArgument(1); + return Files.move(source, dest); + } + }); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/searches/search.target.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = new File("src/test/resources/searches/search.target.output.txt"); + assertTrue(outputFile.exists()); + expected = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("/search") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("application/json")); } @Test public void testPostQueryTimeseries() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -662,9 +669,9 @@ public Path answer(InvocationOnMock invocation) throws IOException { }); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -672,34 +679,84 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File inputFile = new File("src/test/resources/query.timeseries.input.txt"); + File inputFile = new File("src/test/resources/queries/query.timeseries.input.txt"); assertTrue(inputFile.exists()); String input = new String(Files.readAllBytes(inputFile.toPath())); - File outputFile = new File("src/test/resources/query.timeseries.output.txt"); + File outputFile = new File("src/test/resources/queries/query.timeseries.output.txt"); + assertTrue(outputFile.exists()); + expected = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("/query") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryTimeseriesWithParams() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + Mockito.when(fsService.pathOf(Mockito.anyString())) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + String uploadedFileName = invocation.getArgument(0); + return Path.of(uploadedFileName); + } + }); + Mockito.when(fsService.exists(Mockito.any(Path.class))).thenReturn(false); + Mockito.when(fsService.move(Mockito.any(Path.class), Mockito.any(Path.class))) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + Path source = invocation.getArgument(0); + Path dest = invocation.getArgument(1); + return Files.move(source, dest); + } + }); + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/queries/query.timeseries.params.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = new File("src/test/resources/queries/query.timeseries.params.output.txt"); assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); + given().body(input) .when() .post("/query") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); } @Test public void testPostQueryTable() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -724,9 +781,9 @@ public Path answer(InvocationOnMock invocation) throws IOException { }); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -734,16 +791,13 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File inputFile = new File("src/test/resources/query.table.input.txt"); + File inputFile = new File("src/test/resources/queries/query.table.input.txt"); assertTrue(inputFile.exists()); String input = new String(Files.readAllBytes(inputFile.toPath())); - File outputFile = new File("src/test/resources/query.table.output.txt"); + File outputFile = new File("src/test/resources/queries/query.table.output.txt"); assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); @@ -753,15 +807,127 @@ public Path answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryRecordingDuration() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + Mockito.when(fsService.pathOf(Mockito.anyString())) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + String uploadedFileName = invocation.getArgument(0); + return Path.of(uploadedFileName); + } + }); + Mockito.when(fsService.exists(Mockito.any(Path.class))).thenReturn(false); + Mockito.when(fsService.move(Mockito.any(Path.class), Mockito.any(Path.class))) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + Path source = invocation.getArgument(0); + Path dest = invocation.getArgument(1); + return Files.move(source, dest); + } + }); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/queries/query.recording_duration.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = + new File("src/test/resources/queries/query.recording_duration.output.txt"); + assertTrue(inputFile.exists()); + String output = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("query") + .then() + .statusCode(200) + .body(is(output)) + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryRecordingStartTime() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + Mockito.when(fsService.pathOf(Mockito.anyString())) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + String uploadedFileName = invocation.getArgument(0); + return Path.of(uploadedFileName); + } + }); + Mockito.when(fsService.exists(Mockito.any(Path.class))).thenReturn(false); + Mockito.when(fsService.move(Mockito.any(Path.class), Mockito.any(Path.class))) + .thenAnswer( + new Answer() { + @Override + public Path answer(InvocationOnMock invocation) throws IOException { + Path source = invocation.getArgument(0); + Path dest = invocation.getArgument(1); + return Files.move(source, dest); + } + }); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = + new File("src/test/resources/queries/query.recording_start_time.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = + new File("src/test/resources/queries/query.recording_start_time.output.txt"); + assertTrue(inputFile.exists()); + String output = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("query") + .then() + .statusCode(200) + .body(is(output)) + .header("content-type", is("application/json")); } @Test public void testDeleteFileExist() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -793,17 +959,14 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.pathOf(Mockito.anyString())) .thenAnswer( @@ -845,16 +1008,13 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { } }); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(204) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test @@ -907,21 +1067,18 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { return Files.deleteIfExists(target); } }); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(404) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testDeleteFileIOFail() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -953,17 +1110,14 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.pathOf(Mockito.anyString())) .thenAnswer( @@ -1007,21 +1161,18 @@ public Path answer(InvocationOnMock invocation) throws IOException { Mockito.when(fsService.deleteIfExists(Mockito.any(Path.class))) .thenThrow(new IOException()); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(500) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testDeleteAllFiles() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -1053,17 +1204,14 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.pathOf(Mockito.anyString())) .thenAnswer( @@ -1124,30 +1272,25 @@ public Object answer(InvocationOnMock invocation) throws IOException { .when(fsService) .delete(Mockito.any(Path.class)); - expected = "Deleted: jmc.cpu.jfr" + System.lineSeparator(); + expected = "Deleted: recording.jfr" + System.lineSeparator(); given().when() .delete("/delete_all") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); + given().when() .delete("/delete_all") .then() .statusCode(200) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testDeleteAllIOFail() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); Mockito.when(fsService.pathOf(Mockito.anyString())) @@ -1179,17 +1322,14 @@ public Path answer(InvocationOnMock invocation) throws IOException { } }); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); Mockito.when(fsService.pathOf(Mockito.anyString())) .thenReturn(Path.of(System.getProperty("java.io.tmpdir"), "jfr-file-uploads")); @@ -1238,26 +1378,23 @@ public Boolean answer(InvocationOnMock invocation) throws IOException { .then() .statusCode(500) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testNotAllowedMethods() { given().when().post("/").then().statusCode(405); - given().when().post("/search").then().statusCode(405); + given().when().get("/search").then().statusCode(405); given().body("{targets: [], range: { from: '', to: ''}}") .header("content-type", "application/json") .when() .get("/query") .then() .statusCode(405); - given().when().post("/annotations").then().statusCode(405); - given().body("jmc.cpu.jfr").when().get("/set").then().statusCode(405); + given().when().get("/annotations").then().statusCode(405); + given().body("recording.jfr").when().get("/set").then().statusCode(405); - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); given().multiPart(jfrFile).when().get("/upload").then().statusCode(405); @@ -1265,6 +1402,6 @@ public void testNotAllowedMethods() { given().when().post("/list").then().statusCode(405); given().when().post("/current").then().statusCode(405); given().when().post("/delete_all").then().statusCode(405); - given().body("jmc.cpu.jfr").when().post("/delete").then().statusCode(405); + given().body("recording.jfr").when().post("/delete").then().statusCode(405); } } diff --git a/src/test/java/io/cryostat/jfr/datasource/server/NativeDatasourceIT.java b/src/test/java/io/cryostat/jfr/datasource/server/NativeDatasourceIT.java index cd55cf2..cd33b70 100644 --- a/src/test/java/io/cryostat/jfr/datasource/server/NativeDatasourceIT.java +++ b/src/test/java/io/cryostat/jfr/datasource/server/NativeDatasourceIT.java @@ -42,6 +42,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.File; +import java.io.IOException; import java.nio.file.Files; import java.util.Collections; @@ -55,7 +56,6 @@ @TestMethodOrder(OrderAnnotation.class) @NativeImageTest public class NativeDatasourceIT { - @AfterEach public void afterEachDatasourceTest() { File directory = new File(System.getProperty("java.io.tmpdir"), "jfr-file-uploads"); @@ -83,69 +83,65 @@ public void testGetCurrent() { .then() .statusCode(200) .body(is(System.lineSeparator())) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testPostUpload() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testPostSet() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "Set: jmc.cpu.jfr" + System.lineSeparator(); - given().body("jmc.cpu.jfr") + expected = "Set: recording.jfr" + System.lineSeparator(); + given().body("recording.jfr") .when() .post("/set") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); + + expected = "recording.jfr" + System.lineSeparator(); + given().when() + .get("/current") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); } @Test public void testPostLoad() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -153,39 +149,55 @@ public void testPostLoad() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); + + expected = "recording.jfr" + System.lineSeparator(); + given().when() + .get("/current") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); } @Test public void testGetList() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/list") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); + + expected = "Set: recording.jfr" + System.lineSeparator(); + given().body("recording.jfr") + .when() + .post("/set") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + expected = "**recording.jfr**" + System.lineSeparator(); + given().when() + .get("/list") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); } @Test @@ -196,21 +208,18 @@ public void testGetListEmpty() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test - public void testGetCurrentAfterSettingAndAfterDeleting() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + public void testGetCurrentAfterSettingAndAfterDeleting() throws IOException { + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -218,53 +227,41 @@ public void testGetCurrentAfterSettingAndAfterDeleting() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "jmc.cpu.jfr" + System.lineSeparator(); + expected = "recording.jfr" + System.lineSeparator(); given().when() .get("/current") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(204) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); given().when() .get("/current") .then() .statusCode(200) .body(is(System.lineSeparator())) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test - public void testGetSearch() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + public void testPostSearchEvents() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -272,35 +269,69 @@ public void testGetSearch() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File outputFile = new File("src/test/resources/search.output.txt"); + File inputFile = new File("src/test/resources/searches/search.events.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = new File("src/test/resources/searches/search.events.output.txt"); assertTrue(outputFile.exists()); + expected = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("/search") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("application/json")); + } + @Test + public void testPostSearchTarget() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/searches/search.target.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = new File("src/test/resources/searches/search.target.output.txt"); + assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); - given().when() - .get("/search") + + given().body(input) + .when() + .post("/search") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("GET")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); } @Test public void testPostQueryTimeseries() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -308,40 +339,69 @@ public void testPostQueryTimeseries() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File inputFile = new File("src/test/resources/query.timeseries.input.txt"); + File inputFile = new File("src/test/resources/queries/query.timeseries.input.txt"); assertTrue(inputFile.exists()); String input = new String(Files.readAllBytes(inputFile.toPath())); - File outputFile = new File("src/test/resources/query.timeseries.output.txt"); + File outputFile = new File("src/test/resources/queries/query.timeseries.output.txt"); + assertTrue(outputFile.exists()); + expected = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("/query") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryTimeseriesWithParams() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/queries/query.timeseries.params.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + File outputFile = new File("src/test/resources/queries/query.timeseries.params.output.txt"); assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); + given().body(input) .when() .post("/query") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); } @Test public void testPostQueryTable() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); String expected = - "Uploaded: jmc.cpu.jfr" + "Uploaded: recording.jfr" + System.lineSeparator() - + "Set: jmc.cpu.jfr" + + "Set: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() @@ -349,16 +409,13 @@ public void testPostQueryTable() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - File inputFile = new File("src/test/resources/query.table.input.txt"); + File inputFile = new File("src/test/resources/queries/query.table.input.txt"); assertTrue(inputFile.exists()); String input = new String(Files.readAllBytes(inputFile.toPath())); - File outputFile = new File("src/test/resources/query.table.output.txt"); + File outputFile = new File("src/test/resources/queries/query.table.output.txt"); assertTrue(outputFile.exists()); expected = new String(Files.readAllBytes(outputFile.toPath())); @@ -368,107 +425,159 @@ public void testPostQueryTable() throws Exception { .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("application/json")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryRecordingDuration() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = new File("src/test/resources/queries/query.recording_duration.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = + new File("src/test/resources/queries/query.recording_duration.output.txt"); + assertTrue(inputFile.exists()); + String output = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("query") + .then() + .statusCode(200) + .body(is(output)) + .header("content-type", is("application/json")); + } + + @Test + public void testPostQueryRecordingStartTime() throws Exception { + File jfrFile = new File("src/test/resources/recording.jfr"); + assertTrue(jfrFile.exists()); + + String expected = + "Uploaded: recording.jfr" + + System.lineSeparator() + + "Set: recording.jfr" + + System.lineSeparator(); + given().multiPart(jfrFile) + .when() + .post("/load") + .then() + .statusCode(200) + .body(is(expected)) + .header("content-type", is("text/plain")); + + File inputFile = + new File("src/test/resources/queries/query.recording_start_time.input.txt"); + assertTrue(inputFile.exists()); + String input = new String(Files.readAllBytes(inputFile.toPath())); + + File outputFile = + new File("src/test/resources/queries/query.recording_start_time.output.txt"); + assertTrue(inputFile.exists()); + String output = new String(Files.readAllBytes(outputFile.toPath())); + + given().body(input) + .when() + .post("query") + .then() + .statusCode(200) + .body(is(output)) + .header("content-type", is("application/json")); } @Test public void testDeleteFileExist() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(204) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testDeleteFileNotExist() throws Exception { - given().body("jmc.cpu.jfr") + given().body("recording.jfr") .when() .delete("/delete") .then() .statusCode(404) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testDeleteAllFiles() throws Exception { - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); - String expected = "Uploaded: jmc.cpu.jfr" + System.lineSeparator(); + String expected = "Uploaded: recording.jfr" + System.lineSeparator(); given().multiPart(jfrFile) .when() .post("/upload") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("POST")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); - expected = "Deleted: jmc.cpu.jfr" + System.lineSeparator(); + expected = "Deleted: recording.jfr" + System.lineSeparator(); given().when() .delete("/delete_all") .then() .statusCode(200) .body(is(expected)) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); given().when() .delete("/delete_all") .then() .statusCode(200) .body(is("")) - .header("content-type", is("text/plain")) - .header("Access-Control-Allow-Methods", is("DELETE")) - .header("Access-Control-Allow-Origin", is("*")) - .header("Access-Control-Allow-Headers", is("accept, content-type")); + .header("content-type", is("text/plain")); } @Test public void testNotAllowedMethods() { given().when().post("/").then().statusCode(405); - given().when().post("/search").then().statusCode(405); + given().when().get("/search").then().statusCode(405); given().body("{targets: [], range: { from: '', to: ''}}") .header("content-type", "application/json") .when() .get("/query") .then() .statusCode(405); - given().when().post("/annotations").then().statusCode(405); - given().body("jmc.cpu.jfr").when().get("/set").then().statusCode(405); + given().when().get("/annotations").then().statusCode(405); + given().body("recording.jfr").when().get("/set").then().statusCode(405); - File jfrFile = new File("src/test/resources/jmc.cpu.jfr"); + File jfrFile = new File("src/test/resources/recording.jfr"); assertTrue(jfrFile.exists()); given().multiPart(jfrFile).when().get("/upload").then().statusCode(405); @@ -476,6 +585,6 @@ public void testNotAllowedMethods() { given().when().post("/list").then().statusCode(405); given().when().post("/current").then().statusCode(405); given().when().post("/delete_all").then().statusCode(405); - given().body("jmc.cpu.jfr").when().post("/delete").then().statusCode(405); + given().body("recording.jfr").when().post("/delete").then().statusCode(405); } } diff --git a/src/test/resources/jmc.cpu.jfr b/src/test/resources/jmc.cpu.jfr deleted file mode 100644 index e960c53..0000000 Binary files a/src/test/resources/jmc.cpu.jfr and /dev/null differ diff --git a/src/test/resources/queries/query.recording_duration.input.txt b/src/test/resources/queries/query.recording_duration.input.txt new file mode 100644 index 0000000..5b40263 --- /dev/null +++ b/src/test/resources/queries/query.recording_duration.input.txt @@ -0,0 +1 @@ +{"app":"dashboard","requestId":"Q237","timezone":"browser","panelId":40,"dashboardId":1,"range":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z","raw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"}},"timeInfo":"","interval":"1s","intervalMs":1000,"targets":[{"target":"events.custom.recordingDuration","refId":"A","type":"table"}],"maxDataPoints":910,"scopedVars":{"__interval":{"text":"1s","value":"1s"},"__interval_ms":{"text":"1000","value":1000}},"startTime":1663801226046,"rangeRaw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/queries/query.recording_duration.output.txt b/src/test/resources/queries/query.recording_duration.output.txt new file mode 100644 index 0000000..b33cb19 --- /dev/null +++ b/src/test/resources/queries/query.recording_duration.output.txt @@ -0,0 +1 @@ +[{"rows":[[619867]],"columns":[{"text":"Duration","type":"number"}]}] \ No newline at end of file diff --git a/src/test/resources/queries/query.recording_start_time.input.txt b/src/test/resources/queries/query.recording_start_time.input.txt new file mode 100644 index 0000000..4487a43 --- /dev/null +++ b/src/test/resources/queries/query.recording_start_time.input.txt @@ -0,0 +1 @@ +{"app":"dashboard","requestId":"Q237","timezone":"browser","panelId":40,"dashboardId":1,"range":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z","raw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"}},"timeInfo":"","interval":"1s","intervalMs":1000,"targets":[{"target":"events.custom.startTime","refId":"A","type":"table"}],"maxDataPoints":910,"scopedVars":{"__interval":{"text":"1s","value":"1s"},"__interval_ms":{"text":"1000","value":1000}},"startTime":1663801226046,"rangeRaw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/queries/query.recording_start_time.output.txt b/src/test/resources/queries/query.recording_start_time.output.txt new file mode 100644 index 0000000..be22f4d --- /dev/null +++ b/src/test/resources/queries/query.recording_start_time.output.txt @@ -0,0 +1 @@ +[{"rows":[[1663785541195]],"columns":[{"text":"Start Time","type":"number"}]}] \ No newline at end of file diff --git a/src/test/resources/queries/query.table.input.txt b/src/test/resources/queries/query.table.input.txt new file mode 100644 index 0000000..708c006 --- /dev/null +++ b/src/test/resources/queries/query.table.input.txt @@ -0,0 +1 @@ +{"app":"dashboard","requestId":"Q237","timezone":"browser","panelId":40,"dashboardId":1,"range":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z","raw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"}},"timeInfo":"","interval":"1s","intervalMs":1000,"targets":[{"target":"jdk.ObjectAllocationSample.objectClass","refId":"A","type":"table"}],"maxDataPoints":910,"scopedVars":{"__interval":{"text":"1s","value":"1s"},"__interval_ms":{"text":"1000","value":1000}},"startTime":1663801226046,"rangeRaw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/queries/query.table.output.txt b/src/test/resources/queries/query.table.output.txt new file mode 100644 index 0000000..0e38a65 --- /dev/null +++ b/src/test/resources/queries/query.table.output.txt @@ -0,0 +1 @@ +[{"type":"table","rows":[[1663785562002,"java.util.HashMap$KeyIterator"],[1663785562052,"java.lang.management.MemoryUsage[]"],[1663785562053,"java.util.ArrayList"],[1663785562053,"java.util.ArrayList"],[1663785562053,"jdk.jfr.events.ContainerConfigurationEvent"],[1663785562058,"java.util.HashMap$Node[]"],[1663785562064,"java.util.Collections$UnmodifiableCollection$1"],[1663785562070,"java.lang.String"],[1663785562070,"java.io.ObjectStreamClass$WeakClassKey"],[1663785562210,"java.util.WeakHashMap$EntryIterator"],[1663785562352,"java.util.TreeMap$Entry"],[1663785562352,"java.util.Collections$UnmodifiableCollection$1"],[1663785562352,"java.lang.Object[]"],[1663785562355,"java.lang.Object[]"],[1663785571092,"char[]"],[1663785571093,"java.lang.Object[]"],[1663785571093,"byte[]"],[1663785571094,"jdk.internal.org.objectweb.asm.SymbolTable$Entry"],[1663785571095,"byte[]"],[1663785601048,"byte[]"],[1663785601049,"char[]"],[1663785601049,"java.nio.HeapByteBuffer"],[1663785601049,"java.util.ArrayList"],[1663785631003,"byte[]"],[1663785631003,"java.util.ArrayList$SubList"],[1663785631003,"byte[]"],[1663785631004,"char[]"],[1663785660957,"byte[]"],[1663785660957,"java.lang.Object"],[1663785660957,"char[]"],[1663785660957,"java.lang.Object[]"],[1663785690906,"byte[]"],[1663785690906,"jdk.internal.ref.CleanerImpl$PhantomCleanableRef"],[1663785690906,"char[]"],[1663785690906,"jdk.internal.ref.CleanerImpl$PhantomCleanableRef"],[1663785690906,"java.lang.Object[]"],[1663785720859,"byte[]"],[1663785720859,"java.lang.Object[]"],[1663785720859,"byte[]"],[1663785720860,"char[]"],[1663785750821,"sun.nio.cs.UTF_8$Decoder"],[1663785750821,"byte[]"],[1663785750822,"char[]"],[1663785780774,"sun.nio.cs.UTF_8$Decoder"],[1663785780774,"char[]"],[1663785780774,"byte[]"],[1663785810726,"byte[]"],[1663785810726,"byte[]"],[1663785810726,"char[]"],[1663785810726,"java.nio.HeapByteBuffer"],[1663785810727,"java.util.ArrayList"],[1663785840687,"byte[]"],[1663785840687,"java.util.ArrayList"],[1663785840687,"java.nio.HeapByteBuffer"],[1663785840688,"byte[]"],[1663785870638,"char[]"],[1663785870638,"jdk.internal.ref.CleanerImpl$PhantomCleanableRef"],[1663785870639,"char[]"],[1663785870639,"java.util.ArrayList$SubList"],[1663785900590,"byte[]"],[1663785900591,"java.nio.HeapByteBuffer"],[1663785900591,"char[]"],[1663785900591,"java.nio.HeapByteBuffer"],[1663785900591,"java.util.ArrayList"],[1663785930550,"byte[]"],[1663785930550,"java.util.ArrayList$SubList"],[1663785930550,"byte[]"],[1663785930550,"char[]"],[1663785960506,"sun.nio.cs.UTF_8$Decoder"],[1663785960506,"char[]"],[1663785960507,"byte[]"],[1663785990458,"byte[]"],[1663785990458,"byte[]"],[1663785990459,"char[]"],[1663785990459,"java.nio.HeapByteBuffer"],[1663785990460,"java.util.ArrayList"],[1663786020419,"byte[]"],[1663786020419,"java.util.ArrayList$SubList"],[1663786020419,"byte[]"],[1663786020420,"char[]"],[1663786050378,"sun.nio.cs.UTF_8$Decoder"],[1663786050378,"char[]"],[1663786050378,"byte[]"],[1663786080331,"byte[]"],[1663786080331,"byte[]"],[1663786080331,"byte[]"],[1663786080332,"java.nio.HeapCharBuffer"],[1663786110283,"byte[]"],[1663786110283,"java.util.HashMap$Node[]"],[1663786110283,"char[]"],[1663786110283,"java.util.ArrayList$SubList"],[1663786140238,"byte[]"],[1663786140238,"sun.nio.cs.UTF_8$Decoder"],[1663786140239,"char[]"],[1663786140239,"int[]"],[1663786161060,"java.util.ArrayList"],[1663786161060,"java.util.LinkedHashMap"],[1663786161060,"java.util.HashMap$Node[]"],[1663786161060,"java.util.HashMap"],[1663786161060,"java.util.HashSet"],[1663786161060,"java.util.LinkedHashMap$Entry"],[1663786161060,"java.lang.String"],[1663786161060,"byte[]"],[1663786161060,"java.lang.String"],[1663786161060,"java.util.HashMap$Node"],[1663786161061,"java.util.LinkedHashMap$LinkedEntryIterator"],[1663786161061,"java.lang.String"],[1663786161061,"java.util.ArrayList$Itr"]],"columns":[{"text":"Time","type":"time"},{"text":"objectClass","type":"string"}]}] \ No newline at end of file diff --git a/src/test/resources/queries/query.timeseries.input.txt b/src/test/resources/queries/query.timeseries.input.txt new file mode 100644 index 0000000..4ca2b83 --- /dev/null +++ b/src/test/resources/queries/query.timeseries.input.txt @@ -0,0 +1 @@ +{"app":"dashboard","requestId":"Q237","timezone":"browser","panelId":40,"dashboardId":1,"range":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z","raw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"}},"timeInfo":"","interval":"1s","intervalMs":1000,"targets":[{"target":"jdk.ObjectAllocationSample.weight","refId":"A","type":"timeserie"}],"maxDataPoints":910,"scopedVars":{"__interval":{"text":"1s","value":"1s"},"__interval_ms":{"text":"1000","value":1000}},"startTime":1663801226046,"rangeRaw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/queries/query.timeseries.output.txt b/src/test/resources/queries/query.timeseries.output.txt new file mode 100644 index 0000000..f7a1753 --- /dev/null +++ b/src/test/resources/queries/query.timeseries.output.txt @@ -0,0 +1 @@ +[{"target":"jdk.ObjectAllocationSample.weight","datapoints":[[2020664.0,1663785562002],[23088.0,1663785562052],[40552.0,1663785562053],[24864.0,1663785562053],[391208.0,1663785562053],[517560.0,1663785562058],[518112.0,1663785562064],[2272.0,1663785562070],[528896.0,1663785562070],[1432.0,1663785562210],[517616.0,1663785562352],[44176.0,1663785562352],[1456.0,1663785562352],[517600.0,1663785562355],[101200.0,1663785571092],[100384.0,1663785571093],[83240.0,1663785571093],[92152.0,1663785571094],[59320.0,1663785571095],[174488.0,1663785601048],[65616.0,1663785601049],[67528.0,1663785601049],[59376.0,1663785601049],[67560.0,1663785631003],[75744.0,1663785631003],[108384.0,1663785631003],[66856.0,1663785631004],[116720.0,1663785660957],[75784.0,1663785660957],[73824.0,1663785660957],[59352.0,1663785660957],[100376.0,1663785690906],[75760.0,1663785690906],[73824.0,1663785690906],[59376.0,1663785690906],[59344.0,1663785690906],[67584.0,1663785720859],[75752.0,1663785720859],[108512.0,1663785720859],[66856.0,1663785720860],[191512.0,1663785750821],[78928.0,1663785750821],[66856.0,1663785750822],[191472.0,1663785780774],[73824.0,1663785780774],[59376.0,1663785780774],[100400.0,1663785810726],[75712.0,1663785810726],[65616.0,1663785810726],[67528.0,1663785810726],[59392.0,1663785810727],[67568.0,1663785840687],[75760.0,1663785840687],[108536.0,1663785840687],[58656.0,1663785840688],[132176.0,1663785870638],[67528.0,1663785870638],[73824.0,1663785870639],[59360.0,1663785870639],[100376.0,1663785900590],[75760.0,1663785900591],[73824.0,1663785900591],[59376.0,1663785900591],[59376.0,1663785900591],[67560.0,1663785930550],[75744.0,1663785930550],[108384.0,1663785930550],[66856.0,1663785930550],[191512.0,1663785960506],[73824.0,1663785960506],[59376.0,1663785960507],[100424.0,1663785990458],[75648.0,1663785990458],[65616.0,1663785990459],[67528.0,1663785990459],[59376.0,1663785990460],[67560.0,1663786020419],[75744.0,1663786020419],[108384.0,1663786020419],[66856.0,1663786020420],[191512.0,1663786050378],[73824.0,1663786050378],[31392.0,1663786050378],[100336.0,1663786080331],[75608.0,1663786080331],[83608.0,1663786080331],[108552.0,1663786080332],[124992.0,1663786110283],[75720.0,1663786110283],[73824.0,1663786110283],[59392.0,1663786110283],[100368.0,1663786140238],[75752.0,1663786140238],[115704.0,1663786140239],[75728.0,1663786140239],[752.0,1663786161060],[36704.0,1663786161060],[36760.0,1663786161060],[36736.0,1663786161060],[36752.0,1663786161060],[36712.0,1663786161060],[36744.0,1663786161060],[36728.0,1663786161060],[36728.0,1663786161060],[36728.0,1663786161060],[36720.0,1663786161061],[704.0,1663786161061],[36720.0,1663786161061]],"meta":{}}] \ No newline at end of file diff --git a/src/test/resources/queries/query.timeseries.params.input.txt b/src/test/resources/queries/query.timeseries.params.input.txt new file mode 100644 index 0000000..a48abf2 --- /dev/null +++ b/src/test/resources/queries/query.timeseries.params.input.txt @@ -0,0 +1 @@ +{"app":"dashboard","requestId":"Q237","timezone":"browser","panelId":40,"dashboardId":1,"range":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z","raw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"}},"timeInfo":"","interval":"1s","intervalMs":1000,"targets":[{"target":"jdk.ObjectAllocationSample.weight?objectClass=java.util.ArrayList,java.lang.String","refId":"A","type":"timeserie"}],"maxDataPoints":910,"scopedVars":{"__interval":{"text":"1s","value":"1s"},"__interval_ms":{"text":"1000","value":1000}},"startTime":1663801226046,"rangeRaw":{"from":"2022-09-21T18:37:59.240Z","to":"2022-09-21T18:50:07.014Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/queries/query.timeseries.params.output.txt b/src/test/resources/queries/query.timeseries.params.output.txt new file mode 100644 index 0000000..ecac3ab --- /dev/null +++ b/src/test/resources/queries/query.timeseries.params.output.txt @@ -0,0 +1 @@ +[{"target":"java.lang.String","datapoints":[[2272.0,1663785562070],[36744.0,1663786161060],[36728.0,1663786161060],[704.0,1663786161061]],"meta":{"paramField":"objectClass"}},{"target":"java.util.ArrayList","datapoints":[[40552.0,1663785562053],[24864.0,1663785562053],[59376.0,1663785601049],[59392.0,1663785810727],[75760.0,1663785840687],[59376.0,1663785900591],[59376.0,1663785990460],[752.0,1663786161060]],"meta":{"paramField":"objectClass"}}] \ No newline at end of file diff --git a/src/test/resources/query.table.input.txt b/src/test/resources/query.table.input.txt deleted file mode 100644 index c8d3c93..0000000 --- a/src/test/resources/query.table.input.txt +++ /dev/null @@ -1 +0,0 @@ -{"requestId":"Q107","timezone":"","panelId":2,"dashboardId":null,"range":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z","raw":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z"}},"interval":"100ms","intervalMs":100,"targets":[{"target":"jdk.CPULoad.machineTotal","refId":"A","type":"table"}],"maxDataPoints":958,"scopedVars":{"__interval":{"text":"100ms","value":"100ms"},"__interval_ms":{"text":"100","value":100}},"startTime":1572624866492,"rangeRaw":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/query.table.output.txt b/src/test/resources/query.table.output.txt deleted file mode 100644 index ce8867d..0000000 --- a/src/test/resources/query.table.output.txt +++ /dev/null @@ -1 +0,0 @@ -[{"columns":[{"text":"Time","type":"time"},{"text":"machineTotal","type":"number"}],"rows":[[1572624474529,0.0506371334195137],[1572624475641,0.05256570875644684],[1572624476753,0.04619225859642029],[1572624477866,0.04500000178813934],[1572624478978,0.04005006328225136],[1572624480090,0.03764115273952484],[1572624481202,0.048689138144254684],[1572624482315,0.041301626712083817],[1572624483427,0.042500000447034836],[1572624484539,0.04005006328225136],[1572624485651,0.051249999552965164],[1572624486763,0.05012531206011772],[1572624487875,0.04505632072687149],[1572624488988,0.056179776787757874],[1572624490100,0.038847118616104126],[1572624491212,0.04374999925494194],[1572624492325,0.041301626712083817],[1572624493437,0.039950061589479446],[1572624494550,0.04619225859642029],[1572624495662,0.04005006328225136],[1572624496774,0.04500000178813934],[1572624497886,0.042553190141916275],[1572624498999,0.041301626712083817],[1572624500111,0.04749999940395355],[1572624501224,0.041301626712083817],[1572624502336,0.042553190141916275],[1572624503448,0.04625000059604645],[1572624504561,0.05867665261030197],[1572624505673,0.07133917510509491],[1572624506785,0.06508135050535202],[1572624507897,0.042500000447034836],[1572624509010,0.09000000357627869],[1572624510122,0.058897241950035095],[1572624511234,0.08635794371366501],[1572624512346,0.08260325342416763],[1572624513458,0.11013767123222351],[1572624514570,0.10249999910593033],[1572624515682,0.12406015396118164],[1572624516794,0.08500000089406967],[1572624517906,0.06265664100646973],[1572624519018,0.07393483817577362],[1572624520130,0.07249999791383743],[1572624521242,0.060150377452373505],[1572624522355,0.08406524360179901],[1572624523467,0.06866417080163956],[1572624524579,0.05757196620106697],[1572624525691,0.04505632072687149],[1572624526803,0.08260325342416763],[1572624527916,0.0827067643404007],[1572624529028,0.08375000208616257],[1572624530140,0.0538172721862793],[1572624531252,0.04767879471182823],[1572624532364,0.08375000208616257],[1572624533476,0.04887218028306961],[1572624534589,0.07374999672174454],[1572624535701,0.07788944989442825],[1572624536813,0.05012531206011772],[1572624537925,0.04755944758653641],[1572624539037,0.1076345443725586],[1572624540149,0.20150187611579895]],"type":"table"}] \ No newline at end of file diff --git a/src/test/resources/query.timeseries.input.txt b/src/test/resources/query.timeseries.input.txt deleted file mode 100644 index 5a89abc..0000000 --- a/src/test/resources/query.timeseries.input.txt +++ /dev/null @@ -1 +0,0 @@ -{"requestId":"Q107","timezone":"","panelId":2,"dashboardId":null,"range":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z","raw":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z"}},"interval":"100ms","intervalMs":100,"targets":[{"target":"jdk.CPULoad.machineTotal","refId":"A","type":"timeserie"}],"maxDataPoints":958,"scopedVars":{"__interval":{"text":"100ms","value":"100ms"},"__interval_ms":{"text":"100","value":100}},"startTime":1572624866492,"rangeRaw":{"from":"2019-11-01T16:07:41.503Z","to":"2019-11-01T16:09:15.171Z"},"adhocFilters":[]} \ No newline at end of file diff --git a/src/test/resources/query.timeseries.output.txt b/src/test/resources/query.timeseries.output.txt deleted file mode 100644 index 8a0e9cf..0000000 --- a/src/test/resources/query.timeseries.output.txt +++ /dev/null @@ -1 +0,0 @@ -[{"target":"jdk.CPULoad.machineTotal","datapoints":[[0.0506371334195137,1572624474529],[0.05256570875644684,1572624475641],[0.04619225859642029,1572624476753],[0.04500000178813934,1572624477866],[0.04005006328225136,1572624478978],[0.03764115273952484,1572624480090],[0.048689138144254684,1572624481202],[0.041301626712083817,1572624482315],[0.042500000447034836,1572624483427],[0.04005006328225136,1572624484539],[0.051249999552965164,1572624485651],[0.05012531206011772,1572624486763],[0.04505632072687149,1572624487875],[0.056179776787757874,1572624488988],[0.038847118616104126,1572624490100],[0.04374999925494194,1572624491212],[0.041301626712083817,1572624492325],[0.039950061589479446,1572624493437],[0.04619225859642029,1572624494550],[0.04005006328225136,1572624495662],[0.04500000178813934,1572624496774],[0.042553190141916275,1572624497886],[0.041301626712083817,1572624498999],[0.04749999940395355,1572624500111],[0.041301626712083817,1572624501224],[0.042553190141916275,1572624502336],[0.04625000059604645,1572624503448],[0.05867665261030197,1572624504561],[0.07133917510509491,1572624505673],[0.06508135050535202,1572624506785],[0.042500000447034836,1572624507897],[0.09000000357627869,1572624509010],[0.058897241950035095,1572624510122],[0.08635794371366501,1572624511234],[0.08260325342416763,1572624512346],[0.11013767123222351,1572624513458],[0.10249999910593033,1572624514570],[0.12406015396118164,1572624515682],[0.08500000089406967,1572624516794],[0.06265664100646973,1572624517906],[0.07393483817577362,1572624519018],[0.07249999791383743,1572624520130],[0.060150377452373505,1572624521242],[0.08406524360179901,1572624522355],[0.06866417080163956,1572624523467],[0.05757196620106697,1572624524579],[0.04505632072687149,1572624525691],[0.08260325342416763,1572624526803],[0.0827067643404007,1572624527916],[0.08375000208616257,1572624529028],[0.0538172721862793,1572624530140],[0.04767879471182823,1572624531252],[0.08375000208616257,1572624532364],[0.04887218028306961,1572624533476],[0.07374999672174454,1572624534589],[0.07788944989442825,1572624535701],[0.05012531206011772,1572624536813],[0.04755944758653641,1572624537925],[0.1076345443725586,1572624539037],[0.20150187611579895,1572624540149]]}] \ No newline at end of file diff --git a/src/test/resources/recording.jfr b/src/test/resources/recording.jfr new file mode 100644 index 0000000..86af024 Binary files /dev/null and b/src/test/resources/recording.jfr differ diff --git a/src/test/resources/search.output.txt b/src/test/resources/search.output.txt deleted file mode 100644 index bf7f698..0000000 --- a/src/test/resources/search.output.txt +++ /dev/null @@ -1 +0,0 @@ -["jdk.CPULoad.jvmUser","jdk.CPULoad.jvmSystem","jdk.CPULoad.machineTotal","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address"] \ No newline at end of file diff --git a/src/test/resources/searches/search.events.input.txt b/src/test/resources/searches/search.events.input.txt new file mode 100644 index 0000000..136ae24 --- /dev/null +++ b/src/test/resources/searches/search.events.input.txt @@ -0,0 +1 @@ +{"target":"*"} \ No newline at end of file diff --git a/src/test/resources/searches/search.events.output.txt b/src/test/resources/searches/search.events.output.txt new file mode 100644 index 0000000..93a4baa --- /dev/null +++ b/src/test/resources/searches/search.events.output.txt @@ -0,0 +1 @@ +["jdk.ObjectCountAfterGC.gcId","jdk.ObjectCountAfterGC.objectClass","jdk.ObjectCountAfterGC.count","jdk.ObjectCountAfterGC.totalSize","jdk.ObjectAllocationSample.eventThread","jdk.ObjectAllocationSample.stackTrace","jdk.ObjectAllocationSample.objectClass","jdk.ObjectAllocationSample.weight","jdk.G1HeapRegionTypeChange.index","jdk.G1HeapRegionTypeChange.from","jdk.G1HeapRegionTypeChange.to","jdk.G1HeapRegionTypeChange.start","jdk.G1HeapRegionTypeChange.used","jdk.JavaMonitorEnter.duration","jdk.JavaMonitorEnter.eventThread","jdk.JavaMonitorEnter.stackTrace","jdk.JavaMonitorEnter.monitorClass","jdk.JavaMonitorEnter.previousOwner","jdk.JavaMonitorEnter.address","jdk.DoubleFlag.name","jdk.DoubleFlag.value","jdk.DoubleFlag.origin","jdk.CodeCacheConfiguration.initialSize","jdk.CodeCacheConfiguration.reservedSize","jdk.CodeCacheConfiguration.nonNMethodSize","jdk.CodeCacheConfiguration.profiledSize","jdk.CodeCacheConfiguration.nonProfiledSize","jdk.CodeCacheConfiguration.expansionSize","jdk.CodeCacheConfiguration.minBlockLength","jdk.CodeCacheConfiguration.startAddress","jdk.CodeCacheConfiguration.reservedTopAddress","jdk.GarbageCollection.duration","jdk.GarbageCollection.gcId","jdk.GarbageCollection.name","jdk.GarbageCollection.cause","jdk.GarbageCollection.sumOfPauses","jdk.GarbageCollection.longestPause","jdk.IntFlag.name","jdk.IntFlag.value","jdk.IntFlag.origin","jdk.ModuleRequire.source","jdk.ModuleRequire.requiredModule","jdk.SafepointBegin.duration","jdk.SafepointBegin.eventThread","jdk.SafepointBegin.safepointId","jdk.SafepointBegin.totalThreadCount","jdk.SafepointBegin.jniCriticalThreadCount","jdk.SafepointBegin.duration","jdk.SafepointBegin.eventThread","jdk.SafepointBegin.safepointId","jdk.SafepointBegin.totalThreadCount","jdk.SafepointBegin.jniCriticalThreadCount","jdk.GCHeapSummary.gcId","jdk.GCHeapSummary.when","jdk.GCHeapSummary.heapSpace:start","jdk.GCHeapSummary.heapSpace:committedEnd","jdk.GCHeapSummary.heapSpace:committedSize","jdk.GCHeapSummary.heapSpace:reservedEnd","jdk.GCHeapSummary.heapSpace:reservedSize","jdk.GCHeapSummary.heapUsed","jdk.LongFlag.name","jdk.LongFlag.value","jdk.LongFlag.origin","jdk.CodeSweeperConfiguration.sweeperEnabled","jdk.CodeSweeperConfiguration.flushingEnabled","jdk.CodeSweeperConfiguration.sweepThreshold","jdk.JavaExceptionThrow.duration","jdk.JavaExceptionThrow.eventThread","jdk.JavaExceptionThrow.stackTrace","jdk.JavaExceptionThrow.message","jdk.JavaExceptionThrow.thrownClass","jdk.CPULoad.jvmUser","jdk.CPULoad.jvmSystem","jdk.CPULoad.machineTotal","jdk.ObjectCount.gcId","jdk.ObjectCount.objectClass","jdk.ObjectCount.count","jdk.ObjectCount.totalSize","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ActiveSetting.duration","jdk.ActiveSetting.eventThread","jdk.ActiveSetting.stackTrace","jdk.ActiveSetting.settingFor","jdk.ActiveSetting.name","jdk.ActiveSetting.value","jdk.ContainerIOUsage.duration","jdk.ContainerIOUsage.eventThread","jdk.ContainerIOUsage.stackTrace","jdk.ContainerIOUsage.serviceRequests","jdk.ContainerIOUsage.dataTransferred","jdk.DirectBufferStatistics.duration","jdk.DirectBufferStatistics.eventThread","jdk.DirectBufferStatistics.stackTrace","jdk.DirectBufferStatistics.maxCapacity","jdk.DirectBufferStatistics.count","jdk.DirectBufferStatistics.totalCapacity","jdk.DirectBufferStatistics.memoryUsed","jdk.ProtectionDomainCacheTableStatistics.bucketCount","jdk.ProtectionDomainCacheTableStatistics.entryCount","jdk.ProtectionDomainCacheTableStatistics.totalFootprint","jdk.ProtectionDomainCacheTableStatistics.bucketCountMaximum","jdk.ProtectionDomainCacheTableStatistics.bucketCountAverage","jdk.ProtectionDomainCacheTableStatistics.bucketCountVariance","jdk.ProtectionDomainCacheTableStatistics.bucketCountStandardDeviation","jdk.ProtectionDomainCacheTableStatistics.insertionRate","jdk.ProtectionDomainCacheTableStatistics.removalRate","jdk.LoaderConstraintsTableStatistics.bucketCount","jdk.LoaderConstraintsTableStatistics.entryCount","jdk.LoaderConstraintsTableStatistics.totalFootprint","jdk.LoaderConstraintsTableStatistics.bucketCountMaximum","jdk.LoaderConstraintsTableStatistics.bucketCountAverage","jdk.LoaderConstraintsTableStatistics.bucketCountVariance","jdk.LoaderConstraintsTableStatistics.bucketCountStandardDeviation","jdk.LoaderConstraintsTableStatistics.insertionRate","jdk.LoaderConstraintsTableStatistics.removalRate","jdk.ClassLoadingStatistics.loadedClassCount","jdk.ClassLoadingStatistics.unloadedClassCount","jdk.JavaThreadStatistics.activeCount","jdk.JavaThreadStatistics.daemonCount","jdk.JavaThreadStatistics.accumulatedCount","jdk.JavaThreadStatistics.peakCount","jdk.ThreadCPULoad.eventThread","jdk.ThreadCPULoad.user","jdk.ThreadCPULoad.system","jdk.Flush.duration","jdk.Flush.flushId","jdk.Flush.elements","jdk.Flush.size","jdk.SafepointStateSynchronization.duration","jdk.SafepointStateSynchronization.eventThread","jdk.SafepointStateSynchronization.safepointId","jdk.SafepointStateSynchronization.initialThreadCount","jdk.SafepointStateSynchronization.runningThreadCount","jdk.SafepointStateSynchronization.iterations","jdk.SafepointStateSynchronization.duration","jdk.SafepointStateSynchronization.eventThread","jdk.SafepointStateSynchronization.safepointId","jdk.SafepointStateSynchronization.initialThreadCount","jdk.SafepointStateSynchronization.runningThreadCount","jdk.SafepointStateSynchronization.iterations","jdk.CPUInformation.cpu","jdk.CPUInformation.description","jdk.CPUInformation.sockets","jdk.CPUInformation.cores","jdk.CPUInformation.hwThreads","jdk.YoungGenerationConfiguration.minSize","jdk.YoungGenerationConfiguration.maxSize","jdk.YoungGenerationConfiguration.newRatio","jdk.CodeSweeperStatistics.sweepCount","jdk.CodeSweeperStatistics.methodReclaimedCount","jdk.CodeSweeperStatistics.totalSweepTime","jdk.CodeSweeperStatistics.peakFractionTime","jdk.CodeSweeperStatistics.peakSweepTime","jdk.ClassRedefinition.redefinedClass","jdk.ClassRedefinition.classModificationCount","jdk.ClassRedefinition.redefinitionId","jdk.CodeCacheStatistics.codeBlobType","jdk.CodeCacheStatistics.startAddress","jdk.CodeCacheStatistics.reservedTopAddress","jdk.CodeCacheStatistics.entryCount","jdk.CodeCacheStatistics.methodCount","jdk.CodeCacheStatistics.adaptorCount","jdk.CodeCacheStatistics.unallocatedCapacity","jdk.CodeCacheStatistics.fullCount","jdk.G1HeapSummary.gcId","jdk.G1HeapSummary.when","jdk.G1HeapSummary.edenUsedSize","jdk.G1HeapSummary.edenTotalSize","jdk.G1HeapSummary.survivorUsedSize","jdk.G1HeapSummary.numberOfRegions","jdk.G1HeapRegionInformation.index","jdk.G1HeapRegionInformation.type","jdk.G1HeapRegionInformation.start","jdk.G1HeapRegionInformation.used","jdk.ContainerMemoryUsage.duration","jdk.ContainerMemoryUsage.eventThread","jdk.ContainerMemoryUsage.stackTrace","jdk.ContainerMemoryUsage.memoryFailCount","jdk.ContainerMemoryUsage.memoryUsage","jdk.ContainerMemoryUsage.swapMemoryUsage","jdk.OSInformation.osVersion","jdk.StringTableStatistics.bucketCount","jdk.StringTableStatistics.entryCount","jdk.StringTableStatistics.totalFootprint","jdk.StringTableStatistics.bucketCountMaximum","jdk.StringTableStatistics.bucketCountAverage","jdk.StringTableStatistics.bucketCountVariance","jdk.StringTableStatistics.bucketCountStandardDeviation","jdk.StringTableStatistics.insertionRate","jdk.StringTableStatistics.removalRate","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.ThreadPark.duration","jdk.ThreadPark.eventThread","jdk.ThreadPark.stackTrace","jdk.ThreadPark.parkedClass","jdk.ThreadPark.timeout","jdk.ThreadPark.until","jdk.ThreadPark.address","jdk.GCSurvivorConfiguration.maxTenuringThreshold","jdk.GCSurvivorConfiguration.initialTenuringThreshold","jdk.OldGarbageCollection.duration","jdk.OldGarbageCollection.gcId","jdk.ThreadStart.eventThread","jdk.ThreadStart.stackTrace","jdk.ThreadStart.thread","jdk.ThreadStart.parentThread","jdk.ThreadDump.result","jdk.MetaspaceSummary.gcId","jdk.MetaspaceSummary.when","jdk.MetaspaceSummary.gcThreshold","jdk.MetaspaceSummary.metaspace:committed","jdk.MetaspaceSummary.metaspace:used","jdk.MetaspaceSummary.metaspace:reserved","jdk.MetaspaceSummary.dataSpace:committed","jdk.MetaspaceSummary.dataSpace:used","jdk.MetaspaceSummary.dataSpace:reserved","jdk.MetaspaceSummary.classSpace:committed","jdk.MetaspaceSummary.classSpace:used","jdk.MetaspaceSummary.classSpace:reserved","jdk.PhysicalMemory.totalSize","jdk.PhysicalMemory.usedSize","jdk.SymbolTableStatistics.bucketCount","jdk.SymbolTableStatistics.entryCount","jdk.SymbolTableStatistics.totalFootprint","jdk.SymbolTableStatistics.bucketCountMaximum","jdk.SymbolTableStatistics.bucketCountAverage","jdk.SymbolTableStatistics.bucketCountVariance","jdk.SymbolTableStatistics.bucketCountStandardDeviation","jdk.SymbolTableStatistics.insertionRate","jdk.SymbolTableStatistics.removalRate","jdk.ClassLoad.duration","jdk.ClassLoad.eventThread","jdk.ClassLoad.stackTrace","jdk.ClassLoad.loadedClass","jdk.ClassLoad.definingClassLoader","jdk.ClassLoad.initiatingClassLoader","jdk.Compilation.duration","jdk.Compilation.eventThread","jdk.Compilation.compileId","jdk.Compilation.compiler","jdk.Compilation.method","jdk.Compilation.compileLevel","jdk.Compilation.succeded","jdk.Compilation.isOsr","jdk.Compilation.codeSize","jdk.Compilation.inlinedBytes","jdk.SocketRead.duration","jdk.SocketRead.eventThread","jdk.SocketRead.stackTrace","jdk.SocketRead.host","jdk.SocketRead.address","jdk.SocketRead.port","jdk.SocketRead.timeout","jdk.SocketRead.bytesRead","jdk.SocketRead.endOfStream","jdk.SocketRead.duration","jdk.SocketRead.eventThread","jdk.SocketRead.stackTrace","jdk.SocketRead.host","jdk.SocketRead.address","jdk.SocketRead.port","jdk.SocketRead.timeout","jdk.SocketRead.bytesRead","jdk.SocketRead.endOfStream","jdk.ActiveRecording.duration","jdk.ActiveRecording.eventThread","jdk.ActiveRecording.stackTrace","jdk.ActiveRecording.id","jdk.ActiveRecording.name","jdk.ActiveRecording.destination","jdk.ActiveRecording.maxAge","jdk.ActiveRecording.flushInterval","jdk.ActiveRecording.maxSize","jdk.ActiveRecording.recordingStart","jdk.ActiveRecording.recordingDuration","jdk.ActiveRecording.duration","jdk.ActiveRecording.eventThread","jdk.ActiveRecording.stackTrace","jdk.ActiveRecording.id","jdk.ActiveRecording.name","jdk.ActiveRecording.destination","jdk.ActiveRecording.maxAge","jdk.ActiveRecording.flushInterval","jdk.ActiveRecording.maxSize","jdk.ActiveRecording.recordingStart","jdk.ActiveRecording.recordingDuration","jdk.ActiveRecording.duration","jdk.ActiveRecording.eventThread","jdk.ActiveRecording.stackTrace","jdk.ActiveRecording.id","jdk.ActiveRecording.name","jdk.ActiveRecording.destination","jdk.ActiveRecording.maxAge","jdk.ActiveRecording.flushInterval","jdk.ActiveRecording.maxSize","jdk.ActiveRecording.recordingStart","jdk.ActiveRecording.recordingDuration","jdk.ContainerConfiguration.duration","jdk.ContainerConfiguration.eventThread","jdk.ContainerConfiguration.stackTrace","jdk.ContainerConfiguration.containerType","jdk.ContainerConfiguration.cpuSlicePeriod","jdk.ContainerConfiguration.cpuQuota","jdk.ContainerConfiguration.cpuShares","jdk.ContainerConfiguration.effectiveCpuCount","jdk.ContainerConfiguration.memorySoftLimit","jdk.ContainerConfiguration.memoryLimit","jdk.ContainerConfiguration.swapMemoryLimit","jdk.GCPhasePause.duration","jdk.GCPhasePause.eventThread","jdk.GCPhasePause.gcId","jdk.GCPhasePause.name","jdk.PlaceholderTableStatistics.bucketCount","jdk.PlaceholderTableStatistics.entryCount","jdk.PlaceholderTableStatistics.totalFootprint","jdk.PlaceholderTableStatistics.bucketCountMaximum","jdk.PlaceholderTableStatistics.bucketCountAverage","jdk.PlaceholderTableStatistics.bucketCountVariance","jdk.PlaceholderTableStatistics.bucketCountStandardDeviation","jdk.PlaceholderTableStatistics.insertionRate","jdk.PlaceholderTableStatistics.removalRate","jdk.CompilerStatistics.compileCount","jdk.CompilerStatistics.bailoutCount","jdk.CompilerStatistics.invalidatedCount","jdk.CompilerStatistics.osrCompileCount","jdk.CompilerStatistics.standardCompileCount","jdk.CompilerStatistics.osrBytesCompiled","jdk.CompilerStatistics.standardBytesCompiled","jdk.CompilerStatistics.nmethodsSize","jdk.CompilerStatistics.nmethodCodeSize","jdk.CompilerStatistics.peakTimeSpent","jdk.CompilerStatistics.totalTimeSpent","jdk.RetransformClasses.duration","jdk.RetransformClasses.eventThread","jdk.RetransformClasses.stackTrace","jdk.RetransformClasses.classCount","jdk.RetransformClasses.redefinitionId","jdk.GCHeapConfiguration.minSize","jdk.GCHeapConfiguration.maxSize","jdk.GCHeapConfiguration.initialSize","jdk.GCHeapConfiguration.usesCompressedOops","jdk.GCHeapConfiguration.compressedOopsMode","jdk.GCHeapConfiguration.objectAlignment","jdk.GCHeapConfiguration.heapAddressBits","jdk.ClassDefine.eventThread","jdk.ClassDefine.stackTrace","jdk.ClassDefine.definedClass","jdk.ClassDefine.definingClassLoader","jdk.OldObjectSample.duration","jdk.OldObjectSample.eventThread","jdk.OldObjectSample.stackTrace","jdk.OldObjectSample.allocationTime","jdk.OldObjectSample.objectAge","jdk.OldObjectSample.lastKnownHeapUsage","jdk.OldObjectSample.object","jdk.OldObjectSample.arrayElements","jdk.OldObjectSample.root","jdk.JVMInformation.jvmName","jdk.JVMInformation.jvmVersion","jdk.JVMInformation.jvmArguments","jdk.JVMInformation.jvmFlags","jdk.JVMInformation.javaArguments","jdk.JVMInformation.jvmStartTime","jdk.JVMInformation.pid","jdk.GCTLABConfiguration.usesTLABs","jdk.GCTLABConfiguration.minTLABSize","jdk.GCTLABConfiguration.tlabRefillWasteLimit","jdk.CompilationFailure.eventThread","jdk.CompilationFailure.failureMessage","jdk.CompilationFailure.compileId","jdk.CompilerInlining.eventThread","jdk.CompilerInlining.compileId","jdk.CompilerInlining.caller","jdk.CompilerInlining.callee:type","jdk.CompilerInlining.callee:name","jdk.CompilerInlining.callee:descriptor","jdk.CompilerInlining.succeeded","jdk.CompilerInlining.message","jdk.CompilerInlining.bci","jdk.ThreadContextSwitchRate.switchRate","jdk.ClassLoaderStatistics.classLoader","jdk.ClassLoaderStatistics.parentClassLoader","jdk.ClassLoaderStatistics.classLoaderData","jdk.ClassLoaderStatistics.classCount","jdk.ClassLoaderStatistics.chunkSize","jdk.ClassLoaderStatistics.blockSize","jdk.ClassLoaderStatistics.hiddenClassCount","jdk.ClassLoaderStatistics.hiddenChunkSize","jdk.ClassLoaderStatistics.hiddenBlockSize","jdk.GCConfiguration.youngCollector","jdk.GCConfiguration.oldCollector","jdk.GCConfiguration.parallelGCThreads","jdk.GCConfiguration.concurrentGCThreads","jdk.GCConfiguration.usesDynamicGCThreads","jdk.GCConfiguration.isExplicitGCConcurrent","jdk.GCConfiguration.isExplicitGCDisabled","jdk.GCConfiguration.pauseTarget","jdk.GCConfiguration.gcTimeRatio","jdk.MetaspaceChunkFreeListSummary.gcId","jdk.MetaspaceChunkFreeListSummary.when","jdk.MetaspaceChunkFreeListSummary.metadataType","jdk.MetaspaceChunkFreeListSummary.specializedChunks","jdk.MetaspaceChunkFreeListSummary.specializedChunksTotalSize","jdk.MetaspaceChunkFreeListSummary.smallChunks","jdk.MetaspaceChunkFreeListSummary.smallChunksTotalSize","jdk.MetaspaceChunkFreeListSummary.mediumChunks","jdk.MetaspaceChunkFreeListSummary.mediumChunksTotalSize","jdk.MetaspaceChunkFreeListSummary.humongousChunks","jdk.MetaspaceChunkFreeListSummary.humongousChunksTotalSize","jdk.CPUTimeStampCounter.fastTimeEnabled","jdk.CPUTimeStampCounter.fastTimeAutoEnabled","jdk.CPUTimeStampCounter.osFrequency","jdk.CPUTimeStampCounter.fastTimeFrequency","jdk.SafepointEnd.duration","jdk.SafepointEnd.eventThread","jdk.SafepointEnd.safepointId","jdk.SafepointEnd.duration","jdk.SafepointEnd.eventThread","jdk.SafepointEnd.safepointId","jdk.Deoptimization.eventThread","jdk.Deoptimization.stackTrace","jdk.Deoptimization.compileId","jdk.Deoptimization.compiler","jdk.Deoptimization.method","jdk.Deoptimization.lineNumber","jdk.Deoptimization.bci","jdk.Deoptimization.instruction","jdk.Deoptimization.reason","jdk.Deoptimization.action","jdk.ExecutionSample.eventThread","jdk.ExecutionSample.stackTrace","jdk.ExecutionSample.state","jdk.NativeLibrary.name","jdk.NativeLibrary.baseAddress","jdk.NativeLibrary.topAddress","jdk.ObjectAllocationOutsideTLAB.eventThread","jdk.ObjectAllocationOutsideTLAB.stackTrace","jdk.ObjectAllocationOutsideTLAB.objectClass","jdk.ObjectAllocationOutsideTLAB.allocationSize","jdk.ExecuteVMOperation.duration","jdk.ExecuteVMOperation.eventThread","jdk.ExecuteVMOperation.operation","jdk.ExecuteVMOperation.safepoint","jdk.ExecuteVMOperation.blocking","jdk.ExecuteVMOperation.caller","jdk.ExecuteVMOperation.safepointId","jdk.ExecuteVMOperation.duration","jdk.ExecuteVMOperation.eventThread","jdk.ExecuteVMOperation.operation","jdk.ExecuteVMOperation.safepoint","jdk.ExecuteVMOperation.blocking","jdk.ExecuteVMOperation.caller","jdk.ExecuteVMOperation.safepointId","jdk.ContainerCPUUsage.duration","jdk.ContainerCPUUsage.eventThread","jdk.ContainerCPUUsage.stackTrace","jdk.ContainerCPUUsage.cpuTime","jdk.ContainerCPUUsage.cpuUserTime","jdk.ContainerCPUUsage.cpuSystemTime","jdk.MetaspaceGCThreshold.oldValue","jdk.MetaspaceGCThreshold.newValue","jdk.MetaspaceGCThreshold.updater","jdk.InitialSystemProperty.key","jdk.InitialSystemProperty.value","jdk.ThreadAllocationStatistics.allocated","jdk.ThreadAllocationStatistics.eventThread","jdk.BooleanFlag.name","jdk.BooleanFlag.value","jdk.BooleanFlag.origin","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.JavaMonitorWait.duration","jdk.JavaMonitorWait.eventThread","jdk.JavaMonitorWait.stackTrace","jdk.JavaMonitorWait.monitorClass","jdk.JavaMonitorWait.notifier","jdk.JavaMonitorWait.timeout","jdk.JavaMonitorWait.timedOut","jdk.JavaMonitorWait.address","jdk.UnsignedIntFlag.name","jdk.UnsignedIntFlag.value","jdk.UnsignedIntFlag.origin","jdk.GCReferenceStatistics.gcId","jdk.GCReferenceStatistics.type","jdk.GCReferenceStatistics.count","jdk.SafepointCleanup.duration","jdk.SafepointCleanup.eventThread","jdk.SafepointCleanup.safepointId","jdk.SafepointCleanup.duration","jdk.SafepointCleanup.eventThread","jdk.SafepointCleanup.safepointId","jdk.StringFlag.name","jdk.StringFlag.value","jdk.StringFlag.origin","jdk.VirtualizationInformation.name","jdk.ExceptionStatistics.duration","jdk.ExceptionStatistics.eventThread","jdk.ExceptionStatistics.stackTrace","jdk.ExceptionStatistics.throwables","jdk.ObjectAllocationInNewTLAB.eventThread","jdk.ObjectAllocationInNewTLAB.stackTrace","jdk.ObjectAllocationInNewTLAB.objectClass","jdk.ObjectAllocationInNewTLAB.allocationSize","jdk.ObjectAllocationInNewTLAB.tlabSize","jdk.InitialEnvironmentVariable.key","jdk.InitialEnvironmentVariable.value","jdk.ThreadSleep.duration","jdk.ThreadSleep.eventThread","jdk.ThreadSleep.stackTrace","jdk.ThreadSleep.time","jdk.UnsignedLongFlag.name","jdk.UnsignedLongFlag.value","jdk.UnsignedLongFlag.origin","jdk.ThreadEnd.eventThread","jdk.ThreadEnd.thread","jdk.ContainerCPUThrottling.duration","jdk.ContainerCPUThrottling.eventThread","jdk.ContainerCPUThrottling.stackTrace","jdk.ContainerCPUThrottling.cpuElapsedSlices","jdk.ContainerCPUThrottling.cpuThrottledSlices","jdk.ContainerCPUThrottling.cpuThrottledTime","jdk.GCPhasePauseLevel4.duration","jdk.GCPhasePauseLevel4.eventThread","jdk.GCPhasePauseLevel4.gcId","jdk.GCPhasePauseLevel4.name","jdk.GCPhasePauseLevel1.duration","jdk.GCPhasePauseLevel1.eventThread","jdk.GCPhasePauseLevel1.gcId","jdk.GCPhasePauseLevel1.name","jdk.GCPhasePauseLevel3.duration","jdk.GCPhasePauseLevel3.eventThread","jdk.GCPhasePauseLevel3.gcId","jdk.GCPhasePauseLevel3.name","jdk.GCPhasePauseLevel2.duration","jdk.GCPhasePauseLevel2.eventThread","jdk.GCPhasePauseLevel2.gcId","jdk.GCPhasePauseLevel2.name","jdk.NativeMethodSample.eventThread","jdk.NativeMethodSample.stackTrace","jdk.NativeMethodSample.state","jdk.NetworkUtilization.networkInterface","jdk.NetworkUtilization.readRate","jdk.NetworkUtilization.writeRate","jdk.CompilerConfiguration.threadCount","jdk.CompilerConfiguration.tieredCompilation","jdk.ModuleExport.exportedPackage","jdk.ModuleExport.targetModule","jdk.ModuleExport.exportingModule","jdk.Deserialization.duration","jdk.Deserialization.eventThread","jdk.Deserialization.stackTrace","jdk.Deserialization.filterConfigured","jdk.Deserialization.filterStatus","jdk.Deserialization.type","jdk.Deserialization.arrayLength","jdk.Deserialization.objectReferences","jdk.Deserialization.depth","jdk.Deserialization.bytesRead","jdk.Deserialization.exceptionType","jdk.Deserialization.exceptionMessage","jdk.SafepointCleanupTask.duration","jdk.SafepointCleanupTask.eventThread","jdk.SafepointCleanupTask.safepointId","jdk.SafepointCleanupTask.name","jdk.SafepointCleanupTask.duration","jdk.SafepointCleanupTask.eventThread","jdk.SafepointCleanupTask.safepointId","jdk.SafepointCleanupTask.name","jdk.SafepointCleanupTask.duration","jdk.SafepointCleanupTask.eventThread","jdk.SafepointCleanupTask.safepointId","jdk.SafepointCleanupTask.name"] \ No newline at end of file diff --git a/src/test/resources/searches/search.target.input.txt b/src/test/resources/searches/search.target.input.txt new file mode 100644 index 0000000..237fe0c --- /dev/null +++ b/src/test/resources/searches/search.target.input.txt @@ -0,0 +1 @@ +{"target":"jdk.ObjectAllocationSample.objectClass"} \ No newline at end of file diff --git a/src/test/resources/searches/search.target.output.txt b/src/test/resources/searches/search.target.output.txt new file mode 100644 index 0000000..57bcbbd --- /dev/null +++ b/src/test/resources/searches/search.target.output.txt @@ -0,0 +1 @@ +["java.util.HashMap$KeyIterator","java.lang.management.MemoryUsage[]","java.util.ArrayList","java.util.ArrayList","jdk.jfr.events.ContainerConfigurationEvent","java.util.HashMap$Node[]","java.util.Collections$UnmodifiableCollection$1","java.lang.String","java.io.ObjectStreamClass$WeakClassKey","java.util.WeakHashMap$EntryIterator","java.util.TreeMap$Entry","java.util.Collections$UnmodifiableCollection$1","java.lang.Object[]","java.lang.Object[]","char[]","java.lang.Object[]","byte[]","jdk.internal.org.objectweb.asm.SymbolTable$Entry","byte[]","byte[]","char[]","java.nio.HeapByteBuffer","java.util.ArrayList","byte[]","java.util.ArrayList$SubList","byte[]","char[]","byte[]","java.lang.Object","char[]","java.lang.Object[]","byte[]","jdk.internal.ref.CleanerImpl$PhantomCleanableRef","char[]","jdk.internal.ref.CleanerImpl$PhantomCleanableRef","java.lang.Object[]","byte[]","java.lang.Object[]","byte[]","char[]","sun.nio.cs.UTF_8$Decoder","byte[]","char[]","sun.nio.cs.UTF_8$Decoder","char[]","byte[]","byte[]","byte[]","char[]","java.nio.HeapByteBuffer","java.util.ArrayList","byte[]","java.util.ArrayList","java.nio.HeapByteBuffer","byte[]","char[]","jdk.internal.ref.CleanerImpl$PhantomCleanableRef","char[]","java.util.ArrayList$SubList","byte[]","java.nio.HeapByteBuffer","char[]","java.nio.HeapByteBuffer","java.util.ArrayList","byte[]","java.util.ArrayList$SubList","byte[]","char[]","sun.nio.cs.UTF_8$Decoder","char[]","byte[]","byte[]","byte[]","char[]","java.nio.HeapByteBuffer","java.util.ArrayList","byte[]","java.util.ArrayList$SubList","byte[]","char[]","sun.nio.cs.UTF_8$Decoder","char[]","byte[]","byte[]","byte[]","byte[]","java.nio.HeapCharBuffer","byte[]","java.util.HashMap$Node[]","char[]","java.util.ArrayList$SubList","byte[]","sun.nio.cs.UTF_8$Decoder","char[]","int[]","java.util.ArrayList","java.util.LinkedHashMap","java.util.HashMap$Node[]","java.util.HashMap","java.util.HashSet","java.util.LinkedHashMap$Entry","java.lang.String","byte[]","java.lang.String","java.util.HashMap$Node","java.util.LinkedHashMap$LinkedEntryIterator","java.lang.String","java.util.ArrayList$Itr"] \ No newline at end of file