Article

Pega Marketing agents

On top of the standard Pega 7 Platform agents, a set of agents exist that manage the different aspects of Pega Marketing. Review and monitor these agents on a regular basis to ensure that your application is running optimally. In the event of a failure in any of the agents, understanding the agent's role helps to assess the impact of the failure on the application.

The following tables contain descriptions of these agents, which is divided based on the part of the application that the agent is used in. For each of the agents listed, the Multi-node column contains a recommendation on whether the agent should be run on multiple nodes, based on the purpose of the agent and how it scales for performance.

Segmentation agents

Agent nameMulti-nodeDescription
DeferredSegmentsYes

Handles requests to manually run a segment from the Segment rule form. If there are many manual requests for larger segments, then having this agent running on multiple nodes speeds up segment runtime.

Queue items for this agent are instances of the System-Queue-DeferredSegments class.

If there are Broken-Process queue items for this agent, marketers might experience failures or delays in their segments. Review the details on the queue item to determine the cause of the failure.
SegmentScheduleYes

Manages the scheduled run of segments, which is configured in the Options and Schedule tab of the Segment rule form. If there are recurring runs, the agent auto-manages its own queue items. There should be only one queue item per segment at any given point in time.

Queue items for this agent are instances of the System-Queue-ScheduledTask class with the Agent Name set to PegaMKT-Engine:SegmentSchedule.

Broken-Process queue items for this agent imply failures in scheduled running of segment. Consequently, these segments might have stale or incomplete data.
AnalysisScheduleYesSimilar functionality to the SegmentSchedule agent, but instead of segments, it runs Analysis Project rules according to the schedule.

Offer runtime agents

Agent NameMulti-nodeDescription
ProcessOverlayActionYesPerforms background processing of the Update wait time and Stop offers actions on the Offer rule. For more information, see Monitoring Waiting Offers in the Pega Marketing User Guideon the Pega Marketing product page.

ProcessProgramRun

Yes

Initiates a campaign run at runtime. The agent creates the necessary infrastructure, such as batch classes and tables, and executes the strategy based on the segment input population that is configured. If configured on the campaign, it also triggers the refresh/rerun of the segment before starting a strategy. In a non-partitioned environment, this agent applies volume constraints.

Queue items for this agent are instances of the System-Queue-ProgramRun class.

If the Campaign Run work object does not show any progress for a long time, review the status of this agent and its associated queue items.
ProcessEventRunYes

Handles the processing of received real-time events. The agent reads the list of received events from a staging table, processes them, and then removes them from the table.

Processing an event involves:

  • Checking the validity of the inbound event data for each of the associated campaigns
  • Checking the validity of the customer (if configured)
  • Assembling the appropriate context
  • Executing the strategy associated with the campaign
  • Executing offers that the strategy outputs

Event campaigns use the MKT_EVENT_P<ProgramID> tables instead of the batch output tables.

ProcessCampaignRunYes
This agent is only available if Field Marketing is available as part of your Pega Marketing application.

Executes the offers for the selected list of customers in a Field Marketing campaign.

ProcessWaitFlowsYes

Triggers an Offer flow for the WaitExpired paths in an Offer flow. Every campaign run creates one or more (if partitioned) of these queue items to periodically scan the batch table for records whose wait duration has expired. If any such offers are found, this agent resumes their processing along the WaitExpired path.

Queue items for this agent are instances of the System-Queue-WaitFlow class.

ProcessWaitingGenericFlowYes

When Offers are initiated in a non-batch scenario (such as Inbound), the records are stored in the MKT_DATA_OFFER table in the data schema. This agent scans through such Offers to find any that have expired and resumes their processing along the WaitExpired path.

Queue items for this agent are instances of the System-Queue-GenericWaitFlow class.

Delivery channels agents

Agent NameMulti-nodeDescription
SendEmailsInBulkNoPeriodically reads the email output table PR_DATA_CORR_EMAIL and performs email transmission. The agent removes successfully transmitted emails and, in the event of a failure, updates the status to Failed.
SendSMSInBulkNoPeriodically reads the SMS output table PR_DATA_CORR_SMS and performs SMS transmission. The agent interfaces with the configured SMSC and transmits the SMS message. In the event of a failure, the agent removes any successfully transmitted SMS messages and updates the status to Failed.
InboundSMSReceiverNoPeriodically sets up listeners to handle inbound SMS messages for the configured Inbound SMS Accounts. The agent calls the InboundConnector activity to set up the listener. For each message that is received, the agent creates a new instance of PegaMKT-Data-Inbound-SMS, populates the appropriate details, and saves it to the database.
InboundSMSOfferFlowNoProcesses instances of PegaMKT-Data-Inbound-SMS. For each message, the agent determines the relevant Customer and SMS Account context, parses the inbound message based on the SMS Account configuration, uses this information to determine the behavior and Offer, and (if appropriate) initiates/resumes the offer.
OutboundMasterNoA master outbound agent that determines which File/Database Templates need to be processed, and then creates queue items for the WriteOutboundAgent to process them.
WriteOutboundAgentYesA standard agent that performs File and Database output processing based on the details in the queue item created by the OutboundMaster agent. WriteOutboundAgent processes records from the MKT_OUTBOUND_STAGING table in the Pega Marketing (PM) schema.
FileDBScheduleYesPerforms the scheduled finalization for the File and Database output channels.
PushNotificationMasterNoPeriodically checks the push notifications table PR_DATA_PUSH_MESSAGE to create new queue items for the PushNotificationProcessor agent in order to transmit notification messages. Each queue item corresponds to a (logically simulated) partition value in the table.
PushNotificationProcessorYesProcesses messages that are part of a specific partition in the PR_DATA_PUSH_MESSAGE table. The agent transmits these messages based on the configurations for the Push Notification App and Variant (specified on the Push Notifications landing page).
APNs Feedback ServiceNoUses the Apple APNs Feedback service to periodically retrieve uninstalled push tokens and calls Pega Marketing's Push Notification Un-registration service to remove these uninstalled push tokens from the registered list.

Cleanup and data-mining agents

Agent NameMulti-nodeDescription
ProcessPurgingNoCleans up batch assets, such as classes and tables, that are created while running a program. For the cleanup to occur, a ProgramRun must complete the processing for all of its offers (the status of all offers must be Completed) and the timeframe to purge the work object must have lapsed. The timeframe is specified in the Application Settings landing page in the Pega Marketing portal. For more information, see Administrative Settings in the Pega Marketing User Guide on the Pega Marketing product page.
RefreshCampaignOfferStatsNo
This agent is only available if Field Marketing is available as part of your Pega Marketing application.
Performs data mining by periodically refreshing a materialized view in the database to summarize the Interaction History data for Field Marketing reporting purposes.

Startup and maintenance agent

Agent NameMulti-nodeDescription
PegaMKTStartupAgentYesHandles routines, maintenance, and checks that need to occur during the application server startup. The agent can be used for data instance re-sets or for whenever something must be done during node startup.

Tags:

Published January 4, 2017 — Updated May 16, 2019


66% found this useful

Related Content

Have a question? Get answers now.

Visit the Pega Support Community to ask questions, engage in discussions, and help others.