Don't open jfr recording stream when jfr metrics are not enabled (#8574)
This commit is contained in:
parent
5a5cac9b01
commit
ba4eea2d82
|
@ -37,10 +37,14 @@ public final class RuntimeMetrics implements Closeable {
|
|||
|
||||
@SuppressWarnings("CatchingUnchecked")
|
||||
RuntimeMetrics(
|
||||
OpenTelemetry openTelemetry, Predicate<JfrFeature> featurePredicate, boolean disableJmx) {
|
||||
OpenTelemetry openTelemetry,
|
||||
Predicate<JfrFeature> featurePredicate,
|
||||
boolean disableJmx,
|
||||
boolean disableJfr) {
|
||||
this.openTelemetry = openTelemetry;
|
||||
try {
|
||||
jfrRuntimeMetrics = JfrRuntimeMetrics.build(openTelemetry, featurePredicate);
|
||||
jfrRuntimeMetrics =
|
||||
disableJfr ? null : JfrRuntimeMetrics.build(openTelemetry, featurePredicate);
|
||||
|
||||
// Set up metrics gathered by JMX
|
||||
if (!disableJmx) {
|
||||
|
|
|
@ -73,8 +73,8 @@ public final class RuntimeMetricsBuilder {
|
|||
|
||||
/** Build and start an {@link RuntimeMetrics} with the config from this builder. */
|
||||
public RuntimeMetrics build() {
|
||||
Predicate<JfrFeature> featurePredicate =
|
||||
jfrFeature -> enabledFeatureMap.getOrDefault(jfrFeature, jfrFeature.isDefaultEnabled());
|
||||
return new RuntimeMetrics(openTelemetry, featurePredicate, disableJmx);
|
||||
Predicate<JfrFeature> featurePredicate = jfrFeature -> enabledFeatureMap.get(jfrFeature);
|
||||
boolean disableJfr = !enabledFeatureMap.keySet().stream().anyMatch(featurePredicate);
|
||||
return new RuntimeMetrics(openTelemetry, featurePredicate, disableJmx, disableJfr);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue