Transaction or response metrics
Summarize
Summary of Transaction or response metrics
Transaction or response metrics offer a performance snapshot of classic UI transactions within the ServiceNow AI Platform®. These metrics help customers monitor and understand user transaction volumes and server response times for core, classic UI interactions, excluding AJAX, REST, Agent Workspace, and other modern UI frameworks.
Show less
Key Features
- User Transaction Count (sum): This metric counts all classic UI transactions (UITYPE) across the instance, focusing on whole-page, table-based form/list transactions. It excludes asynchronous and newer UI types. It is useful for gauging core business hour activity and identifying unusual transaction volume changes that persist for at least 10 minutes.
- Average Server Response Time (weighted average): Measures the average execution time of classic UI transactions on the server, excluding network time, client-side processing, and waiting times such as semaphore or session sync waits. Server response time naturally fluctuates with business hours and transaction types, and should be analyzed for extreme deviations or in conjunction with other performance indicators rather than using fixed thresholds.
- Stacked Time Metrics: Combines server time, network time, and browser time to provide a comprehensive view of total transaction response time:
- Server Time: Time spent by the server processing the transaction, excluding redirects, partial page requests, and wait times. High server time requires reviewing server-side components like business rules, ACLs, SQL queries, and semaphore waits.
- Network Time: Time to write the server response bytes to the output stream, not transmission time over the internet. High network time suggests reviewing transaction components and data volume for optimization.
- Browser Time: Time spent on client-side rendering and processing by the browser. High browser time indicates the need to review client-side scripts and components.
Practical Use and Recommendations
- Use transaction count to understand usage patterns during core business hours and detect significant shifts in transaction volume.
- Monitor server response time for unusual spikes or drops, considering natural fluctuations due to business cycles and transaction types.
- Analyze stacked time components individually to pinpoint bottlenecks—server, network, or browser—and take targeted action to optimize performance.
- Keep transactions lightweight and minimize data streamed to reduce network time.
- Investigate server-side logic and client-side scripts if respective times are high to improve responsiveness.
The metrics provide a performance snapshot of classic UI transactions within the ServiceNow AI Platform®.
User transaction count (sum)
Transaction count is the instance-wide sum of all UI transactions of a certain type known as UI_TYPE, which is a classification used only in ServiceNow proprietary code.
UI_TYPE excludes all AJAX, Angular, REST (including all ServicePortal and /api/now/ui/), Scheduler, Agent Workspace, SOAP etc. Essentially, it can be considered to cover only classic, whole page transaction types for example, table based form/list transactions excluding List V3, home pages, UI pages.
This is useful to understand core business hours. Potentially useful as a secondary identifier of extreme performance issues if the number rapidly changes in minutes and stays that way for at least 10 minutes either up or down.
Average server response time (weighted average)
Server response time in this context is the average/mean execution time for UI_TYPE transactions. See Transaction Count (sum) for limitations of this classification.
- Time spent on waiting for a semaphore (if all semaphores are used by other users).
- Time spent waiting for session sync (if current user already has an active transaction).
- Time spent on the network back and forth to ServiceNow.
- Time spent on the client-side by the browser or mobile device.
Server response time commonly fluctuates up and down in relation to core business hours due to the type of operations that tend to occur at any given time. Thus, it is very common that server response time appears more volatile during nights and weekends because administrators are running long reports or administrative transactions that typically take longer to execute. This, combined with the fact that fewer overall transactions are occurring, means a few slow transactions will have greater impact on the average.
When considering long-term trends, like Week over week comparisons for example, one should consider that such changes may simply reflect usage pattern changes, such as users doing more or less of certain types of transactions that are typically faster or slower. Because each transaction type has different functional requirements, there is no arbitrary threshold for what constitutes a slow transaction and thus no threshold should be applied to this metric. Instead of looking at long-term trends or short spikes outside core business hours, attention should be placed on extreme deviations from the norm or where this metric coincides with another performance indicator.
Since this metric is limited to the response time of UI_TYPE transactions (see definition under Transaction Count (sum)), it may be a very incomplete picture of your end user's performance. Other methods of measuring should be considered for aspects of total system performance.
Stacked time: Server response time, Network time (network time, both from and to the user) and browser time
Server, network, and browser response times are three key metrics in the life cycle of a transaction. Average Stacked time of a transaction provides an response time from three metrics in a pile of objects.
- Server Time
- The number of milliseconds spent by the server in fulfilling the transaction. It does not include:
- server time spent prior to a redirect (HTTP 302)
- time spent on subsequent, partial page requests (that is, AJAX) or serving up a resource (CSS, JavaScript, images, etc)
- wait time from waiting for a semaphore or waiting for a previous transaction on the same session to complete
Therefore, this can be a confusing and inflated metric because some transactions may have 90% or more of their response time spent waiting for another transaction to complete.
- Network Time
- It is the time it takes the server to write all the bytes of the request to the output stream - not the time it takes to transmit those bytes across the internet. This is not what most people expect from this measurement. It is much lower than what most people would expect.
- Browser Time
- It is the time taken by the browser during the transaction. It includes the request and response rendering time at the browser.
It gives a perspective of what is the biggest contributor for the total response time for a transaction. Usually, Server time is high compared to Network and Browser.
- The server response time is high, then server side components must be reviewed further like business rule, ACL, SQL, Semaphore wait, Session wait time, and others.
- The network time is high, then transaction components and how much data is being streamed must be reviewed. Recommendation is to keep lightweight transactions with optimal data stream.
- The browser time is high, then client side scripts/components must be reviewed.