cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

What CAS keeps in memory cache?

adam1
Newcomer

I know that CAS keeps some data in memory to make it available to the reports faster than from DB.

If
I monitor too much, my memory gets exhausted. Thus I would like to be
able to precisely identify what is in memory cache and what I can get
rid off from monitoring to save some RAM.

What dimensions, metrics, time ranges and resolutions should I use to find "memory cache representation" in DMI?

8 REPLIES 8

chris_v
Dynatrace Pro
Dynatrace Pro

The CAS manages it's own memory between the processing of incoming data, and caching data for faster reporting, so typically a CAS will use all the memory you allocate it.

If the CAS is reporting low memory issues, that will be after the cahce is dropped to support the processing threads, so you need to add memory for the CAS to support the load it is processing.

You want to be sure the CAS has sufficient memory for both processing and caching of report data, reporting if it has to go back to SQL all the time, will have very poor performance, as SQL is much slower than the cached data the CAS keeps.

I'm not sure if this is answering my question.

I don't want trials and errors for adding more memory, because *maybe* it will help. I want to find this one Software Service that is consuming the cache the most.

I need to know exact dimensions/metrics/time-ranges/resolution to find it.

Servers? Operation names? Client IPs? Sites? All of these dimensions? Only some of them?

adam1
Newcomer

Any chance we can get the precise anwser?

I don't want trials and errors for adding more memory, because maybe it will help. I want to find this one Software Service that is consuming the cache the most.

I need to know exact dimensions/metrics/time-ranges/resolution to find it.

Servers? Operation names? Client IPs? Sites? All of these dimensions? Only some of them?

Anyone?


The cache is organized in a tree where the uppermost element is software service.

You can obtain some cache statistics by executing this code in the groovy console

ForestManager.getInstance().larch.printStats()

Thank you Robert for this command. It gave me the results similar to:

T RTM	18-07-09 12:30:35.923	Today cache stats:
T RTM 18-07-09 12:30:35.923 Base:
T RTM 18-07-09 12:30:35.923 DC root: total=15813/3775/98798(742589), SoftwareService=34/34/0(0), Server=3712/3595/30745(232243), Location=3733/5/30872(233080), Browser=3745/8/0(0), Client=4589/133/37181(277266)
T RTM 18-07-09 12:30:35.923 DC dups: total=0/0/0(0)
T RTM 18-07-09 12:30:35.923 Tier: total=17/14/35(1291), Root=1/1/0(0), Tier=10/10/20(790), Application=2/1/5(167), Transaction=2/1/5(167), Step=2/1/5(167)
T RTM 18-07-09 12:30:35.923 FE Tier: total=22/29/46(1634), Root=2/1/0(0), Tier=11/11/22(869), Application=3/1/8(255), Transaction=3/1/8(255), Step=3/1/8(255)
T RTM 18-07-09 12:30:35.923 PS Tier: total=27/45/54(1950), Root=3/1/0(0), Tier=12/12/24(948), Application=4/1/10(334), Transaction=4/1/10(334), Step=4/1/10(334)
T RTM 18-07-09 12:30:35.923 UEM Mobile: total=0/0/0(0)
T RTM 18-07-09 12:30:35.923 UEM Page: total=0/0/0(0)
T RTM 18-07-09 12:30:35.923 Queue:
T RTM 18-07-09 12:30:35.939 DC root: total=951/268/5201(37990), SoftwareService=17/17/0(0), Server=206/190/1503(11004), Location=211/2/1535(11238), Browser=214/6/0(0), Client=303/53/2163(15748)
T RTM 18-07-09 12:30:35.939 DC dups: total=0/0/0(0)

How can I get the Software Service that consumes the cache the most?


This kind of statistic is not available


You may try a different approach. On Software services view add Software service dimension and Data samples metric for Today. This would be an approximation of what your are looking for but not a direct measurement of the memory consumption.


OK!
Thank you very much - I will investigate it further.