diff options
author | Piotr Jaszczyk <piotr.jaszczyk@nokia.com> | 2018-12-17 12:59:49 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2018-12-17 12:59:49 +0000 |
commit | fb040c0df8ab2b74d02b67feda4e2a161a1311d2 (patch) | |
tree | 2eee93d6fc20b29d63597dc4793dd0b55d245cc1 /sources/hv-collector-main/src/main | |
parent | bca686a94396f704ecca299d7fe2be861a46557f (diff) | |
parent | 8952e9970470b683773bfe3a8f40a10881a3f321 (diff) |
Merge "Add metrics for dropped messages"
Diffstat (limited to 'sources/hv-collector-main/src/main')
-rw-r--r-- | sources/hv-collector-main/src/main/kotlin/org/onap/dcae/collectors/veshv/main/metrics/MicrometerMetrics.kt | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/sources/hv-collector-main/src/main/kotlin/org/onap/dcae/collectors/veshv/main/metrics/MicrometerMetrics.kt b/sources/hv-collector-main/src/main/kotlin/org/onap/dcae/collectors/veshv/main/metrics/MicrometerMetrics.kt index cf903591..18678ff3 100644 --- a/sources/hv-collector-main/src/main/kotlin/org/onap/dcae/collectors/veshv/main/metrics/MicrometerMetrics.kt +++ b/sources/hv-collector-main/src/main/kotlin/org/onap/dcae/collectors/veshv/main/metrics/MicrometerMetrics.kt @@ -29,6 +29,7 @@ import io.micrometer.core.instrument.binder.system.ProcessorMetrics import io.micrometer.prometheus.PrometheusConfig import io.micrometer.prometheus.PrometheusMeterRegistry import org.onap.dcae.collectors.veshv.boundary.Metrics +import org.onap.dcae.collectors.veshv.model.MessageDropCause /** @@ -42,7 +43,16 @@ class MicrometerMetrics internal constructor( private val receivedBytes = registry.counter(name(DATA, RECEIVED, BYTES)) private val receivedMsgCount = registry.counter(name(MESSAGES, RECEIVED, COUNT)) private val receivedMsgBytes = registry.counter(name(MESSAGES, RECEIVED, BYTES)) - private val sentCountTotal = registry.counter(name(MESSAGES, SENT, COUNT)) + private val sentCountTotal = registry.counter(name(MESSAGES, SENT, COUNT, TOTAL)) + private val droppedCountTotal = registry.counter(name(MESSAGES, DROPPED, COUNT, TOTAL)) + + private val sentCount = { topic: String -> + registry.counter(name(MESSAGES, SENT, COUNT, TOPIC), TOPIC, topic) + }.memoize<String, Counter>() + + private val droppedCount = { cause: String -> + registry.counter(name(MESSAGES, DROPPED, COUNT, CAUSE), CAUSE, cause) + }.memoize<String, Counter>() init { registry.gauge(name(MESSAGES, PROCESSING, COUNT), this) { @@ -55,10 +65,6 @@ class MicrometerMetrics internal constructor( JvmThreadMetrics().bindTo(registry) } - private val sentCount = { topic: String -> - registry.counter("hvves.messages.sent.topic.count", "topic", topic) - }.memoize<String, Counter>() - val metricsProvider = MicrometerPrometheusMetricsProvider(registry) override fun notifyBytesReceived(size: Int) { @@ -75,6 +81,11 @@ class MicrometerMetrics internal constructor( sentCount(topic).increment() } + override fun notifyMessageDropped(cause: MessageDropCause) { + droppedCountTotal.increment() + droppedCount(cause.tag).increment() + } + companion object { val INSTANCE = MicrometerMetrics() internal const val PREFIX = "hvves" @@ -85,6 +96,11 @@ class MicrometerMetrics internal constructor( internal const val DATA = "data" internal const val SENT = "sent" internal const val PROCESSING = "processing" + internal const val TOPIC = "topic" + internal const val DROPPED = "dropped" + internal const val CAUSE = "cause" + internal const val TOTAL = "total" + fun name(vararg name: String) = "$PREFIX.${name.joinToString(".")}" } } |