Browse Performance Controls
When developing custom browses with Browse Maintenance, be sure to follow the browse performance guidelines described in User Guide: Introduction to QAD Enterprise Applications. If not developed carefully, custom browses can cause performance issues. If custom browses are causing performance issues, you can configure the system to identify those browses, send warnings to the Message Inbox, and cancel the browses after a specified time.
Canceling the browses after a specified time prevents long-running browse queries from adversely affecting application server performance, which can affect all the users of the system. You can have the system identify, report, and eventually cancel long-running browses. You can alert administrators that a performance problem could be developing by having the system periodically send messages to the Messages Inbox. The browse name and query conditions are included in the messages to help administrators identify problematic browses and their user-specified conditions. In general, performance issues can often center around just a few browses. To track particular types of browses, you can use regular expressions to specify the names of the browses you want to monitor and possibly cancel after some specified time. To configure the system to identify, report, and cancel such browses, use the following settings in the client session configuration file (client-session.xml):
<NotifyRole> indicates which role (or group) of users gets notified on any browse alert. Notification is sent to the Messages Inbox.
<NotifyEmail> specifies a comma-separated list of e-mail addresses to which browse alerts will be sent.
For example: <NotifyEmail>email@example.com,firstname.lastname@example.org</NotifyEmail>
(The SMTP elements in this file need to be configured for your SMTP server for this setting to work.)
<timeout browseId="browse_name" warnAt="interval" cancelAfter="interval"/> specifies a browse performance warning or cancelation, where:
browseId specifies a browse ID. The browse ID is the first two letters of the browse name, followed by the number (without the br or .p in the browse name). For example, the browse ID of Item Browse (ppbr100.p) is pp100. You can also enter a regular expression. For example, pp* specifies all browses whose browse IDs start with pp. The default is blank.
warnAt specifies the interval in minutes for sending warning messages to users in the <NotifyRole> role (or group). The warning messages can alert administrators that a performance problem could be developing because of a long-running browse query. The messages include the browse name and the query conditions entered by the user.
cancelAfter specifies the minutes after which the browse will be canceled, with 0 specifying no cancellation.
Use warnAt and cancelAfter to have the system report warnings up to some time after which the browse is canceled automatically. For instance, in <timeout browseId="pp*" warnAt="2" cancelAfter="10"/>, the system reports warnings every two minutes for all browses running whose names start with pp. After ten minutes, those browses are canceled.
The following is an example of settings in client-session.xml:
<timeout browseId="" warnAt="2" cancelAfter="3"/>
<timeout browseId="ppbr100.p" warnAt="2" cancelAfter="5"/>
<timeout browseId="so*" warnAt="2" cancelAfter="5"/>
By default, the settings are not active; they are included as comments in client-session.xml. To use the settings, remove the comment markers (<!-- ... -->) and edit the default values.