question

Rion C. avatar image
Rion C. asked ·

Is it possible in Dynatrace App Mon to measure separate CPU core usage for a specific process utilising a Linux operating system ?

Hello All,

I hope you are well.

I was wondering whether it is possible on Dynatrace App Mon to measure separate CPU cores usage for a specific process utilising a Linux Operating System?

If this is possible I was wondering what the protocol is for obtaining such metrics within Dynatrace App Mon.

Any help on this topic would be much appreciated.

Kind Regards,

Rion Clarke-Fortune

appmonconfigurationdashboard7.0appmon 7dashletload
2 comments
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

@Andrew L.

0 Likes 0 · ·
Thor H. avatar image
Thor H. answered ·

Sorry to resurrect an old thread here, but we've had this request lately.

The use case is to analyze CPU utilization and thread/process distribution of applications. A host with 8 cores may be running an application that only utilizes 4 of these (e.g. because the thread pool is misconfigured), or it may have performance issues where one core peaks running a single thread, while remaining threads are running OK. Looking at the aggregate CPU consumption, this may be around 40% and look OK, while the problematic thread is actually consuming all the CPU it can.

1 comment Share
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Breakdown by core is not available, however I think you can do much of what you need with existing data. For example, if you have a 4 core machine and you see 25% utilization at the host level, and it's all being consumed by a single process, then you can assume that this is a saturated core. Similar conclusions can be made from the existing data based on analyzing the Process level CPU consumption metrics. For some supported technologies, you also have CPU data down to the method level (java). This obviously helps nail down consuming code to a much deeper granularity. Look at the Methods dashlet and you also have CPU consumption summarized at the method/class/package level.

0 Likes 0 · ·
Joe H. avatar image
Joe H. answered ·

Rion,

As mentioned, we don't provide metrics down to the individual core level. And this is for good reason: There's no value in this information. vCPUs are a shared commodity and a given thread of any process can be moved from Vcore to Vcore at any time during execution and the application doesn't know or care. The entire CPU capacity (across all cores) is the resource being utilized and thus to watch it move from core to core isn't helpful. Perhaps I missed the value of such information. But bottom line: we don't provide it.

Share
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Joe H. avatar image
Joe H. answered ·

Rion, AppMon does not track CPU usage at the core level.

Can you provide a use case where this level of information would be needed?

1 comment Share
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Hello Joseph, apologies for the late reply the scenario is a follows: the team that manages the application would like to analyze the information related to the individual 4 vCPUs present on each server and not just the total values.

For this purpose are additional views available for each agent and for all CPU entries of the "Host Performance"? I hope this makes sense

0 Likes 0 · ·