|
BDE 4.39.x Production Release
|
Provide an attribute class to describe a metric.
Provide an attribute class to describe a metric.
This component provides a single unconstrained attribute class, bdlm::MetricDescriptor, that is used to supply descriptive information for a metric. A descriptor is supplied to a MetricsRegistry to identify a metric, which in-turn supplies that description to a higher-level metric publication system (like BALM or GUTS) via a concrete implementation of the bdlm::MetricsAdapter protocol.
[1] k_USE_METRICS_ADAPTER_NAMESPACE_SELECTION [2] k_USE_METRICS_ADAPTER_OBJECT_ID_SELECTION
For example, for GUTS (an internal Bloomberg metric framework) using a guta::BdlmMetricsAdapter configured with the namespace "bdlm" and object identifier prefix "svc", supplying (metricNamespace: k_USE_METRICS_ADAPTER_NAMESPACE_SELECTION, metricName: "backlog", instanceNumber: InstanceCount::value<FixedThreadPool>(), objectTypeName: "bdlmt.fixedthreadpool", objectTypeAbbreviation: "ftp", objectIdentifier: _USE_METRICS_ADAPTER_OBJECT_ID_SELECTION) would result in a metric that is within the namespace "bdlm", had the metric name "backlog.g", and the tags {"identifier":"svc.ftp.1","type":"bdlmt.fixedthreadpool"}, assuming this was the first invocation of InstanceCount::value<FixedThreadPool>(). Note that the ".g" in "backlock.g" indicates a guage metric type.
The intended use of this component is illustrated in {bdlm_metricsadapter |Usage}.