From 2b1089a009f62451b8a96547dd6156489324bf5f Mon Sep 17 00:00:00 2001 From: Christian Tzolov Date: Mon, 18 May 2020 17:29:39 +0200 Subject: [PATCH] Add wavefront micrometer registry support - add wavefront micrometer registry deps - fix wrong core artifact names Part of #https://github.com/spring-cloud/spring-cloud-dataflow/issues/3938 --- applications/sink/cassandra-sink/README.adoc | 10 +++++----- applications/sink/redis-sink/README.adoc | 1 + ...StreamMicrometerEnvironmentPostProcessor.java | 2 +- ...amMicrometerEnvironmentPostProcessorTest.java | 2 ++ applications/stream-applications-core/pom.xml | 16 ++++++++++------ 5 files changed, 19 insertions(+), 12 deletions(-) diff --git a/applications/sink/cassandra-sink/README.adoc b/applications/sink/cassandra-sink/README.adoc index 0de9b5fb..0906689b 100644 --- a/applications/sink/cassandra-sink/README.adoc +++ b/applications/sink/cassandra-sink/README.adoc @@ -16,17 +16,17 @@ The **$$cassandra$$** $$sink$$ has the following options: //tag::configuration-properties[] $$spring.data.cassandra.cluster-name$$:: $$$$ *($$String$$, default: `$$$$`)* $$spring.data.cassandra.compression$$:: $$Compression supported by the Cassandra binary protocol.$$ *($$Compression$$, default: `$$none$$`, possible values: `LZ4`,`SNAPPY`,`NONE`)* -$$spring.data.cassandra.connect-timeout$$:: $$Socket option: connection time out.$$ *($$Duration$$, default: `$$$$`)* -$$spring.data.cassandra.consistency-level$$:: $$Queries consistency level.$$ *($$DefaultConsistencyLevel$$, default: `$$$$`, possible values: `ANY`,`ONE`,`TWO`,`THREE`,`QUORUM`,`ALL`,`LOCAL_ONE`,`LOCAL_QUORUM`,`EACH_QUORUM`,`SERIAL`,`LOCAL_SERIAL`)* +$$spring.data.cassandra.connect-timeout$$:: $$$$ *($$Duration$$, default: `$$$$`)* +$$spring.data.cassandra.consistency-level$$:: $$$$ *($$DefaultConsistencyLevel$$, default: `$$$$`, possible values: `ANY`,`ONE`,`TWO`,`THREE`,`QUORUM`,`ALL`,`LOCAL_ONE`,`LOCAL_QUORUM`,`EACH_QUORUM`,`SERIAL`,`LOCAL_SERIAL`)* $$spring.data.cassandra.contact-points$$:: $$Cluster node addresses in the form 'host:port', or a simple 'host' to use the configured port.$$ *($$List$$, default: `$$[127.0.0.1:9042]$$`)* $$spring.data.cassandra.fetch-size$$:: $$$$ *($$Integer$$, default: `$$$$`)* $$spring.data.cassandra.keyspace-name$$:: $$Keyspace name to use.$$ *($$String$$, default: `$$$$`)* $$spring.data.cassandra.local-datacenter$$:: $$Datacenter that is considered "local". Contact points should be from this datacenter.$$ *($$String$$, default: `$$$$`)* -$$spring.data.cassandra.page-size$$:: $$Queries default page size.$$ *($$Integer$$, default: `$$5000$$`)* $$spring.data.cassandra.password$$:: $$Login password of the server.$$ *($$String$$, default: `$$$$`)* -$$spring.data.cassandra.read-timeout$$:: $$Socket option: read time out.$$ *($$Duration$$, default: `$$$$`)* +$$spring.data.cassandra.port$$:: $$Port to use if a contact point does not specify one.$$ *($$Integer$$, default: `$$9042$$`)* +$$spring.data.cassandra.read-timeout$$:: $$$$ *($$Duration$$, default: `$$$$`)* $$spring.data.cassandra.schema-action$$:: $$Schema action to take at startup.$$ *($$String$$, default: `$$none$$`)* -$$spring.data.cassandra.serial-consistency-level$$:: $$Queries serial consistency level.$$ *($$DefaultConsistencyLevel$$, default: `$$$$`, possible values: `ANY`,`ONE`,`TWO`,`THREE`,`QUORUM`,`ALL`,`LOCAL_ONE`,`LOCAL_QUORUM`,`EACH_QUORUM`,`SERIAL`,`LOCAL_SERIAL`)* +$$spring.data.cassandra.serial-consistency-level$$:: $$$$ *($$DefaultConsistencyLevel$$, default: `$$$$`, possible values: `ANY`,`ONE`,`TWO`,`THREE`,`QUORUM`,`ALL`,`LOCAL_ONE`,`LOCAL_QUORUM`,`EACH_QUORUM`,`SERIAL`,`LOCAL_SERIAL`)* $$spring.data.cassandra.session-name$$:: $$Name of the Cassandra session.$$ *($$String$$, default: `$$$$`)* $$spring.data.cassandra.ssl$$:: $$Enable SSL support.$$ *($$Boolean$$, default: `$$false$$`)* $$spring.data.cassandra.username$$:: $$Login user of the server.$$ *($$String$$, default: `$$$$`)* diff --git a/applications/sink/redis-sink/README.adoc b/applications/sink/redis-sink/README.adoc index ff584c66..b19dd31c 100644 --- a/applications/sink/redis-sink/README.adoc +++ b/applications/sink/redis-sink/README.adoc @@ -31,6 +31,7 @@ $$spring.redis.password$$:: $$Login password of the redis server.$$ *($$String$$ $$spring.redis.port$$:: $$Redis server port.$$ *($$Integer$$, default: `$$6379$$`)* $$spring.redis.sentinel.master$$:: $$Name of the Redis server.$$ *($$String$$, default: `$$$$`)* $$spring.redis.sentinel.nodes$$:: $$Comma-separated list of "host:port" pairs.$$ *($$List$$, default: `$$$$`)* +$$spring.redis.sentinel.password$$:: $$Password for authenticating with sentinel(s).$$ *($$String$$, default: `$$$$`)* $$spring.redis.ssl$$:: $$Whether to enable SSL support.$$ *($$Boolean$$, default: `$$false$$`)* $$spring.redis.timeout$$:: $$Connection timeout.$$ *($$Duration$$, default: `$$$$`)* $$spring.redis.url$$:: $$Connection URL. Overrides host, port, and password. User is ignored. Example: redis://user:password@example.com:6379$$ *($$String$$, default: `$$$$`)* diff --git a/applications/stream-applications-core/common/stream-applications-micrometer-common/src/main/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessor.java b/applications/stream-applications-core/common/stream-applications-micrometer-common/src/main/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessor.java index 8c1b5958..52084fc0 100644 --- a/applications/stream-applications-core/common/stream-applications-micrometer-common/src/main/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessor.java +++ b/applications/stream-applications-core/common/stream-applications-micrometer-common/src/main/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessor.java @@ -36,7 +36,7 @@ public class SpringCloudStreamMicrometerEnvironmentPostProcessor implements Envi private final static String METRICS_PROPERTY_NAME_TEMPLATE = "management.metrics.export.%s.enabled"; private final static String[] METRICS_REPOSITORY_NAMES = - new String[]{"datadog", "influx", "prometheus", "prometheus.rsocket"}; + new String[]{"datadog", "influx", "prometheus", "prometheus.rsocket", "wavefront"}; @Override public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) { diff --git a/applications/stream-applications-core/common/stream-applications-micrometer-common/src/test/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessorTest.java b/applications/stream-applications-core/common/stream-applications-micrometer-common/src/test/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessorTest.java index 26c4311a..6116727f 100644 --- a/applications/stream-applications-core/common/stream-applications-micrometer-common/src/test/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessorTest.java +++ b/applications/stream-applications-core/common/stream-applications-micrometer-common/src/test/java/org/springframework/cloud/stream/app/micrometer/common/SpringCloudStreamMicrometerEnvironmentPostProcessorTest.java @@ -61,6 +61,7 @@ public class SpringCloudStreamMicrometerEnvironmentPostProcessorTest { "management.metrics.export.prometheus.enabled=true", "management.metrics.export.prometheus.rsocket.enabled=true", "management.metrics.export.datadog.enabled=true", + "management.metrics.export.wavefront.enabled=true", "management.endpoints.web.exposure.include=info,health"}) public static class TestOverrideMetricsEnabledProperties extends AbstractMicrometerTagTest { @@ -77,6 +78,7 @@ public class SpringCloudStreamMicrometerEnvironmentPostProcessorTest { assertThat(context.getEnvironment().getProperty("management.metrics.export.prometheus.enabled")).isEqualTo("true"); assertThat(context.getEnvironment().getProperty("management.metrics.export.prometheus.rsocket.enabled")).isEqualTo("true"); assertThat(context.getEnvironment().getProperty("management.metrics.export.datadog.enabled")).isEqualTo("true"); + assertThat(context.getEnvironment().getProperty("management.metrics.export.wavefront.enabled")).isEqualTo("true"); assertThat(context.getEnvironment().getProperty("management.endpoints.web.exposure.include")).isEqualTo("info,health"); } diff --git a/applications/stream-applications-core/pom.xml b/applications/stream-applications-core/pom.xml index 17e2c87e..179f1116 100644 --- a/applications/stream-applications-core/pom.xml +++ b/applications/stream-applications-core/pom.xml @@ -12,13 +12,13 @@ org.springframework.boot spring-boot-starter-parent - 2.3.0.M4 + 2.3.0.RELEASE 1.8 - 3.0.0.M2 - 2.3.0.M4 + 3.0.0-SNAPSHOT + 2.3.0.RELEASE 2.0.1.M1 2.0.0.M2 3.0.0.M1 @@ -26,7 +26,7 @@ 3.0.2.RELEASE Hoxton.SR2 Horsham.SR2 - 2.1.1.RELEASE + 2.1.2.RELEASE 1.0.0-SNAPSHOT 0.9.0 3.0.1 @@ -251,12 +251,12 @@ org.springframework.cloud.stream.app - stream-apps-security-common + stream-applications-security-common ${stream-apps-core.version} org.springframework.cloud.stream.app - stream-apps-micrometer-common + stream-applications-micrometer-common ${stream-apps-core.version} @@ -267,6 +267,10 @@ io.micrometer micrometer-registry-prometheus + + io.micrometer + micrometer-registry-wavefront + io.micrometer.prometheus prometheus-rsocket-spring