From f5ab7e537c72e2a5ab97de67fed154254410217e Mon Sep 17 00:00:00 2001 From: John Blum Date: Wed, 6 Apr 2022 13:11:20 -0700 Subject: [PATCH] Add new apache-geode-micrometer2 module. The apache-geode-micrometer2 module includes integration support for Apache Geode 1.x with Micrometer 2.x. --- .../apache-geode-micrometer2.gradle | 9 ++++ .../instrument/binder/jvm/JvmGcMetrics.java | 42 +++++++++++++++++++ .../binder/jvm/JvmMemoryMetrics.java | 42 +++++++++++++++++++ .../binder/jvm/JvmThreadMetrics.java | 42 +++++++++++++++++++ .../binder/system/FileDescriptorMetrics.java | 42 +++++++++++++++++++ .../binder/system/ProcessorMetrics.java | 42 +++++++++++++++++++ .../binder/system/UptimeMetrics.java | 42 +++++++++++++++++++ 7 files changed, 261 insertions(+) create mode 100644 spring-geode-project/apache-geode-micrometer2/apache-geode-micrometer2.gradle create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmGcMetrics.java create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmMemoryMetrics.java create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmThreadMetrics.java create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/FileDescriptorMetrics.java create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/ProcessorMetrics.java create mode 100644 spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/UptimeMetrics.java diff --git a/spring-geode-project/apache-geode-micrometer2/apache-geode-micrometer2.gradle b/spring-geode-project/apache-geode-micrometer2/apache-geode-micrometer2.gradle new file mode 100644 index 00000000..407fd853 --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/apache-geode-micrometer2.gradle @@ -0,0 +1,9 @@ +apply plugin: 'io.spring.convention.spring-module' + +description = "Integration for Apache Geode and Micrometer 2" + +dependencies { + + implementation "io.micrometer:micrometer-binders" + +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmGcMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmGcMetrics.java new file mode 100644 index 00000000..c4bea0f7 --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmGcMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.jvm; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.jvm.JvmGcMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.jvm.JvmGcMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class JvmGcMetrics extends io.micrometer.binder.jvm.JvmGcMetrics { + + /** + * @inheritDoc + */ + public JvmGcMetrics() { } + + /** + * @inheritDoc + */ + public JvmGcMetrics(Iterable tags) { + super(tags); + } +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmMemoryMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmMemoryMetrics.java new file mode 100644 index 00000000..ed8f07df --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmMemoryMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.jvm; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.jvm.JvmMemoryMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.jvm.JvmMemoryMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class JvmMemoryMetrics extends io.micrometer.binder.jvm.JvmMemoryMetrics { + + /** + * @inheritDoc + */ + public JvmMemoryMetrics() { } + + /** + * @inheritDoc + */ + public JvmMemoryMetrics(Iterable tags) { + super(tags); + } +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmThreadMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmThreadMetrics.java new file mode 100644 index 00000000..c6f0a6c2 --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/jvm/JvmThreadMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.jvm; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.jvm.JvmThreadMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.jvm.JvmThreadMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class JvmThreadMetrics extends io.micrometer.binder.jvm.JvmThreadMetrics { + + /** + * @inheritDoc + */ + public JvmThreadMetrics() { } + + /** + * @inheritDoc + */ + public JvmThreadMetrics(Iterable tags) { + super(tags); + } +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/FileDescriptorMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/FileDescriptorMetrics.java new file mode 100644 index 00000000..f658db9d --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/FileDescriptorMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.system; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.system.FileDescriptorMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.system.FileDescriptorMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class FileDescriptorMetrics extends io.micrometer.binder.system.FileDescriptorMetrics { + + /** + * @inheritDoc + */ + public FileDescriptorMetrics() { } + + /** + * @inheritDoc + */ + public FileDescriptorMetrics(Iterable tags) { + super(tags); + } +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/ProcessorMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/ProcessorMetrics.java new file mode 100644 index 00000000..15b9b1a7 --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/ProcessorMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.system; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.system.FileDescriptorMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.system.ProcessorMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class ProcessorMetrics extends io.micrometer.binder.system.ProcessorMetrics { + + /** + * @inheritDoc + */ + public ProcessorMetrics() { } + + /** + * @inheritDoc + */ + public ProcessorMetrics(Iterable tags) { + super(tags); + } +} diff --git a/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/UptimeMetrics.java b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/UptimeMetrics.java new file mode 100644 index 00000000..74559e1b --- /dev/null +++ b/spring-geode-project/apache-geode-micrometer2/src/main/java/io/micrometer/core/instrument/binder/system/UptimeMetrics.java @@ -0,0 +1,42 @@ +/* + * Copyright 2017-present 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. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ +package io.micrometer.core.instrument.binder.system; + +import io.micrometer.core.instrument.Tag; + +/** + * Extension of {@link io.micrometer.binder.system.UptimeMetrics} for adapting and repackaging purposes + * as required by Apache Geode 1.x, which is based on Micrometer 1.x. + * + * @author John Blum + * @see io.micrometer.binder.system.UptimeMetrics + * @since 2.0.0 + */ +@SuppressWarnings("unused") +public class UptimeMetrics extends io.micrometer.binder.system.UptimeMetrics { + + /** + * @inheritDoc + */ + public UptimeMetrics() { } + + /** + * @inheritDoc + */ + public UptimeMetrics(Iterable tags) { + super(tags); + } +}