Supported telemetry types
The OpenMetrics CXDOT Collector integration supports these telemetry types:Prerequisites
The OpenMetrics CXDOT Collector integration has the following prerequisites:- Make each OpenMetrics or Prometheus endpoint reachable from the CXDOT collector.
- Identify the metric names to collect from each endpoint.
Configure
To configure the OpenMetrics CXDOT Collector integration, follow these steps:- Configure autodiscovery so the CXDOT collector discovers the endpoints you want to scrape. For each target, provide the full metrics endpoint URL and the metrics to collect. For more information, see autodiscovery.
-
Optional: Configure static targets when you want to scrape a fixed list of endpoints
instead of using autodiscovery. For example, add the following to the
values.yamlfor your Helm chart:Whenscrape.endpointsisn’t empty, this integration instance collects from exactly those endpoints and doesn’t collect from targets found through autodiscovery.
Validate
To validate the OpenMetrics CXDOT Collector integration, follow these steps:-
In Metrics Explorer, run the following query:
Confirm that each target reports
1. -
In the Live Telemetry Analyzer, filter for
cxdot.integration.name=openmetrics. Confirm that the metric names you configured appear. -
When you configured static targets, run the following query in Metrics Explorer:
Confirm that the query returns the expected time series for each static target.
Configuration reference
Configure one OpenMetrics integration instance with the following settings. In Helm values, place these settings underconfig.integrations.openmetrics. In a Collector configuration file,
place them under cxdot.integrations.openmetrics.
Optional settings
-
enabledType:boolean. Optional. Default:true. Whether to run the OpenMetrics integration. If true, the Collector collects metrics from configured or discovered endpoints. If false, the Collector doesn’t run this integration. -
scrapeType:object. Optional. Settings for collecting metrics from OpenMetrics endpoints. -
scrape.enabledType:boolean. Optional. Default:true. Whether to collect OpenMetrics metrics. If true, the Collector collects metrics from configured or discovered endpoints. If false, it doesn’t collect OpenMetrics metrics. -
scrape.endpointsType:array of object. Optional. Default:[]. Static OpenMetrics endpoints. Each entry identifies one target and the metrics to collect from it. When this list isn’t empty, the integration collects from exactly these endpoints instead of endpoints found through discovery annotations. -
scrape.endpoints[].endpointType:string. Required. Full URL of the metrics endpoint, for examplehttps://app.svc:9090/metrics?format=text. Metric collection uses the path and query exactly as given. -
scrape.endpoints[].namespaceType:string. Optional. Default: “. A name recorded on every time series from this endpoint, as thecxdot.openmetrics.namespaceresource attribute. Metric names stay exactly as the target exposes them, so this groups an endpoint’s telemetry without changing what its metrics are called. -
scrape.endpoints[].serviceType:string. Optional. Default: “. Overrides theservice.nameresource attribute for this endpoint. -
scrape.endpoints[].metricsType:object. Required. Which metrics to collect, and how to reshape them. -
scrape.endpoints[].metrics.includeType:array of string. Required. Minimum items:1. Target metrics to collect. The integration always collects its health and collection status metrics. Each entry is a regular expression matched against the metric name. Type suffixes are not part of the name: a counter exposed asrequests_totalis collected asrequests, because OpenMetrics calls that familyrequestsand carries the type separately. To collect every target metric, use".*". -
scrape.endpoints[].metrics.excludeType:array of string. Optional. Default:[]. Target metrics to exclude from the metrics selected byinclude. Each entry is a regular expression matched against the metric name. Health and collection status metrics aren’t excluded. -
scrape.endpoints[].metrics.renameType:object. Optional. Default:{}. Metric renames, as{old: new}. Only an exact name can be renamed. The integration ignores a rename whose key is a regular expression. -
scrape.endpoints[].metrics.typesType:object. Optional. Default:{}. Metric type overrides, as{name: counter}. Keys are exact metric names or regular expressions. Values arecounterorgauge. A metric without a declared type is otherwise read as a gauge. -
scrape.endpoints[].metrics.strip_prefixType:string. Optional. Default: “. A prefix removed from every metric name during collection. Removed first, so every other option here,includeincluded, refers to the shortened name. -
scrape.endpoints[].labelsType:object. Optional. Settings for renaming labels and dropping samples. -
scrape.endpoints[].labels.renameType:object. Optional. Default:{}. Label renames, as{old: new}. A rename changes the label name without removing the label, so distinct time series remain distinct. Renaming a label to a name the time series already has overwrites that label’s value. -
scrape.endpoints[].labels.sample_drop_rulesType:object. Optional. Default:{}. Drops a whole sample when one of its labels matches. Each key is a label name. The value is a list of regular expressions matched against the label’s value. To drop every sample the label appears on with a non-empty value, use".+". -
scrape.endpoints[].tagsType:array of string. Optional. Default:[]. Extra resource attributes inkey:valueformat to add to every time series from this endpoint. The integration ignores an entry without a colon. -
scrape.endpoints[].intervalType:duration. Optional. Default:15s. Time between metric collections from this endpoint. -
scrape.endpoints[].timeoutType:duration. Optional. Default:10s. Maximum time to wait for each metric collection. -
scrape.endpoints[].max_samplesType:integer. Optional. Default:0. Maximum number of samples accepted from one metric collection. A value of0, the default, means no limit. A collection that exceeds the limit fails and reportsupas0instead of returning an incomplete set of samples. -
scrape.endpoints[].follow_redirectsType:boolean. Optional. Default:true. Whether to follow HTTP redirects. If true, the Collector follows redirects. If false, a redirect causes the metric collection to fail.