Performance tool — Using the full details display

The Full, Init, and Delta links of the Performance report provide detailed data about a single row of the display. The scope of information on this window depends on which link you clicked on the Performance report.

  • Full link – Statistics reflect all activity since you signed on or clicked Reset.
  • Init link – Statistics reflect activity at the time you most recently started the Performance tool, but not activity since that time.
  • Delta link – Statistics reflect only incremental values between adjacent rows of the Performance report.
Note: Hold the mouse pointer over a statistic to view tooltip text.

The number of decimal places in timing results depends on the hardware and software supporting Pega Platform. In general, the decimal places reported are significant. Per-requestor CPU statistics are not available for UNIX platforms. The value NaN (Not a Number) indicates a numeric exception, such as dividing a number by zero, or by a small value close to zero, and attempting to compute the square root of a negative number.

All performance statistics are property values on a clipboard page of the Code-Pega-PAL class.

Header

The header area at the top of the display contains these statistics.

Label and Property Notes
Process Started

pxProcessStartWall

Date and time the process started.
ID

pxProcessID

Process ID
Node

pxSystemNode

Node name
Port

pxSystemPort

TCP/IP port
CPU

pxProcessCPU

CPU time in seconds for the entire Java process in this JVM since startup, all requestors combined. Available on the Full display only, for both Windows and UNIX platforms.
Requestor Started

pxRequestorStart

Date and time the requestor started.
Requestor ID

pxRequestorID

Requestor ID, also called connection ID.
Name

pyUserName

User name from Operator ID instance, if authenticated.
Thread Started

pxRequestorStart

Date and time this Thread started.
PAL Version

pxPALVersion

Performance tool software revision.

Elapsed Time Detail for This Requestor (seconds)

These statistics apply to all Threads in the current requestor session; most requestor sessions involve only one Thread. Times are in seconds.

Label and Property Notes
Total Elapsed time for the reading(s)

pxTotalReqTime

Time since the previous reading.
Elapsed time retrieving non-rule-resolved instances from database

pxOtherIOElapsed

Includes elapsed time retrieving or saving work items, data objects, history instances, and assignments.
Elapsed time retrieving rule-resolved Rules from the database

pxRuleIOElapsed

Includes elapsed time retrieving or saving most rules.
Elapsed time executing Declarative Rules

pxDeclarativeRulesInvokedElapsed

 
Elapsed time retrieving Declarative rules

pxDeclarativeRulesLookupElapsed

Time spent constructing declarative networks.
Elapsed time retrieving non-Rule database lists

pxOtherBrowseElapsed

Elapsed time for Obj-List operations. excluding Obj-List operations on rules,
Elapsed time processing Storage Streams for non-Rule database lists

pxOtherBrowseFilterElapsed

Storage Stream
Elapsed time retrieving lists of Rules from the database

pxRuleBrowseElapsed

Elapsed time for Obj-List operations on rules.
Elapsed time processing Storage Streams for Rule database lists

pxRuleBrowseFilterElapsed

Storage Stream
Elapsed time inferring the Java

pxInferGeneratedJavaElapsed

Elapsed time during which the engine was attempting to avoid rules assembly by identifying existing Java for a rule.
Elapsed time inferring the Java (high level)

pxInferGeneratedJavaHLElapsed

Elapsed time during which the engine was attempting to avoid rules assembly by identifying existing Java for a rule.
Elapsed time performing Rule assembly

pxJavaAssembleElapsed

rules assembly
Elapsed time compiling Rules

pxJavaCompileElapsed

 
Elapsed time checking Java syntax

pxJavaSyntaxElapsed

The system performs a syntax check of generated Java, before full compilation.
Elapsed time executing Connect Rules

pxConnectElapsed

Waiting for responses after a connector calls.
Elapsed time performing explicit database commit operations

pxCommitElapsed

Commit operations
Elapsed time spent redirecting Reference Properties reference properties
Elapsed time spent finding declarative page names data page
Elapsed time spent loading declarative page names data page
Elapsed time spent determining if a page name is declarative data page
Elapsed time spent performing BLOB encryption

pxEncryptElapsed

Storage Stream encryption of selected classes
Elapsed time spent performing BLOB decryption

pxDecryptElapsed

Storage Stream encryption of selected classes

Rule Execution Counts

