# Dynatrace metrics mapping

This page describes the mapping between metrics provided by Dynatrace to Akamas metrics for each supported component type.

| Component Type                                                     | Notes |
| ------------------------------------------------------------------ | ----- |
| [Linux](#linux)                                                    |       |
| [JVM](#jvm)                                                        |       |
| [Web Application](#web-application)                                |       |
| [Kubernetes Container](#kubernetes-container-and-docker-container) |       |
| [Kubernetes Pod](#kubernetes-pod)                                  |       |
| [Docker Container](#kubernetes-container-and-docker-container)     |       |

## Linux

<table data-full-width="true"><thead><tr><th>Component metric</th><th>Labels</th><th>Static labels</th><th>Dynatrace metric</th><th>Scale</th></tr></thead><tbody><tr><td>cpu_load_avg</td><td></td><td></td><td><code>builtin:host.cpu.load</code></td><td></td></tr><tr><td>cpu_num</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>cpu_util</td><td></td><td></td><td><code>builtin:host.cpu.usage</code></td><td>0.01</td></tr><tr><td>cpu_util_details</td><td></td><td><p>mode:</p><ul><li><code>idle</code></li><li><code>user</code></li><li><code>system</code></li><li><code>iowait</code></li></ul></td><td><ul><li><code>builtin:host.cpu.idle</code> (mode=<code>idle</code>)</li><li><code>builtin:host.cpu.system</code> (mode=<code>system</code>)</li><li><code>builtin:host.cpu.user</code> (mode=<code>user</code>)</li><li><code>builtin:host.cpu.iowait</code> (mode=<code>iowait</code>)</li></ul></td><td>0.01</td></tr><tr><td>mem_util</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_util_nocache</td><td></td><td></td><td><code>builtin:host.mem.usage</code></td><td>0.01</td></tr><tr><td>mem_util_details</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_used</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_used_nocache</td><td></td><td></td><td><code>builtin:host.mem.used</code></td><td></td></tr><tr><td>mem_total</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_fault</td><td></td><td></td><td><code>builtin:host.mem.avail</code>.pfps</td><td></td></tr><tr><td>mem_fault_minor</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_fault_major</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_swapins</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>mem_swapouts</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_swap_util</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_swap_used</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>filesystem_util</td><td><ul><li>Disk</li></ul></td><td></td><td><code>builtin:host.disk.usedPct</code></td><td></td></tr><tr><td>filesystem_used</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>filesystem_size</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_util_details</td><td><ul><li>Disk</li></ul></td><td></td><td><code>builtin:host.disk.free</code></td><td>0.01</td></tr><tr><td>disk_iops_writes</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_iops_reads</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_iops</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_iops_details</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_response_time_worst</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_response_time</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_io_inflight_details</td><td></td><td></td><td>N/A</td><td>0.01</td></tr><tr><td>disk_write_bytes</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_read_bytes</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_read_write_bytes</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>disk_write_bytes_details</td><td><ul><li>Disk</li></ul></td><td></td><td><code>builtin:host.disk.bytesWritten</code></td><td></td></tr><tr><td>disk_read_bytes_details</td><td><ul><li>Disk</li></ul></td><td></td><td><code>builtin:host.disk.bytesRead</code></td><td></td></tr><tr><td>disk_response_time_details</td><td><ul><li>Disk</li></ul></td><td></td><td><code>builtin:host.disk.readTime</code></td><td>0.001</td></tr><tr><td>proc_blocked</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>os_context_switch</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>network_tcp_retrans</td><td></td><td></td><td>N/A</td><td></td></tr><tr><td>network_in_bytes_details</td><td><ul><li>Network interface</li></ul></td><td></td><td><code>builtin:host.net.nic.bytesRx</code></td><td></td></tr><tr><td>network_out_bytes_details</td><td><ul><li>Network interface</li></ul></td><td></td><td><code>builtin:host.net.nic.bytesTx</code></td><td></td></tr></tbody></table>

## JVM

<table data-full-width="true"><thead><tr><th>Component metric</th><th>Dynatrace metric</th><th>Scale</th><th>Aggregate multiple Dynatrace entities</th><th>Multiple entitites aggregation</th></tr></thead><tbody><tr><td>jvm_gc_count</td><td><code>builtin:tech.jvm.memory.pool.collectionCount:merge(poolname,gcname):sum</code></td><td>1/60</td><td>Yes</td><td>avg</td></tr><tr><td>jvm_gc_time</td><td><code>builtin:tech.jvm.memory.gc.suspensionTime</code></td><td>0.01</td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_size</td><td><code>builtin:tech.jvm.memory.runtime.max</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_committed</td><td><pre><code>builtin:tech.jvm.memory.pool.committed:filter(ne(poolname,Metaspace),ne(poolname,Code Cache),ne(poolname,CodeHeap 'non-nmethods'),ne(poolname,CodeHeap 'non-profiled nmethods'),ne(poolname,CodeHeap 'profiled nmethods'),ne(poolname,Compressed Class Space),ne(poolname,class storage),ne(poolname,miscellaneous non-heap storage),ne(poolname,JIT code cache),ne(poolname,JIT data cache)):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_used</td><td><pre><code>builtin:tech.jvm.memory.pool.used:filter(ne(poolname,Metaspace),ne(poolname,Code Cache),ne(poolname,CodeHeap 'non-nmethods'),ne(poolname,CodeHeap 'non-profiled nmethods'),ne(poolname,CodeHeap 'profiled nmethods'),ne(poolname,Compressed Class Space),ne(poolname,class storage),ne(poolname,miscellaneous non-heap storage),ne(poolname,JIT code cache),ne(poolname,JIT data cache)):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_off_heap_used</td><td><pre><code>builtin:tech.jvm.memory.pool.used:filter(or(eq(poolname,Metaspace),eq(poolname,Code Cache),eq(poolname,CodeHeap 'non-nmethods'),eq(poolname,CodeHeap 'non-profiled nmethods'),eq(poolname,CodeHeap 'profiled nmethods'),eq(poolname,Compressed Class Space),eq(poolname,class storage),eq(poolname,miscellaneous non-heap storage),eq(poolname,JIT code cache),eq(poolname,JIT data cache))):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_old_gen_size</td><td><pre><code>builtin:tech.jvm.memory.pool.max:filter(or(eq(poolname,CMS Old Gen),eq(poolname,G1 Old Gen),eq(poolname,PS Old Gen),eq(poolname,Tenured Gen),eq(poolname,tenured-LOA),eq(poolname,tenured-SOA))):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_old_gen_used</td><td><pre><code>builtin:tech.jvm.memory.pool.used:filter(or(eq(poolname,CMS Old Gen),eq(poolname,G1 Old Gen),eq(poolname,PS Old Gen),eq(poolname,Tenured Gen),eq(poolname,tenured-LOA),eq(poolname,tenured-SOA))):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_young_gen_size</td><td><pre><code>builtin:tech.jvm.memory.pool.max:filter(or(eq(poolname,Eden Space),eq(poolname,G1 Survivor Space),eq(poolname,Par Eden Space),eq(poolname,Par Survivor Space),eq(poolname,PS Eden Space),eq(poolname,PS Survivor Space),eq(poolname,nursery-survivor),eq(poolname,nursery-allocate))):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_heap_young_gen_used</td><td><pre><code> builtin:tech.jvm.memory.pool.used:filter(or(eq(poolname,Eden Space),eq(poolname,G1 Survivor Space),eq(poolname,Par Eden Space),eq(poolname,Par Survivor Space),eq(poolname,PS Eden Space),eq(poolname,PS Survivor Space),eq(poolname,nursery-survivor),eq(poolname,nursery-allocate))):merge(poolname):sum
</code></pre></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>jvm_threads_current</td><td><code>builtin:tech.jvm.threads.count</code></td><td></td><td>Yes</td><td>avg</td></tr></tbody></table>

## Web Application

<table data-full-width="true"><thead><tr><th>Component metric</th><th>Dynatrace metric</th><th>Default Value</th><th>Scale</th></tr></thead><tbody><tr><td>requests_response_time</td><td><code>builtin:service.response.time</code></td><td>0</td><td>0.000001</td></tr><tr><td>requests_response_time_min</td><td><code>builtin:service.response.time:min</code></td><td>0</td><td>0.000001</td></tr><tr><td>requests_response_time_max</td><td><code>builtin:service.response.time:max</code></td><td>0</td><td>0.000001</td></tr><tr><td>requests_throughput</td><td><code>builtin:service.errors.total.successCount</code></td><td>0</td><td>1/60</td></tr><tr><td>requests_error_rate</td><td><code>builtin:service.errors.total.rate</code></td><td>0</td><td>0.01</td></tr><tr><td>requests_response_time_p50</td><td><code>builtin:service.response.time:percentile(50)</code></td><td>0</td><td>0.001</td></tr><tr><td>requests_response_time_p85</td><td><code>builtin:service.response.time:percentile(85)</code></td><td>0</td><td>0.001</td></tr><tr><td>requests_response_time_p90</td><td><code>builtin:service.response.time:percentile(90)</code></td><td>0</td><td>0.001</td></tr><tr><td>requests_response_time_p95</td><td><code>builtin:service.response.time:percentile(95)</code></td><td>0</td><td>0.001</td></tr><tr><td>requests_response_time_p99</td><td><code>builtin:service.response.time:percentile(99)</code></td><td>0</td><td>0.001</td></tr></tbody></table>

## Kubernetes Container and Docker Container

<table data-full-width="true"><thead><tr><th>Component Metric</th><th>Dynatrace Metric</th><th>Scale</th><th>Aggregate multiple Dynatrace entities</th><th>Multiple entitites aggregation</th></tr></thead><tbody><tr><td>container_cpu_limit</td><td><code>builtin:containers.cpu.limit</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>container_cpu_util</td><td><code>builtin:containers.cpu.usagePercent</code></td><td>0.01</td><td>Yes</td><td>avg</td></tr><tr><td>container_cpu_util_max</td><td><code>builtin:containers.cpu.usagePercent</code></td><td>0.01</td><td>Yes</td><td>max</td></tr><tr><td>container_cpu_throttled_millicores</td><td><code>builtin:containers.cpu.throttledMilliCores</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>container_cpu_throttle_time</td><td><code>builtin:containers.cpu.throttledTime</code></td><td>1 / 10^9 / 60</td><td>Yes</td><td>avg</td></tr><tr><td>container_cpu_used</td><td><code>builtin:containers.cpu.usageMilliCores</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>container_cpu_used_max</td><td><code>builtin:containers.cpu.usageMilliCores</code></td><td></td><td>Yes</td><td>max</td></tr><tr><td>container_memory_limit</td><td><code>builtin:containers.memory.limitBytes</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>container_memory_used</td><td><code>builtin:containers.memory.residentSetBytes</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>container_memory_used_max</td><td><code>builtin:containers.memory.residentSetBytes</code></td><td></td><td>Yes</td><td>max</td></tr><tr><td>container_memory_util</td><td><code>builtin:containers.memory.usagePercent</code></td><td>0.01</td><td>Yes</td><td>avg</td></tr><tr><td>container_memory_util_max</td><td><code>builtin:containers.memory.usagePercent</code></td><td>0.01</td><td>Yes</td><td>max</td></tr><tr><td>container_oom_kills_count</td><td><code>builtin:containers.memory.outOfMemoryKills</code></td><td>1/60</td><td>Yes</td><td>avg</td></tr></tbody></table>

## Kubernetes Pod

<table data-full-width="true"><thead><tr><th>Component Metric</th><th>Dynatrace Metric</th><th>Default Value</th><th>Aggregate multiple Dynatrace entities</th><th>Multiple entitites aggregation</th></tr></thead><tbody><tr><td>k8s_pod_cpu_limit</td><td><code>builtin:cloud.kubernetes.pod.cpuLimits</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>k8s_pod_cpu_request</td><td><code>builtin:cloud.kubernetes.pod.cpuRequests</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>k8s_pod_memory_limit</td><td><code>builtin:cloud.kubernetes.pod.memoryLimits</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>k8s_pod_memory_request</td><td><code>builtin:cloud.kubernetes.pod.memoryRequests</code></td><td></td><td>Yes</td><td>avg</td></tr><tr><td>k8s_pod_restarts</td><td><code>builtin:kubernetes.container.restarts:merge(k8s.container.name):sum</code></td><td>0</td><td>Yes</td><td>avg</td></tr></tbody></table>

## Kubernetes workload

<table data-full-width="true"><thead><tr><th>Component Metric</th><th>Dynatrace Metric</th><th>Scale</th><th>Aggregate multiple Dynatrace entities</th><th>Multiple entitites aggregation</th></tr></thead><tbody><tr><td>k8s_workload_desired_pods</td><td><code>builtin:kubernetes.workload.pods_desired</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_running_pods</td><td><code>builtin:kubernetes.pods:filter(eq(pod_phase,Running))</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_cpu_limit</td><td><code>builtin:kubernetes.workload.limits_cpu</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_cpu_request</td><td><code>builtin:kubernetes.workload.requests_cpu</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_memory_limit</td><td><code>builtin:kubernetes.workload.limits_memory</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_memory_request</td><td><code>builtin:kubernetes.workload.requests_memory</code></td><td></td><td>No</td><td></td></tr><tr><td>k8s_workload_cpu_used</td><td><code>builtin:containers.cpu.usageMilliCores</code></td><td></td><td>Yes</td><td>sum</td></tr><tr><td>k8s_workload_memory_used</td><td><code>builtin:containers.memory.residentSetBytes</code></td><td></td><td>Yes</td><td>sum</td></tr></tbody></table>
