This is an automated email from the ASF dual-hosted git repository.

udo pushed a commit to branch micrometer
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 6859a2366b8062e1767eb9ae68bc6e83f78c79ff
Author: Udo Kohlmeyer <[email protected]>
AuthorDate: Wed Jan 3 09:49:54 2018 -0800

    Changing counter to gauge
---
 .../statistics/MicrometerClientStatsImpl.kt        | 31 ++++++++++------------
 1 file changed, 14 insertions(+), 17 deletions(-)

diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
 
b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
index bb95d6a..b726ed3 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
@@ -1,19 +1,18 @@
 package org.apache.geode.internal.protocol.protobuf.statistics
 
-import com.netflix.spectator.atlas.AtlasConfig
-import io.micrometer.atlas.AtlasMeterRegistry
 import io.micrometer.core.instrument.Clock
 import io.micrometer.core.instrument.MeterRegistry
 import io.micrometer.core.instrument.composite.CompositeMeterRegistry
-import io.micrometer.core.instrument.util.HierarchicalNameMapper
-import io.micrometer.graphite.GraphiteConfig
-import io.micrometer.graphite.GraphiteMeterRegistry
 import io.micrometer.influx.InfluxConfig
 import io.micrometer.influx.InfluxMeterRegistry
 import org.apache.geode.internal.protocol.statistics.ProtocolClientStatistics
 import java.time.Duration
+import java.util.concurrent.atomic.AtomicInteger
 
 class MicrometerClientStatsImpl : ProtocolClientStatistics {
+
+    private val clientsConnected = AtomicInteger(0)
+
     private val influxMetrics: MeterRegistry = InfluxMeterRegistry(object : 
InfluxConfig {
         override fun step(): Duration = Duration.ofSeconds(10)
         override fun db(): String = "mydb"
@@ -21,34 +20,32 @@ class MicrometerClientStatsImpl : ProtocolClientStatistics {
         override fun uri(): String = "http://localhost:8086";
     }, Clock.SYSTEM)
 
-    private val atlasMetrics: MeterRegistry = AtlasMeterRegistry(object : 
AtlasConfig {
-        override fun get(k: String?): String? = null
-        override fun enabled(): Boolean = true
-        override fun uri(): String = "http://localhost:7101/api/v1/publish";
-        override fun step(): Duration = Duration.ofSeconds(10)
-    }, Clock.SYSTEM)
+//    private val atlasMetrics: MeterRegistry = AtlasMeterRegistry(object : 
AtlasConfig {
+//        override fun get(k: String?): String? = null
+//        override fun enabled(): Boolean = true
+//        override fun uri(): String = "http://localhost:7101/api/v1/publish";
+//        override fun step(): Duration = Duration.ofSeconds(10)
+//    }, Clock.SYSTEM)
 
     private val metrics = CompositeMeterRegistry(Clock.SYSTEM)
 
     init {
         metrics.add(influxMetrics)
-        metrics.add(atlasMetrics)
+//        metrics.add(atlasMetrics)
     }
 
-    val clientConnectedCounter = metrics.counter("clientConnected")
+    val clientConnectedCounter = metrics.gauge("clientConnected", 
clientsConnected)
     val messageReceivedCounter = metrics.counter("messageReceived")
     val messageSentCounter = metrics.counter("messageSent")
     val authorizationViolationsCounter = 
metrics.counter("authorizationViolations")
     val authenticationFailureCounter = 
metrics.counter("authenticationFailures")
 
     override fun clientConnected() {
-        System.err.println("Increment Counter")
-        clientConnectedCounter.increment()
+        clientsConnected.incrementAndGet()
     }
 
     override fun clientDisconnected() {
-        System.err.println("Decrement Counter")
-        clientConnectedCounter.increment(-1.0)
+        clientsConnected.decrementAndGet()
     }
 
     override fun messageReceived(bytes: Int) {

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to