# How to monitor CPU usage by container in DQL?

**URL:** <https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929>\
**Category:** DQL\
**Tags:** dql, dynatrace-managed, container\
**Created:** [August 13, 2025, 9:00am UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929 "2025-08-13T09:00:12Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jmarbaix](https://avatars.discourse-cdn.com/v4/letter/j/73ab20/32.png) [@jmarbaix](https://community.dynatrace.com/u/jmarbaix)\
**Post date:** [August 13, 2025, 9:00am UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929/1 "2025-08-13T09:00:12Z")

</div>

Using the following DQL, I can get the names of containers in a container group:

```markup
fetch dt.entity.container_group_instance
| filter id == "CONTAINER_GROUP_INSTANCE-XXXXXXXXXX"
| fieldsAdd containerNames
| expand containerNames

```

I can also get the CPU usage user time of the container group instance in DQL:

```markup
timeseries { usage_user_time = avg(dt.containers.cpu.usage_user_time) }, filter: { dt.entity.container_group_instance == "CONTAINER_GROUP_INSTANCE-XXXXXXXXXX" }

```

Is there a way in DQL to get this metric by container?

---

<div class="post-metadata">

**Author:** ![p\_devulapalli](https://dub1.discourse-cdn.com/dynatrace/user_avatar/community.dynatrace.com/p_devulapalli/32/41590_2.png) [@p\_devulapalli](https://community.dynatrace.com/u/p_devulapalli)\
**Post date:** [August 13, 2025, 10:57am UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929/2 "2025-08-13T10:57:36Z")

</div>

[@jmarbaix](https://community.dynatrace.com/user/77377)&nbsp;If its the CPU usage you are after , you can try the below

```markup
timeseries avg(dt.kubernetes.container.cpu_usage), 
by: { k8s.container.name, dt.entity.container_group_instance }, 
filter: { matchesValue(dt.entity.container_group_instance, "CONTAINER_GROUP_INSTANCE-xxxx") }
| fieldsAdd dt.entity.container_group_instance.name = entityName(dt.entity.container_group_instance)

```

If its “dt.containers.cpu.usage\_user\_time” metric, then

```markup
timeseries avg(dt.containers.cpu.usage_user_time), 
by: { k8s.container.name, dt.entity.container_group_instance }, 
filter: { matchesValue(dt.entity.container_group_instance, "CONTAINER_GROUP_INSTANCE-xxx") }
| fieldsAdd dt.entity.container_group_instance.name = entityName(dt.entity.container_group_instance)

```

---

<div class="post-metadata">

**Author:** ![jmarbaix](https://avatars.discourse-cdn.com/v4/letter/j/73ab20/32.png) [@jmarbaix](https://community.dynatrace.com/u/jmarbaix)\
**Post date:** [August 13, 2025, 11:05am UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929/3 "2025-08-13T11:05:46Z")

</div>

We are not using k8s containers, but podman containers, so sadly enough your proposed solution doesn’t work.

---

<div class="post-metadata">

**Author:** ![p\_devulapalli](https://dub1.discourse-cdn.com/dynatrace/user_avatar/community.dynatrace.com/p_devulapalli/32/41590_2.png) [@p\_devulapalli](https://community.dynatrace.com/u/p_devulapalli)\
**Post date:** [August 13, 2025, 11:25pm UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929/4 "2025-08-13T23:25:33Z")

</div>

[@jmarbaix](https://community.dynatrace.com/user/77377)&nbsp;I think the second query should still be good with some modifications as its a container metric, can you please try below?

```markup
timeseries avg(dt.containers.cpu.usage_user_time), by: { dt.entity.container_group_instance },
filter: { matchesValue(dt.entity.container_group_instance, "CONTAINER_GROUP_INSTANCE-XXXX") }
| fieldsAdd dt.entity.container_group_instance.name = entityName(dt.entity.container_group_instance)

```

---

<div class="post-metadata">

**Author:** ![Akhil-Jayendran](https://dub1.discourse-cdn.com/dynatrace/user_avatar/community.dynatrace.com/akhil-jayendran/32/153_2.png) [@Akhil-Jayendran](https://community.dynatrace.com/u/Akhil-Jayendran)\
**Post date:** [August 14, 2025, 3:11am UTC](https://community.dynatrace.com/t/how-to-monitor-cpu-usage-by-container-in-dql/52929/5 "2025-08-14T03:11:40Z")

</div>

Hi&nbsp;[@jmarbaix](https://community.dynatrace.com/user/77377)&nbsp;,

The easiest way is to go to the Dynatrace UI, select the container for which you want to get the metric, open Data Explorer from there, and then open a notebook. This will show you the DQL running behind the scenes.

 ![Screenshot 2025-08-13 at 10.04.32 PM.png](https://global.discourse-cdn.com/dynatrace/original/3X/5/9/590cd5fb1c78214521c39bf5c6037194ff142117.png)

 ![Screenshot 2025-08-13 at 10.04.56 PM.png](https://global.discourse-cdn.com/dynatrace/original/3X/7/4/743d556f35dee4a369f852ca7f060582985e8f93.png)

From there, you can adjust&nbsp;the query according to your needs.

Hope this&nbsp;helps?