Statistics in this area report how many times rules of various categories were executed for this requestor.

Only rules of rule types subject to rules assembly are counted. Counts increment when an operation starts, not when it ends.

These statistics are summarized across all requestor sessions in the shutdown report. See Working with the shutdown Rule Usage facility.

Label and Property Notes
Total number of Rules executed

pxRulesUsed

 
Rules requested from the database

pxRulesExecuted

Counts rules for rules assembly only, excludes some rules expanded into inline Java code
Tracked property changes

pxTrackedPropertyChangesCount

For declarative rule processing. See the PDN article How to identify which properties are tracked for declarative processing.

Activities executed

pxActivityCount

Counts activity executions started.
Connects executed

pxConnectCount

Counts connectors started.
Declarative Rules executed Counts declarative rules executed, including those reached by chaining.
Declarative Expressions executed

Context sensitive

pxDeclExprCtxSensUseCount

Count of the number of Declare Expression rules executed in which the rule explicitly identifies a fully qualified reference to the target property.
Declarative Expressions executed

Context free

pxDeclExprCtxFreeUseCount

Count of the number of Declare Expression rules executed in which the target property is on an embedded page that is not explicitly named in the rule.
Flows executed

pxFlowCount

Count of flow executions started.
Edit Rules executed

pxRunOtherRuleCount

Includes both Rule-Edit-Input and Rule-Edit-Validate rules
Data transforms executed

pxRunModelCount

 
Services executed

pxServiceCount

service
Streams executed

pxRunStreamCount

Includes all rule types derived from Rule-Stream, including harness, fragment, correspondence, and XML Stream rules
Whens executed

pxRunWhenCount

when condition
Rule assemblies

pxJavaAssembleCount

rules assembly
Java compilations

pxJavaCompileCount

 
Java syntax checks

pxJavaSyntaxCount

step
Number of Java

steps executed

pxJavaStepCount

step
Legacy-based Rules executed

pxLegacyRuleAPIUsedCount

Rules executed that use Version 02 PublicAPI facilities
Reference Property redirections reference property
Declarative Page load activities executed data page

Requestor Summary

Statistics in this section summarize information about the current requestor session.

Label and Property Notes
Time the Requestor Started

pxRequestorStart

Date and time this requestor started.
Time of this PAL reading

pxPALWall

Time of the statistics in this Performance tool display
Number of Server Interactions

pxInteractions

 
Database time threshold (milliseconds) pxDBThreshold A constant, set by the operationTimeThreshold value in the prconfig.xml file or Dynamic System Settings. See How to detect lengthy PegaRULES database operations.
Number of database requests

that exceeded the time threshold

pxDBOpExceedingThresholdCount

Number of database requests that took longer than the threshold on the previous row. Each event appears in the Alert log.
Number of Input Bytes Received by the Server

pxInputBytes

Total bytes (uncompressed) sent in HTTP messages from the browser to Pega Platform.
Number of Output Bytes Sent from the Server

pxOutputBytes

Total bytes (uncompressed) sent to the browser. This statistic includes XML as well as HTML.
Requestor Clipboard Size (bytes) pxEstimatedRequestorDataSize Total size of the clipboard. This value is available only if you selected Add Reading with Clipboard Size from the summary Performance tool display. Available only for Delta readings.
Number of Named Pages created

pxPagesNamed

Results of the getPageNames() PublicAPI Java method.
HTML transaction frame count

pxFrameTransactionMapCount

Number of HTML frames retained in memory to support transactions.
HTML transaction frame map size (bytes)

pxFrameTransactionMapSize

Count of bytes in HTML frames retained in memory to support transactions.

Parsing Statistics

These report on executions of Parse XML, Parse Delimited and Parse Structured rules.

Label and Property Notes
Total number of parse rules

pxParseRuleCount

Count of parse rules executed
Elapsed time to process parse rules

pxParseRuleTime

Wall time during which parse rules were executed.
CPU time to process all parse rules

pxParseRuleTimeCPU

Available for Windows servers only.

Connect Statistics

These report on executions of Connect EJB, Connect Java, Connect SOAP, Connect MQ, Connect JMS, and Connect MQ rules. For information about interpreting these statistics, see the PDN article Testing Services and Connectors.

Label and Property Notes
Connect Count

pxConnectCount

Number of connector calls.
Connect time elapsed

