Managing Metrics

This connector uses Spring Boot Metrics that leverages Micrometer to manage its metrics.

Connector Meters

In addition to the meters already provided by the Spring framework, this connector introduces the following custom meters:

Name Type Tags Description Notes

solace.connector.process

Timer

type: channel name: <bindingName>

result: (success|failure)

exception:

(none|exception simple class name)

The processing time.

This meter is a rename of spring.integration.send whose name tag matches a binding name.

solace.connector.error.process

Timer

type: channel name: <bindingNames>

result: (success|failure)

exception:

(none|exception simple class name)

The error processing time.

This meter is a rename of spring.integration.send whose name tag matches an input binding’s error channel name (<destination>.<group>.errors).

Meters might be merged under the same name tag (delimited by |) if multiple bindings have the same error channel name (for example, bindings can have a :matching destination, groupor both).

Setting a binding's group is not supported.

solace.connector.message.size.payload

DistributionSummary

Base Units: bytes

name: <bindingName>

The message payload size.

 

solace.connector.message.size.total

DistributionSummary

Base Units: bytes

name: <bindingName>

The total message

size.

 

solace.connector.publish.ack

Counter

Base Units:

acknowledgments

name: <bindingName>

result: (success|failure)

exception:

(none|exception simple class name)

The publish acknowledgment count.

 

The solace.connector.process meter with result=failure is not a reliable measure of tracking the number of failed messages. It only tells you how many times a step processed a message, how long it took to process that message, and if that step completed successfully.

Instead, we recommend that you use a combination of solace.connector.error.process and solace.connector.publish.ack to track failed messages.

Adding a Monitoring System

By default, this connector only includes JMX as its supported monitoring system.

To add additional monitoring systems, add the system’s micrometer-registry-<system> JAR file and its dependency JAR files to the connector’s classpath, see Adding External Libraries. The included systems can then be individually enabled/disabled by setting one of the following based on the version of the connector in the application.yml file:

  • For versions 2.0.0 and later: management.<system>metrics.export.enabled=true
  • For versions earlier than 2.0.0: management.metrics.export.<system>.enabled=true