Browse Source

Merge branch '1.1.x'

Conflicts:
	spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java
pull/2051/head
Phillip Webb 11 years ago
parent
commit
53637eaa7c
  1. 20
      spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/writer/CodahaleMetricWriter.java
  2. 4
      spring-boot/src/main/java/org/springframework/boot/context/web/ErrorPageFilter.java

20
spring-boot-actuator/src/main/java/org/springframework/boot/actuate/metrics/writer/CodahaleMetricWriter.java

@ -90,25 +90,25 @@ public class CodahaleMetricWriter implements MetricWriter { @@ -90,25 +90,25 @@ public class CodahaleMetricWriter implements MetricWriter {
}
else {
final double gauge = value.getValue().doubleValue();
Object lock = null;
if (this.gaugeLocks.containsKey(name)) {
lock = this.gaugeLocks.get(name);
}
else {
this.gaugeLocks.putIfAbsent(name, new Object());
lock = this.gaugeLocks.get(name);
}
// Ensure we synchronize to avoid another thread pre-empting this thread after
// remove causing an error in CodaHale metrics
// NOTE: CodaHale provides no way to do this atomically
synchronized (lock) {
synchronized (getGuageLock(name)) {
this.registry.remove(name);
this.registry.register(name, new SimpleGauge(gauge));
}
}
}
private Object getGuageLock(String name) {
Object lock = this.gaugeLocks.get(name);
if (lock == null) {
this.gaugeLocks.putIfAbsent(name, new Object());
lock = this.gaugeLocks.get(name);
}
return lock;
}
@Override
public void reset(String metricName) {
this.registry.remove(metricName);

4
spring-boot/src/main/java/org/springframework/boot/context/web/ErrorPageFilter.java

@ -56,8 +56,8 @@ import org.springframework.web.filter.OncePerRequestFilter; @@ -56,8 +56,8 @@ import org.springframework.web.filter.OncePerRequestFilter;
*/
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
class ErrorPageFilter extends AbstractConfigurableEmbeddedServletContainer implements
Filter, NonEmbeddedServletContainerFactory {
public class ErrorPageFilter extends AbstractConfigurableEmbeddedServletContainer
implements Filter, NonEmbeddedServletContainerFactory {
private static Log logger = LogFactory.getLog(ErrorPageFilter.class);

Loading…
Cancel
Save