About the Performance tool

Use the Performance tool, also known as PAL, to understand the system resources consumed by processing a single requestor session, or the SQL statements sent to the Pega Platform database by the requestor session.

Pega Platform always accumulates cumulative resource statistics for the Performance tool. Use the tool to display these statistics, and to identify incremental resources (in the delta rows) consumed by your processing. Because this feature displays existing data, its use does not degrade processing.

Note: When using this tool for Customer Service chat ineractions, be aware that a single browser session can be served by multiple requestors.

Basics

Using this data, you can assess possible sources of improved performance (faster response time or higher throughput) through software changes, hardware changes, or rule changes.

As the Pega Platform operates, it collects statistics about the demands made on processing resources, and the server system's response. The Performance tool summarizes and formats these statistics and presents them as HTML pages.

Performance data shows the processing demand statistics of your work since you connected, and may help you assess the performance impact of various approaches or configuration choices.

The DB Trace facility logs all SQL interactions between your Pega Platform session and the PegaRULES database.

Performance statistics can help you distinguish between performance issues that arise in the Pega Platform server, the PegaRULES database, or external systems called by the workflow. In all cases, the statistics can help you determine how to improve performance.

Starting the Performance tool

To start the Performance tool, click Performance from the Designer Studio developer toolbar.

See Performance tool — Using the Summary display.

Accessing the full details display on the Performance tool

Click the INIT , FULL , or DELTA links to access the Full Details display for that row. This display provides additional statistics from the same snapshot.

See Performance tool — Full Details Display.

CPU statistics

The pxProcessCPU property records CPU time in seconds for the Java process since startup of the node, covering all requestors combined. The pxTotalReqCPU property records total CPU time of this JVM responding to HTTP requests and to service requests. These two statistics are available, by default, on all platforms.

For Windows, more detailed CPU statistics and elapsed time statistics are available by default.

You can disable or reduce the potential overhead of CPU statistics gathering through a prconfig.xml setting:

<env name='initialization/CpuTimerLevel' value = "ZZZZZ" />

where ZZZZZ is one of the following values:

  • FULL — Extensive detail (and highest overhead)
  • TOTALSONLY — Only the two summary statistics pxProcessCPU and pxTotalReqCPU are reported.
  • NONE — No CPU statistics are gathered, all CPU statistics are reported as zero.

If this setting is not present in your prconfig.xml file, the default behavior for Windows servers is that the FULL setting is used. For UNIX/Linux servers, the default is TOTALSONLY.

Note: As an alternative to updating the prconfig.xml file, you can use Dynamic System Settings to configure your application. See Dynamic System Settings data instances.

Timings are based on JVM software implementations that depend on JVM versions and vendor; this may limit the validity of cross-system comparisons. For example, the IBM JVM does not provide pxProcessCpu. Also, if your system uses Sun JVM 1.5, the sun.misc.Perf interface is used. In other JVMs, the System.nanoTime or system.CurrentTimeMillis class may be used.

Statistics for services

The Performance tool supports interactive sessions directly. Services operate as background requestors; you can capture selected Performance statistics in a log file. See Performance tool — Statistics for services.

Performance profile

The Profiler tool provides detailed CPU statistics for activity steps, when condition rules, and data transforms executed by your requestor session. See Performance tool — Using the Summary display.

You can also access profiler information from the Performance landing page. See About the Performance Profiler landing page.

Monitoring SQL operations with Database Trace gadget

The Performance tool shows detailed results at a moment in time. To see a detailed trace of the internal operations, use the Database Trace gadget.

To start the Database Trace gadget, click Configure > System > Performance > Database Trace.

See System category — Performance page for more information and instructions on this gadget.

Technical notes

When two instances of the Pega Platform are installed on a single Windows server (for example, one for testing and one for production), performance tool CPU statistics may not be available on the copy started second.