diff --git a/pom.xml b/pom.xml
index cd2953a1a..e94b7a75d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,24 +32,10 @@
spring-boot-starter-data-mongodb
- org.springframework.boot
- spring-boot-starter-actuator
-
-
org.springframework.cloud
spring-cloud-starter-zipkin
1.1.0.RELEASE
-
- io.prometheus
- simpleclient
- RELEASE
-
-
- io.prometheus
- simpleclient_common
- RELEASE
-
org.springframework.data
spring-data-rest-hal-browser
diff --git a/src/main/java/works/weave/socks/cart/configuration/PrometheusEndpointContextConfiguration.java b/src/main/java/works/weave/socks/cart/configuration/PrometheusEndpointContextConfiguration.java
deleted file mode 100644
index 9844b2fbc..000000000
--- a/src/main/java/works/weave/socks/cart/configuration/PrometheusEndpointContextConfiguration.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package works.weave.socks.cart.configuration;
-
-import io.prometheus.client.CollectorRegistry;
-import org.springframework.boot.actuate.autoconfigure.ExportMetricWriter;
-import org.springframework.boot.actuate.autoconfigure.ManagementContextConfiguration;
-import org.springframework.boot.actuate.condition.ConditionalOnEnabledEndpoint;
-import org.springframework.boot.actuate.metrics.writer.MetricWriter;
-import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
-import org.springframework.context.annotation.Bean;
-import works.weave.socks.cart.controllers.PrometheusEndpoint;
-import works.weave.socks.cart.controllers.PrometheusMvcEndpoint;
-import works.weave.socks.cart.monitoring.PrometheusMetricWriter;
-
-@ManagementContextConfiguration
-public class PrometheusEndpointContextConfiguration {
-
- @Bean
- public works.weave.socks.cart.controllers.PrometheusEndpoint prometheusEndpoint(CollectorRegistry registry) {
- return new PrometheusEndpoint(registry);
- }
-
- @Bean
- @ConditionalOnBean(PrometheusEndpoint.class)
- @ConditionalOnEnabledEndpoint("prometheus")
- PrometheusMvcEndpoint prometheusMvcEndpoint(PrometheusEndpoint prometheusEndpoint) {
- return new PrometheusMvcEndpoint(prometheusEndpoint);
- }
-
- @Bean
- CollectorRegistry collectorRegistry() {
- return new CollectorRegistry();
- }
-
- @Bean
- @ExportMetricWriter
- MetricWriter prometheusMetricWriter(CollectorRegistry registry) {
- return new PrometheusMetricWriter(registry);
- }
-
-}
diff --git a/src/main/java/works/weave/socks/cart/controllers/PrometheusEndpoint.java b/src/main/java/works/weave/socks/cart/controllers/PrometheusEndpoint.java
deleted file mode 100644
index 9960871d2..000000000
--- a/src/main/java/works/weave/socks/cart/controllers/PrometheusEndpoint.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package works.weave.socks.cart.controllers;
-
-import io.prometheus.client.CollectorRegistry;
-import io.prometheus.client.exporter.common.TextFormat;
-import org.springframework.boot.actuate.endpoint.AbstractEndpoint;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-
-public class PrometheusEndpoint extends AbstractEndpoint {
-
- private CollectorRegistry registry;
-
- public PrometheusEndpoint(CollectorRegistry registry) {
- super("prometheus", false, true);
- this.registry = registry;
- }
-
- @Override
- public String invoke() {
- Writer writer = new StringWriter();
- try {
- TextFormat.write004(writer, registry.metricFamilySamples());
- } catch (IOException e) {
- e.printStackTrace();
- }
- return writer.toString();
- }
-}
diff --git a/src/main/java/works/weave/socks/cart/controllers/PrometheusMvcEndpoint.java b/src/main/java/works/weave/socks/cart/controllers/PrometheusMvcEndpoint.java
deleted file mode 100644
index 71f8b0a6c..000000000
--- a/src/main/java/works/weave/socks/cart/controllers/PrometheusMvcEndpoint.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package works.weave.socks.cart.controllers;
-
-import io.prometheus.client.exporter.common.TextFormat;
-import org.springframework.boot.actuate.endpoint.mvc.AbstractEndpointMvcAdapter;
-import org.springframework.boot.actuate.endpoint.mvc.HypermediaDisabled;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
-
-import java.util.Collections;
-
-public class PrometheusMvcEndpoint extends AbstractEndpointMvcAdapter {
-
- public PrometheusMvcEndpoint(PrometheusEndpoint delegate) {
- super(delegate);
- }
-
- @RequestMapping(method = RequestMethod.GET, produces = TextFormat.CONTENT_TYPE_004)
- @ResponseBody
- @HypermediaDisabled
- protected Object invoke() {
- if (!getDelegate().isEnabled()) {
- return new ResponseEntity<>(
- Collections.singletonMap("message", "This endpoint is disabled"),
- HttpStatus.NOT_FOUND);
- }
- return super.invoke();
- }
-}
diff --git a/src/main/java/works/weave/socks/cart/monitoring/PrometheusMetricWriter.java b/src/main/java/works/weave/socks/cart/monitoring/PrometheusMetricWriter.java
deleted file mode 100644
index 2fc17e117..000000000
--- a/src/main/java/works/weave/socks/cart/monitoring/PrometheusMetricWriter.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package works.weave.socks.cart.monitoring;
-
-import io.prometheus.client.CollectorRegistry;
-import io.prometheus.client.Counter;
-import io.prometheus.client.Gauge;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.actuate.metrics.Metric;
-import org.springframework.boot.actuate.metrics.writer.Delta;
-import org.springframework.boot.actuate.metrics.writer.MetricWriter;
-
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
-
-public class PrometheusMetricWriter implements MetricWriter {
-
- private final ConcurrentMap counters = new ConcurrentHashMap<>();
- private final ConcurrentMap gauges = new ConcurrentHashMap<>();
- private CollectorRegistry registry;
-
- @Autowired
- public PrometheusMetricWriter(CollectorRegistry registry) {
- this.registry = registry;
- }
-
- @Override
- public void increment(Delta> delta) {
- counter(delta.getName()).inc(delta.getValue().doubleValue());
- }
-
- @Override
- public void reset(String metricName) {
- counter(metricName).clear();
- }
-
- @Override
- public void set(Metric> value) {
- gauge(value.getName()).set(value.getValue().doubleValue());
- }
-
- private Counter counter(String name) {
- String key = sanitizeName(name);
- return counters.computeIfAbsent(key, k -> Counter.build().name(k).help(k).register(registry));
- }
-
- private Gauge gauge(String name) {
- String key = sanitizeName(name);
- return gauges.computeIfAbsent(key, k -> Gauge.build().name(k).help(k).register(registry));
- }
-
- private String sanitizeName(String name) {
- return name.replaceAll("[^a-zA-Z0-9_]", "_");
- }
-
-}