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.
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.