pxConnectElapsed

Total time elapsed for connect calls.
Elapsed outbound mapping time

pxConnectOutMapReqTime

Time elapsed to map output.
CPU outbound mapping time

pxConnectOutMapReqCPU

CPU time elapsed to map output.
Elapsed inbound mapping time

pxConnectInMapReqTime

Time elapsed to map input.
CPU inbound mapping time

pxConnectInMapReqCPU

CPU time elapsed to map input.
Connect Client Response time

pxConnectClientResponseElapsedCPU

Time elapsed waiting for client response.
Connect Client Response time

pxConnectClientResponseElapsed

Time elapsed waiting for client response.

Number of bytes received from client

pxConnectResponseDataVolume

Amount of data received from client, in kilobytes.

CPU Time Detail For This Requestor (seconds)

Per-requestor CPU statistics are not available for Pega Platform systems hosted on UNIX platforms.

Label and Property Notes
Total CPU time for the reading(s)

pxTotalReqCPU

Total CPU time this JVM responding to HTTP requests and to service requests. This is larger than the sum of the detailed CPU values in this section, as it includes system CPU for other processes and other sources.
CPU time accessing non-rule-resolved instances from the database

pxOtherIOCPU

CPU time supporting input or output of instances other than rules: data objects, work items, assignments, history, and similar instances.
CPU time retrieving rule-resolved Rules from the database

pxRuleCPU

CPU time supporting input or output of rules (excludes time spent assembling, syntax-checking, compiling, or executing rules).
CPU time executing Declarative Rules

pxDeclarativeRulesInvokedCPU

 
CPU time retrieving Declarative Rules

pxDeclarativeRulesLookupCPU

 
CPU time retrieving non-Rule database lists

pxOtherBrowseCPU

Time spent on Obj-List operations for objects other than rules
CPU time processing Storage Streams for non-Rule database lists

pxOtherBrowseFilterCPU

Storage Stream
CPU time retrieving Rule database lists

pxRuleBrowseCPU

Time spent on Obj-List operations for rule instances.
CPU time processing Storage Streams for Rule database lists

pxRuleBrowseFilterCPU

Storage Stream
CPU time inferring the Java

pxInferGeneratedJavaCPU

CPU time during which the engine was attempting to avoid rules assembly by identifying existing Java for a rule
CPU time inferring the Java (High Level)

pxInferGeneratedJavaHLCPU

CPU time during which the engine was attempting to avoid rules assembly by identifying existing Java for a rule
CPU time performing Rule assembly

pxJavaAssembleCPU

rules assembly
CPU time compiling Rules

pxJavaCompileCPU

 
CPU time checking Java syntax

pxJavaSyntaxCPU

 
CPU time spent redirecting Reference Properties reference properties
CPU time spent finding declarative page names data page
CPU time spent loading declarative pages data page
CPU time spent determining if a page name is declarative data page
CPU time spent performing BLOB encryption

pxEncryptCPU

Storage Stream encryption of selected classes
CPU time spent performing BLOB decryption

pxDecryptCPU

Storage Stream encryption of selected classes

Database access counts

These statistics are for the current requestor only. Counts do not include rules read from the rule cache except as noted.

Label and Property Notes
Rule-resolved rules requested from the database or cache

pxRuleCount

Number of read operations for rules (not the number executed) from the PegaRULES database or the rule cache, for rule types with an Applies To key part.
Rule-resolved rules retrieved from the cache

pxRuleFromCacheCount

Number of read operations for rules satisfied from the rule cache.
Procedural Rules retrieved from the database

pxProceduralRuleReadCount

Excludes declarative rules and properties. Excludes reads from the rule cache.
Declarative Rules retrieved from the database pxDeclarativeRulesLookupCount  
Property rules retrieved from the database

pxPropertyReadCount

 
Non-Rule-resolved instances requested from the database or cache

pxOtherCount

Number of read operations for rules (not the number executed) from the PegaRULES database or the rule cache, for rule types with an Applies To key part.
Non-Rule-resolved instances retrieved from the cache

pxOtherFromCacheCount

Number of read operations for rules (not the number executed) from the rule cache, for rule types with an Applies To key part.
Non-Rule-resolved instances retrieved from the database

pxOtherIOCount

