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 e2cc32a809457e92d35ed8a10f54b168a1db2e24 Merge: df27f26 a6db167 Author: Udo <[email protected]> AuthorDate: Tue Mar 20 15:28:24 2018 -0700 A commit that I can demo. .../bean/stats/RegionStatsJUnitTest.java | 1 + .../statistics/TimedMicrometerClientStatsImpl.kt | 29 ++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --cc geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/TimedMicrometerClientStatsImpl.kt index 0000000,0000000..e9acac4 new file mode 100644 --- /dev/null +++ b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/TimedMicrometerClientStatsImpl.kt @@@ -1,0 -1,0 +1,29 @@@ ++package org.apache.geode.internal.protocol.protobuf.statistics ++ ++import io.micrometer.core.instrument.MeterRegistry ++import io.micrometer.core.instrument.Tag ++import io.micrometer.core.instrument.Timer ++import org.apache.geode.internal.cache.CachePerfStats ++import org.apache.geode.internal.cache.MicroMeterRegistryFactory ++import java.util.concurrent.TimeUnit ++import java.util.concurrent.atomic.AtomicInteger ++ ++class TimedMicrometerClientStatsImpl(meterRegistry: MeterRegistry) : MicrometerClientStatsImpl(meterRegistry) { ++ ++ constructor() : this(MicroMeterRegistryFactory.getMeterRegistry()) ++ ++ private fun constructTimerForMetric(metricName: String): Timer = ++ meterRegistry.timer("${metricName}Latency", emptyList()) ++ ++ private val operationTimer = constructTimerForMetric("operation") ++ ++ override fun startOperation(): Long = CachePerfStats.getStatTime() ++ ++ override fun endOperation(startOperationTime: Long) { ++ updateTimer(startOperationTime, operationTimer) ++ } ++ ++ private fun updateTimer(startTimeInNanos: Long, timer: Timer) { ++ timer.record((System.nanoTime() - startTimeInNanos), TimeUnit.NANOSECONDS) ++ } ++} -- To stop receiving notification emails like this one, please contact [email protected].
