Notifications

1148 views

IMPORTANT DISCLAIMER


The contents of this article can be potentially performance impacting to your instance.
It is strongly advised to not run these reports during normal business / peak hours.  

Should you observe performance degradation during the running of these reports then you should cancel your transaction.
Administrators may cancel the running report via  Navpage > System Diagnostics > Active Transactions (All Nodes).

These reports come with the following additional provision:
As the report runs against the syslog_transaction table, your experience may vary depending on the volume of transactions within the window of time you define for the filter on each report.

Every transaction in the platform will make an entry to this table, therefore querying this table in a long running report can potentially have significant impact.

Do not run these reports should you see impact. 
Ensure these reports are not running during any performance debugging investigation 
 
Therefore you may need to modify the date ranges accordingly to minimize any impact to your instance.
You may schedule the reports to run out of hours overnight and email you the results. 
See the Documentation link at the end of this article.



Description


There are times when you wish to track changes in performance for certain types of requests, urls, over a period of time. 
For example, after go lives, code changes, update sets, etc.   This can be done by building out the following example reports. 

Once built, you can add / modify them to;
- run weekly on a schedule and email a group of users overnight
- modify time periods to weekly, monthly, 6 monthly
- capture specific urls, eg:  URL STARTS WITH /something.do (It is important to use STARTS WITH in this example, and NOT CONTAINS which can effect your instance performance)

Other options could be to modify the Aggregation field from 'Client Response Time' to 'Browser Time' or 'Client Script Time'
- for example if you're trying to track how long browsers take to render forms, or how much time Client Scripts take to run over your report time period.

 

Procedure


Attached below is the update set - 'sys_remote_update_set_ab24da7a135b1300f1cc70d66144b0ed.xml'
 
Attachment Link:  sys_remote_update_set_ab24da7a135b1300f1cc70d66144b0ed.xml
 
This contains an update set: 'KB0690914 Performance Report' which within are 4 reports based on the syslog_transaction table;
 
KB0690914 Performance Report - Forms
KB0690914 Performance Report - Reports
KB0690914 Performance Report - Lists
KB0690914 Performance Report - Client Transactions
 
Please test this in a Sub Prod instance by importing it via;
1. visit your sub prod instance: https://__your_instance__.service-now.com
2. Navigate to
> System Update Sets
- Retrieved Update Sets ( or direct: https://__your_instance__.service-now.com/sys_remote_update_set_list.do
- Related Links: Import Update Set from XML, and import the attachment.

( As these were created on an internal ServiceNow instance, you will need to validate, acknowledge and skip through the update set import errors due to the import set userID not existing within your instance )

 
You can then access them via the following;
 
KB0690914 Performance Report - Lists
https://__your_instance__.service-now.com/sys_report_template.do?jvar_report_id=45d3d6ba135b1300f1cc70d66144b092
 
KB0690914 Performance Report - Reports
https://__your_instance__.service-now.com/sys_report_template.do?jvar_report_id=91c3167a135b1300f1cc70d66144b052
 
KB0690914 Performance Report - Forms
https://__your_instance__.service-now.com/sys_report_template.do?jvar_report_id=73a3da7a135b1300f1cc70d66144b01f
 
KB0690914 Performance Report - Client Transactions
https://__your_instance__.service-now.com/sys_report_template.do?jvar_report_id=3fe3d6ba135b1300f1cc70d66144b09e
 
You can create your own homepage or dashboard, then edit the reports and attach them to the homepage or dashboard.
You can then also INSERT AND STAY to add new versions of those reports, eg: by modifying the Aggregated field to Browser Time. 
 

Further Suggestions: 
You can also add a date range so that you can then run it week by week (schedule the report).
You can also add TYPE = form / list / report / (or none for all client transactions).
You could have a report for specific URL starts with /incident.do, /incident_list.do, /change.do, type = report, type = list etc.. so you can track different urls per time window and client transactions


Note: As this data is coming from the transaction log table, 'Client Response Time' is in ms - therefore 14,000 = 14 seconds.

 

Sample report definitions and output below;

FORMS
Sample FORMS report


LISTS
Sample LISTS Report


REPORTS
Sample REPORTS Report


CLIENT TRANSACTIONS
Sample CLIENT TRANSACTIONS Report




Here are two samples (with output), of Type = FORMS last 7 days, and Type = FORMS, last 30 days


FORMS - Past 7 Days - Sample with Output

Past 7 days report

Past 7 days report output


FORMS - Past 30 Days - Sample with Output

Past 30 days report

Past 7 days report output


Applicable Versions


All versions

Additional Information


Product Documentation -
- Schedule a Report
Update Set Use
- System Update Sets
 

Related -
- KB0584420 Troubleshooting Guide: Using the Transaction Logs
 

Article Information

Last Updated:2019-06-26 04:56:22
Published:2019-06-26