Pega-RulesEngine agents

The agents support periodic maintenance of the system cache, event processing, the Property Optimization tool, and report statistics. In a multinode cluster, you can enable these agents on multiple nodes.

Purge Assembly Database Cache

The System-Cache-.Purge agent runs once a week on any node in the cluster and purges records from the database.

Scheduled Task Processor

The System-Queue-ScheduledTask.pzScheduledTaskProcessor agent processes instances of the System-Queue-ScheduledTask class to run scheduled reports.

Property Optimization

The System-Job-PropertyOptimizationpyOptimization agent supports background processing to expose properties from the pzPVStream (BLOB) column. Queue entries are instances of the System-Queue-ColumnPopulation class.

Use the Property Optimization tool to expose a property as a separate column and specify that values for that column are populated automatically. The Property Optimization landing page tab on the System-Database landing page tracks the progress of this agent. Click Designer Studio > System > Database > Column Population Jobs to see the status of jobs in this queue.

Report Statistics

Once an hour, the Log-ReportStatistics.pzSaveReportStatUsage activity adds an instance to the Log-ReportStatistics class for each execution of a report definition. Each instance identifies the report definition and the date and time when the report ran. Standard reports are available to support reviewing these log instances. Enabled by default, the Dynamic System Setting reporting/enablestatistics controls this logging behavior.

Update Active Non Quiesce Admin Requestors

The System-Status-Nodes.pyUpdateActiveUserCount activity runs every 5 seconds to count the number of non-quiesce administrators (general users) on a node.

This agent is particularly important for highly available systems that use Slow Drain mode as a quiesce strategy. Quiesce is complete in Slow Drain mode when all users (non-administrators) are removed from the system, while high availability administrator accounts are still operable in a quiesced system. For more information, see Quiesce using slow drain.

Delete Unused Static Content Files

To maximize performance, rules assembly in certain cases automatically creates aggregated static content containing CSS (Cascading Style Sheet) to support portal display and harness display. These aggregated static content records can be orphaned (never needed or used) by later processing. The System-Static-Content-.pzDeleteOrphanStaticContent activity deletes unused aggregated static content records to reduce clutter in the database table.

Disable Dormant Operators

The agent is disabled by default. If you enable the agent, it is configured to run once a day.

The Data-Admin-Operator-ID-.pzDisableDormantOperators activity is used to disable the operators in the system that are inactive for more than the number of days that are specified in the Number of days of inactivity text box in the Operator disablement policy section on the Security Policies landing page. To trigger the agent, at least one enabled operator must be specified in the Exclusion list of operator IDs section.

Node Cleaner and Cluster And DB Cleaner

By default, the Node Cleaner agent runs standard Code-.pzNodeCleaner activity on all the nodes in the cluster and the Cluster And DB Cleaner agent runs the standard Code-.pzClusterAndDBCleaner activity on only one node in the cluster, once every 24 hours for housekeeping tasks, which include purging the following items:

  • Older records (instances) from log tables

  • Any requestors that have had no activity during at least 48 hours

  • Rows from the pc_events database table according to the EventsRetentionPeriod Dynamic System Setting (the default retention period is 90 days)

  • Any nodes that have not responded to the pulse for 30 days

  • Expired locks

  • Old usage data if usage tracking is enabled

Optionally, you can add an activity that is similar to Code-.pzClusterAndDBCleaner to another agent to purge outdated information and recover tablespace. Ensure that the agent has access to the needed ruleset versions, and do not purge instances that are referenced in other tables.

You can change the idle requestor purge criterion to a value that is less than 48 hours by overriding the test in the called activity System-Requestor-Context.CleanupExpired. Once per day, this activity calls Log-Usage.UsageCleaner, which trims older rows of the pr_perf_stats table (corresponding to the Log-Usage class). This activity starts a stored procedure, passing a number of days to retain based on the value of the pxProcess.pxLogUsage RetentionPeriod property. The default is 30 days, which can be updated through an entry in the prconfig.xml file or in the Dynamic System Settings.

Persist Node State and Persist Cluster State

These agents are used to automatically persist system state data. Cluster data is persisted once a day. Node data is persisted on node start up. System state data is saved for 90 days and is purged by the Cluster and DB Cleaner agent.