Number of read operations for rules (not the number executed) from the PegaRULES database, for rule types with an Applies To key part.
Number of bytes read from database Storage Streams (uncompressed) pxDBInputBytes Storage Stream
Number of bytes written to database Storage Streams (uncompressed)

pxDBOutputBytes

Storage Stream
Declarative Indexes written

pxIndexCount

Count of Index- instances created by Declare Index rules
Obj-List requests to the database that * did not require a storage stream

pxListRowWithoutStreamCount

 
Obj-List requests to the database that * required all of the storage stream

pxListRowWithUnfiltered

StreamCount

Storage Stream
Obj-List requests to the database that * required some of the Storage Stream

pxListRowWithFiltered

StreamCount

Storage Stream
Rows returned from a RDB-List method that did not require a Storage Stream

pxRDBRowWithout

StreamCount

RDB-List method
Rows returned from a RDB-List method that did require a Storage Stream

pxRDBRowWith

StreamCount

Storage Stream
Database Commit Count pxCommitCount Count of Commit operations by this requestor (including failed attempts). Does not include RDB methods that perform Connect SQL operations.
Database Rows Committed

pxCommitRowCount

Number of rows successfully committed to the database by Commit operations by this requestor Does not include RDB methods that perform Connect SQL operations.
BLOB encryption

pxEncryptCount

See Storage Stream encryption of selected classes.
BLOB decryption

pxDecryptCount

See Storage Stream encryption of selected classes.

Node Summary

Storage Stream values — values of columns named pzPVStream — have one of three formats ( V4 , V5 , and V6 ). A setting in the prconfig.xml file or Dynamic system Settings determines which format the system uses when it saves a Storage Stream. Your system may contain a mixture of formats, even in a single table, because the setting takes effect on a row-by-row basis.

For example, if you open an instance (a row) containing a Storage Stream in Version 4 format, update the instance, and save the instance, the system saves Storage Stream in the current format, typically Version 6.

The Instances Read counts do not include Storage Stream instances read from the rule cache.

Label and Property Notes
System Cache Status

pxCacheEnabled

Indicates whether the rule cache is enabled on this node.
Last Date and Time the Cache was Cleared

pxDateTimeCleared

Date and time that the rule cache on this node was set to empty.
V6 Instances Read

pxInstancesRead

WithV6Stream

Count of pzPVStream instances read from the database by this node for all processing since startup. (Version 6 is the default format for PRPC Version 4.2 and later.)
V5 Instances Read

pxInstancesRead

WithV5Stream

Count of format 5 pzPVStream instances read from the database by this node for all processing since startup. (Version 5 was the default format for Version 04-01.)
V4 Instances Read

pxInstancesRead

WithV4Stream

Count of format 4 pzPVStream instances read from the database by this node for all processing since startup. (Version 4 was the default format for Version 03-01.)
Shared Declarative Pages Count of node-level data pages in use by all requestors on your current node.
Shared Clipboard Size (bytes) Total size in bytes of the node-level data pages in use by all requestors on this node.

Service Statistics (Seconds)

These measures report on the use of services by this requestor. Typically, they are zero for a browser-based requestor. However, they will show service statistics after you unit test a service rule using the Run toolbar button.

For information about interpreting these statistics, see the PDN article Testing Services and Connectors.

Label and Property Notes
Elapsed Inbound Mapping Time

pxServiceInMapReqTime

Time elapsed to map request data.
CPU Inbound Mapping Time

pxServiceInMapReqCPU

CPU time elapsed to map request data.
Elapsed Outbound Mapping Time Time elapsed to map response data.
CPU Outbound Mapping time

pxServiceOutMapReqCPU

CPU time elapse to map response data.
Elapsed Activity Time

pxServiceActivityTime

Time required from the beginning of the service activity execution until it completes.
CPU Activity time CPU time for execution of the service activity (Windows only).
Number of records in file

pxServiceNumFileRecords

For Rule-Service-File executions only
Number of bytes received by the Server through services

pxServiceDataVolume

Amount of data received by server in bytes.

Reporting on performance details

The system captures performance details for interactive users at the interaction level, but this data is not retained.

The system also captures performance details for each requestor once each hour and also at sign-off. The usage daemon saves these details as instances of the Log-Usage class. You can report on these details using SQL reporting tools and the pr_perf_stats database table. See How to analyze system-wide usage with the Log Usage class.