Start and stop all lifecycle-managed objects in CrawlAccountsCommand

This commit is contained in:
Chris Eager
2023-06-17 10:03:07 -05:00
committed by Chris Eager
parent 7dce183170
commit 6d81f69785
2 changed files with 18 additions and 44 deletions

View File

@@ -5,11 +5,7 @@
package org.whispersystems.textsecuregcm.metrics;
import com.codahale.metrics.MetricRegistry;
import com.codahale.metrics.SharedMetricRegistries;
import io.dropwizard.lifecycle.JettyManaged;
import io.dropwizard.lifecycle.setup.LifecycleEnvironment;
import io.dropwizard.metrics.ScheduledReporterManager;
import io.dropwizard.setup.Environment;
import io.micrometer.core.instrument.Meter;
import io.micrometer.core.instrument.Metrics;
@@ -90,41 +86,4 @@ public class MetricsUtil {
GarbageCollectionGauges.registerMetrics();
}
/**
* For use in commands where {@link JettyManaged} doesn't apply
*
* @see io.dropwizard.metrics.MetricsFactory#configure(LifecycleEnvironment, MetricRegistry)
*/
public static void startManagedReporters(Environment environment) {
environment.lifecycle().getManagedObjects().forEach(managedObject -> {
if (managedObject instanceof JettyManaged jettyManaged) {
if (jettyManaged.getManaged() instanceof ScheduledReporterManager scheduledReporterManager) {
try {
scheduledReporterManager.start();
} catch (final Exception e) {
throw new RuntimeException(e);
}
}
}
});
}
/**
* For use in commands where {@link JettyManaged} doesn't apply
*
* @see io.dropwizard.metrics.MetricsFactory#configure(LifecycleEnvironment, MetricRegistry)
*/
public static void stopManagedReporters(final Environment environment) {
environment.lifecycle().getManagedObjects().forEach(lifeCycle -> {
if (lifeCycle instanceof JettyManaged jettyManaged) {
if (jettyManaged.getManaged() instanceof ScheduledReporterManager scheduledReporterManager) {
try {
scheduledReporterManager.stop();
} catch (final Exception e) {
throw new RuntimeException(e);
}
}
}
});
}
}