This page explains the concept of custom metrics, how we calculate DDUs for custom metrics, and how you can estimate and track DDU consumption for custom metrics.
What is a custom metric?
Custom metrics extend the value of Dynatrace built-in monitoring capabilities by enabling customers to integrate with third-party data sources, calculate custom metrics, send in metrics via API, leverage extensions, and other use cases.
We define custom metrics as any metric that is not included in our list of built-in metrics.
Following is a non-exhaustive list of custom metric types:
- All API-ingested metrics
- Calculated service metrics, custom DEM metrics, and log metrics
- For example, calculated service metrics created upon request attributes
- All metrics derived from Dynatrace Monitoring Extensions excluding the built-in-metrics for extensions.
- All metrics ingested by the Public Cloud Extensions (AWS, Azure and GCP).
- For example, metrics derived from cloud services.
For full details on the setup and ingestion of custom metrics in Dynatrace, see Metric ingestion.
1,000 metrics per host unit are included on each monitored host (in Full-Stack Monitoring mode). These metrics are included with your Full-Stack host units and therefore don't consume DDUs. This concept of included metrics is covered in detail in a later section.
How do we calculate DDU consumption for custom metrics?
A "metric data point" is a single value that is stored with a time stamp in Dynatrace. A timeseries "metric" is a series of such data points, for example CPU utilization for all hosts across an analysis timeframe. A metric can have additional dimensions, for example, the name of a network interface or the name of a disk. Such dimensions effectively result in multiple timeseries, one for each entity (for example, host and application) and dimension (for example, disk and geolocation).
Each data point deducts 0.001 DDU from your available quota.
The following formula is applied to calculate the DDU consumption for a custom metric ingested once per minute:
1 metric data point x 60 min x 24 h x 365 days x 0.001 metric weight = 525.6 DDUs per metric/year
For example, ingesting a throughput metric for a network device once every minute is equivalent to one metric data point. Ingesting a CPU metric from 100 network devices that each have two CPUs once every second is equivalent to
2 CPUs x 100 Devices = 200 metric data points.
Considering the metric weight table, this would result in the consumption of
200 metric data points x 0.001 = 0.2 DDUs.
How do dimensions of a metric impact the DDU consumption?
DDUs are calculated per metric data point, as such this is independent of dimensions. However, if you want to calculate the DDUs based on metric keys alone then you need to take dimensions into account.
For example, let's say you ingest a throughput metric once every minute and it has a dimension for a network interface. In this case you will send a data point for every interface, so you clearly need know how many interfaces you have to understand the DDU consumption.
These examples show how DDU consumption for a simple throughput metric can vary based on the number of hosts and dimensions that the metric is collected for:
2 hosts(in other words, 2 dimensions) equates to
2 x 0.001 = 0.002 DDUs
5 network devices(in other words, 5 dimensions) equates to
5 x 0.001 = 0.005 DDUs
5 network devicesacross 10 hosts equates to
5 x 10 x 0.001 = 0.05 DDUs
Included metrics per host unit
1,000 metrics per host unit are included on each monitored host (in Full-Stack Monitoring mode). These metrics are included with your Full-Stack host units and therefore don't consume DDUs.
- Every OneAgent-monitored host with Full-Stack Monitoring enabled includes 1000 custom metrics per Host Unit (see detail in the table below).
- OneAgent-monitored hosts with Infrastructure Monitoring enabled always include 200 custom metrics that do not consume DDUs.
- All custom metrics that exceed the host's included metrics will consume DDUs.
- If all DDUs in the Metrics pool are used up, then the included metrics per host unit are not available as well.
Note that included metrics are bound to specific hosts that are monitored via OneAgent. This means that only custom metrics that are booked either on the host or a process on the host are considered here. This also includes custom metrics that are booked onto AWS EC2, Azure VM, and VMware virtual machine entities (if those VMs are monitored by OneAgent).
The evaluation of whether a host exceeds the host-included custom metrics limit is based on the total number of metric data points that are reported at a 1-minute frequency (in other words, there's no sliding time window for metrics). When the limit is exceeded for a certain time period, DDUs are only billed for those data points that exceed the limit during the time period.
If a host is licensed based on host hours rather than host units, the mechanism works the same way; you can consume up to the number of host-included metrics per host-unit hour. Each data point above the limit consumes DDUs.
|Host size||Full-Stack mode||Full-Stack mode||Infrastructure mode||Infrastructure mode|
|Based on RAM GB||Host units||Included metrics||Host units||Included metrics|
|N x 16||N||N1 * 1,000||1.0||200|
The minimum of included metrics is always 200, even when N is less than 0.2
Example of how included custom metrics affect DDU consumption
Let's take the following example.
- A host has 16 GB RAM - In other words, 1 host unit
- The host is monitored via the OneAgent in Full-Stack mode
(1 host unit = 1,000 host included metrics)
- 1,500 custom metrics from various extensions and local API Ingest (for example, JMX and RabbitMQ) are booked on this OneAgent-monitored host
- 300 reported metrics via public API with no relation to a OneAgent-monitored host
In this scenario 1000 custom metrics/min are included via the host unit, and the host reports an excess of 500 metrics which will consume DDUs. The 300 Metrics that are reported via the API, and not related to a OneAgent-monitored host, will also consume DDUs. This makes a total of 800 custom metrics/min that consume DDUs.
Here are some other simple scenarios (All values below are based on metrics sent at 1 min intervals.)
|Mode||Host units||Included custom metrics per host unit1||Custom metrics reported for host||Paid custom metrics||Deducted DDUs/min|
Included metrics are bound to individual hosts.
Reported DDUs vs. consumed DDUs
Reported DDUs are defined as all DDUs before any host-included considerations are performed. Consumed DDUs reflect the total "billable" DDUs that get subtracted from your DDU balance.
You can compare the reported DDUs for a specific host with the number of host-included metrics by creating a chart with the Data explorer using the following metrics. This allows you to gain insights into the number of available vs. consumed DDUs for a specific host.
builtin:billing.ddu.includedMetricDduPerHostThis metric is split by host ID. It shows you the host-included DDUs. For example, if a host has 1,000 included metrics, this metric will have a value of 1 (in other words, 1,000 x 0.001)
byEntityRawmetric is split by monitored entity and reflects the total reported DDUs before any host-included considerations are performed.
builtin:billing.ddu.metrics.byEntitySimilar to the
byEntitymetric is split by monitored entity. It reflects the total consumed DDUs (in other words, all consumption above the number of included metrics per host unit). This is equivalent to the information shown on the DDU consumption overview page (see example below).
Recommendations for working with the chart
- As DDU billing is calculated on a per-minute basis (take a look at the DDU consumption for metrics example for more details) it's recommended that you work with a 1-minute resolution in the chart as well.
- Using Split by and Filter by allows you to select a specific host that you're interested in.
The example Data explorer query above shows the following information:
- The purple line reflects the host-included DDUs. In the above example this is 0.25 DDUs (in other words, 250 custom metrics) on a per-minute basis.
- The yellow line reflects the
byEntityRawmetric. It shows the total reported DDUs for a monitored entity, which is filtered by the host. Any DDU consumption exceeding the host-included budget exceeds the purple line threshold.
- The turquoise line reflects the information from the
byEntitymetric. It shows you the total consumed metrics. In the example above the host-included limit is exceeded about every 15 minutes between 09:30 and 10:45, and continuously beginning at 10:45. This results in the consumed DDUs, which are represented by the turquoise line chart.
Please note that data points from the
byEntity metric can be delayed up to a few minutes.
How to estimate needed DDUs for custom metrics
Limited custom metric ingestion and analysis is provided with out-of-the-box Dynatrace technology support in the form of included metrics per host unit. To arrange for additional custom metric ingestion and analysis, contact Dynatrace Sales.
How to track DDU consumption for custom metrics
This section introduces two options for tracking the consumption of DDUs for custom metrics.
The Davis data units overview page
To see how many DDUs your environment has consumed, go to Settings > Accounting > Davis data units overview and select the pool "Metrics". There you can view your DDU consumption and identify the top contributors to DDU consumption.
The Monitored entities tab shows Average DDUs consumption per monitored entity (hosts, services, process groups, applications, or other) per minute. It also shows Consumed DDUs per entity. The number of consumed DDUs shown here is the aggregate of the relevant timeframe, which is displayed above the tabs ( 1 hour by default). This value reflects any included metrics that are based on host units.
Customized dashboards to track consumption
The following use cases explain how to instrument dashboards via Data explorer and provided DDU metrics to track DDU consumption from custom metrics.
Investigate your total DDU consumption from custom metrics
Investigate metric consumption per monitored entity
Investigate metric consumption per monitored metric entitykey
This chart shows you the total of reported DDUs per each metric key.
More information can also be found in the section Reported DDUs vs. consumed DDUs.
All metrics sent via the default OneAgent (host metrics, etc.) are included free of charge and do not consume DDUs. Metrics that are bound to specific hosts (or processes), regardless of source (extension or API), first consume all available included metrics before consuming any additional DDUs.
The following metric types consume DDUs:
|Metric type||Consumes DDUs||Included per host unit|
|Calculated service metrics||Yes||No|
|Calculated log metrics||Yes||Yes|
|Calculated DEM metrics||Yes||No|
|Kubernetes Cluster metrics||No||No|
If you use the REST API to send metrics to a OneAgent monitored host, those metrics will count against your allotment of host-unit included metrics. If metrics are sent to other entities, then those metrics will consume DDUs.
Cloud metrics that are bound to OneAgent-monitored hosts are deducted from your allotment of host-unit included metrics. For example, an EC2 instance metric counts against the host-unit included metrics of that EC2 instance. All other cloud metrics are subject to DDU consumption.
- Any metric that is booked on a monitored host or process group instance as these can be mapped to a specific host.
- Since Dynatrace version 1.203, custom metric ingestion can be booked directly on monitored hosts so that you can take better advantage of included host metrics.
- In a future release, ActiveGate extensions will also be able to book metrics on monitored hosts and thereby take advantage of included host metrics, just as OneAgent extensions do.
No, any metric that is booked on a host (or process), regardless of source (extension or API), will first consume included metrics per host unit (in other words, 1,000 included metrics for Full-Stack Monitoring) before any DDUs are consumed. For details, see metric cost calculation.
No, calculation of host units and host unit hours hasn't changed.
Each data point consumes
1 data point x 60 min x 24 hours x 365 days x 0.001 DDU weight = 525.6 DDUs
No, included metrics are bound to the host units you've already purchased. Those metrics are bound to the specific hosts where OneAgent is installed. There is no longer a global pool that host units contribute to.
Calculated service, web application, mobile app, and Synthetic Monitoring metrics can consume fewer DDUs per data point than expected if some of the servers in the cluster don't make contributions to a given data point. As metric data points are independently generated on each server in the cluster, the recorded consumption per server equals the total consumed DDUs divided by the number of servers. Therefore if, for example, only two of four servers in the cluster write data for a given metric during a given minute, only half of the normal number of DDUs will be consumed during that minute.
The DDU consumption breakdown shown on the Monitored entities and Metrics tabs on the Davis data units overview page (Settings > Accounting > Davis data unit overview) (see image below), as well as the
byMetric metrics in the API, can slightly differ because:
- Breakdown by monitored entity takes into account the included DDUs per host unit, which the breakdown by metric does not.
- Consumption by monitored entities can be delayed up to 10 minutes in comparison to the
byMetricmetrics in the API.
Therefore, for licensing and billing purposes, only the breakdown by monitored entity is considered (breakdown by metric is provided purely for informational purposes).
For metrics not related to a monitored host, consumption per monitored entity and consumption per metric are identical.
Yes, custom metrics via OneAgent extension are covered by included metrics. For Full-Stack Monitoring mode, this means 1,000 included metrics. For Infrastructure mode, this means 200 included metrics.
No, custom devices don't have included metrics. Included metrics are only available for hosts and processes that are monitored by OneAgent.
The following extensions utilize custom devices to ingest metrics: F5, Windows Server, Apigee Edge, SAP, Juniper Network, IBM I, IBM DataPower, Citrix Netscaler, and others.
ActiveGate extensions don't consume host-unit included metrics. Included metrics are only available for hosts and process metrics that are monitored by OneAgent.
The configuration change should only take a few seconds, with no negative impact on your metric consumption.
We recommend that you ingest custom metrics at a 1-minute frequency. When more metric data points per minute are ingested, more DDUs are consumed.
For example, a custom metric ingested at a frequency of 10 seconds is equivalent to
6 data points x 60 min x 24 hours x 365 days x 0.001 DDU weight = 3 153.6 DDUs
Supporting services for AWS and Azure consume DDUs. The logic here is that all metrics that belong to a OneAgent-monitored host are either part of the basic value package (these are not custom metrics) or they count against the included custom metrics that come with each host unit. All other extension or integration metrics consume DDUs.
Yes, you can select which individual AWS and Azure services are monitored. All "supporting services" are available for monitoring on an opt-in basis. Also, by leveraging tag filtering, you can opt-out of monitoring individual "Core services" (those services that are automatically monitored).
Kubernetes nodes are automatically monitored when OneAgent is installed; these metrics are part of our core OneAgent offering and are included per host unit.