0% found this document useful (0 votes)
2 views7 pages

JVM Requestor Memory Monitoring Tool

The document outlines a reusable design pattern for JVM requestor memory monitoring in Pega applications, specifically for versions 24.1 and 24.2.2. It addresses the challenge of tracking memory consumption for stateful applications by providing a component that allows users to configure monitoring settings, receive alerts, and analyze memory usage efficiently. The solution includes user guidance for setup, customization options, and potential enhancements for future functionality.

Uploaded by

pegaprofiles777
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views7 pages

JVM Requestor Memory Monitoring Tool

The document outlines a reusable design pattern for JVM requestor memory monitoring in Pega applications, specifically for versions 24.1 and 24.2.2. It addresses the challenge of tracking memory consumption for stateful applications by providing a component that allows users to configure monitoring settings, receive alerts, and analyze memory usage efficiently. The solution includes user guidance for setup, customization options, and potential enhancements for future functionality.

Uploaded by

pegaprofiles777
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Reusable Design/Pattern

JVM Requestor Memory Monitoring

[1.0]

Compatible Pega Version: Pega Infinity 24.1, 24.2.2

Version Author Email ID Date


1.0 Rakshit Karabhari [Link]@[Link] 07-14-2025
Poojitha Seshan [Link]@[Link]
Saikat Chakrabortty [Link]@[Link]
Reusable Design/Pattern

Introduction
PROBLEM STATEMENT

Stateful applications retain user sessions, and there is no automatic way to monitor how much
memory each session consumes. There is no out-of-the-box mechanism to quickly isolate and
analyze memory consumption patterns for selected requestor types across chosen nodes,
making proactive monitoring and application performance troubleshooting inefficient.
Additionally, if the requirement is to monitor specific nodes and further filter by requestor type
(for example, only Browser or Batch requestors), the current process becomes even more
complex and not straightforward.

SOLUTION

Estimated memory consumption details of each requestor session can be viewed from Admin
Studio by clicking Analyze Clipboard for each requestor. However, manually inspecting each
requestor session to verify whether memory usage is within threshold limits is a time-
consuming and tedious process.

Provided an option to monitor requestor session memory consumption based on the


configurations set on Memory Management Landing Page. (Configure > Memory Management)

Automatic alerts or notifications can be built when threshold value of memory consumption is
reached or crossed via job scheduler on a regular configurable interval.

This feature is built as a component that can be used in any application without any
dependencies

NOTE
1. This component is compatible with applications built on both Theme Cosmos and
Constellation. However, since Constellation follows a stateless architecture, tracking
browser requestor sessions may present challenges.
2. The component is developed on PRPC without any dependency on specific frameworks.
As a result, it functions seamlessly with both PRPC-based and framework-dependent
applications.
3. Additionally, there is an option to send PDC Custom Alerts. To ensure this feature
operates correctly, the PDCClients ruleset must be included in your application stack.
Reusable Design/Pattern

User Guide
1. Login into Pega portal
2. Import the MemoryManagement_V1.zip file and add the component
‘MemoryMonitoring_20250128T063228628’ to your application.
3. From designer studio, Click Configure > Memory Management

4. Set the configuration accordingly.


a) Node monitoring option - > Choose to monitor all nodes or just certain NodeIDs or
based on type of Node (Background processing,Webuser,Search,Stream)
b) Type of Requestors: Select which type to monitor (Browser, Batch, App).
c) Start date: From which date to start monitoring
d) End date: When to stop monitoring
e) Alerts Frequency (in min): How frequently to get Email or PDC alert in minutes

f) How would you like to be alerted? - Select “Fetch top requestors” or “Requestors
exceeding threshold limit”
Reusable Design/Pattern

• When “Fetch top requestors” is selected, a “Requestors Count” field is displayed. In


this field, the user can enter an integer value, which will be used to fetch top N
requestors (e.g., Top 5 or Top 10) based on their estimated memory
consumption
• When “Requestors exceeding threshold limit” is selected, an “Enter Threshold limit (in
KB) field is displayed. In this field, the user can specify a threshold value in
kilobytes (KB). This value will be used to filter and fetch only those requestors
whose estimated memory consumption exceeds the specified threshold.

g) Send Email Alert: Check this check box to enter the Email addresses to receive
Memory consumption details in email at a specified interval
h) Send Custom PDC alert: Check this check box to receive a custom PDC alert.
i) Click on submit
j) A validation error is thrown on entering invalid inputs otherwise shows successful
submission banner

5. Based on the configured Start Date, Frequency, and End Date, notifications such as email
alerts and PDC alerts (if selected) will be sent automatically as per the defined schedule.
There is a default correspondence configured to send these emails.
Reusable Design/Pattern

Extensions
However, there is an extension provided for this correspondence which enables respective
users to customize the email template instead of using the default one. This extension
correspondence needs to be saved into application rulesets and classes for customization of
email template.

Sample Email alert received

6. To stop receiving alert must either modify End date or stop the
MemoryManagement_SendAlerts queue processor
Reusable Design/Pattern

Note: There are three DSS in this component


1) Must update the below DSS to trigger email from the preferred email account

2) To choose the requestor id’s from last accessed (by default it is set to 5 hours-> which
means it will consider only those requestors for the entire process where it was last
accessed within 5 hours from the currentdatetime)

3) To trigger an email with only page details beyond specified value in KB for a requestor.
For example, a requestor can contain lot of pages with 0 and < 20KB pages and it might
Not be important to see them in email. So, below configures DSS let you send details of
Pages beyond 20KB only for each requestor

DB tables and schema modification


Reusable Design/Pattern

1) Class - Data-Configs-MemoryManagement Table - pr_Data_Configs_MemoryMa_ef4bd,


Class - History-Data-Configs-MemoryManagement Table -
pr_History_Data_Configs_Memory

Further Enhancements
1) Sending Email notification by attaching the document instead of sending the details in
email. Can generate Excel and summarize the information with help of GenAI
2) Sending additional information to the PDC alert

You might also like