mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-09-03 04:26:12 +08:00
Merge branch '2.4.x'
Closes gh-25845
This commit is contained in:
commit
03e92d794b
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2012-2019 the original author or authors.
|
||||
* Copyright 2012-2021 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@ -16,7 +16,6 @@
|
||||
|
||||
package org.springframework.boot.actuate.metrics.export.prometheus;
|
||||
|
||||
import java.net.UnknownHostException;
|
||||
import java.time.Duration;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Executors;
|
||||
@ -31,7 +30,6 @@ import org.apache.commons.logging.LogFactory;
|
||||
import org.springframework.scheduling.TaskScheduler;
|
||||
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* Class that can be used to manage the pushing of metrics to a {@link PushGateway
|
||||
@ -107,16 +105,8 @@ public class PrometheusPushGatewayManager {
|
||||
try {
|
||||
this.pushGateway.pushAdd(this.registry, this.job, this.groupingKey);
|
||||
}
|
||||
catch (UnknownHostException ex) {
|
||||
String host = ex.getMessage();
|
||||
String message = "Unable to locate prometheus push gateway host"
|
||||
+ (StringUtils.hasLength(host) ? " '" + host + "'" : "")
|
||||
+ ". No longer attempting metrics publication to this host";
|
||||
logger.error(message, ex);
|
||||
shutdown(ShutdownOperation.NONE);
|
||||
}
|
||||
catch (Throwable ex) {
|
||||
logger.error("Unable to push metrics to Prometheus Pushgateway", ex);
|
||||
logger.warn("Unexpected exception thrown while pushing metrics to Prometheus Pushgateway", ex);
|
||||
}
|
||||
}
|
||||
|
||||
@ -125,7 +115,7 @@ public class PrometheusPushGatewayManager {
|
||||
this.pushGateway.delete(this.job, this.groupingKey);
|
||||
}
|
||||
catch (Throwable ex) {
|
||||
logger.error("Unable to delete metrics from Prometheus Pushgateway", ex);
|
||||
logger.warn("Unexpected exception thrown while deleting metrics from Promethues Pushgateway", ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2012-2020 the original author or authors.
|
||||
* Copyright 2012-2021 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@ -16,7 +16,6 @@
|
||||
|
||||
package org.springframework.boot.actuate.metrics.export.prometheus;
|
||||
|
||||
import java.net.UnknownHostException;
|
||||
import java.time.Duration;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
@ -166,18 +165,6 @@ class PrometheusPushGatewayManagerTests {
|
||||
verifyNoInteractions(this.pushGateway);
|
||||
}
|
||||
|
||||
@Test
|
||||
void pushWhenUnknownHostExceptionIsThrownDoesShutdown() throws Exception {
|
||||
givenScheduleAtFixedRateWithReturnFuture();
|
||||
new PrometheusPushGatewayManager(this.pushGateway, this.registry, this.scheduler, this.pushRate, "job",
|
||||
this.groupingKey, null);
|
||||
verify(this.scheduler).scheduleAtFixedRate(this.task.capture(), eq(this.pushRate));
|
||||
willThrow(new UnknownHostException("foo")).given(this.pushGateway).pushAdd(this.registry, "job",
|
||||
this.groupingKey);
|
||||
this.task.getValue().run();
|
||||
verify(this.future).cancel(false);
|
||||
}
|
||||
|
||||
@Test
|
||||
void pushDoesNotThrowException() throws Exception {
|
||||
new PrometheusPushGatewayManager(this.pushGateway, this.registry, this.scheduler, this.pushRate, "job",
|
||||
|
Loading…
Reference in New Issue
Block a user