Events-api Concepts: Difference between revisions
Line 65: | Line 65: | ||
==Relationship between a Metric Definition and a Metric Source== | ==Relationship between a Metric Definition and a Metric Source== | ||
A [[#Metric_Source|metric source]] receives a [[#Metric_Defintion|metric defintion]] and if the source recognizes the definitions, return a value (reading) associated with that definition, in form of a [[#Property|property]] | A [[#Metric_Source|metric source]] receives a [[#Metric_Defintion|metric defintion]] and if the source recognizes the definitions, return a value (reading) associated with that definition, in form of a [[#Property|property]]: | ||
<syntaxhighlight lang='java'> | |||
List<Property> collectMetrics(List<MetricDefinition> metricDefinitions) throws MetricException; | |||
</syntaxhighlight> | |||
Revision as of 02:31, 26 July 2017
Internal
Property
Metric Source
Metric Source Address
OS
Local OS
Remote OS
Valid addresses:
ssh://username@hostaddress:port
"ssh://" protocol implied:
username@hostaddress:port
JBoss Management Controller
jbosscli://admin@1.2.3.4:9999/
"jbosscli://" implied:
admin@1.2.3.4:9999/
The default value, if not specified, is "localhost:9999".
JMX Bus
jmx://admin:adminpasswd@1.2.3.4:2345
Classpath.
Metric Definition
A metric definition is an instance that contains all the information a metric source needs in order to extract a value (reading) for a specific metric.
Metric Definition ID
The metric definition has an ID which uniquely identifies the metric to a metric source. The ID must not include anything that ties that ID to a specific metric source. The same ID can be given to different metric sources, and each metric source will return a different value of the metric. For example, "PhysicalMemoryTotal" uniquely identifies the total physical memory metric in the context of a local or remote operating system instance, "java.lang:type=Threading.ThreadCount" uniquely identifies the JVM thread count metric in the context of a JVM's platform MBean server and "/subsystem=messaging/hornetq-server=default/jms-queue=DLQ:message-count" uniquely identifies the DLQ queue depth metric for a specific broker node, managed by a JBoss management controller.
Metric Source Address
A specific instance of a metric definition can be associated with a metric source via the metric source address.
Relationship between a Metric Definition and a Metric Source
A metric source receives a metric defintion and if the source recognizes the definitions, return a value (reading) associated with that definition, in form of a property:
List<Property> collectMetrics(List<MetricDefinition> metricDefinitions) throws MetricException;
OS Metric Defintion
Local:
PhysicalMemoryFree
Remote:
ssh://test-remote-host:22/PhysicalMemoryFree
JBoss CLI Metric Defintion
Default (implies the default local jboss instance):
/subsystem=messaging/hornetq-server=default/jms-queue=DLQ/message-count
Remote:
jbosscli://admin:adminpasswd@1.2.3.4:9999/subsystem=messaging/hornetq-server=default/jms-queue=DLQ/message-count
JMX Metric Defintion
jmx://admin:adminpasswd@1.2.3.4:2345/jboss.as:subsystem=messaging,hornetq-server=default,jms-queue=DLQ/messageCount