Monitoring memory use on your InfoPrint Manager server

By default, the Memory Usage tab of the server property notebook is left blank; you must set these values and create the customized shell scripts or programs to activate this support. You can access this support from the InfoPrint Manager Administration GUI:
  1. Select Server → Properties.
  2. Click the Show more button.
  3. Select the Memory Usage tab.

From the Memory Usage page, you can specify a low memory threshold percentage and a high memory threshold percentage that cause InfoPrint to invoke a customized exit program or shell script that you can write for your print installation. For example, if the server's system memory usage goes above 60% (the value for the upper memory usage threshold field), InfoPrint invokes a user-customized shell script (the /localtools/uplimit value for the Upper memory usage exit field) that contains specific recovery actions for your print installation. If the server's system memory usage drops below 59% (the value for the lower memory usage threshold field), InfoPrint calls a user-customized shell script (the /localtools/lowlimit value for the Lower memory usage exit field) that contains specific recovery actions for your print installation. This exit usually restores the previous state of the server, undoing temporary changes made by the upper threshold exit.

The customized exit programs or shell scripts can do as little or as much as you specify. For example, you might write a script to disable a certain set of printers. The script could also move jobs to other servers. Both the lower-memory-usage-exit and upper-memory-usage-exit server attributes allow you to substitute values in the commands that are generated to run the exit program. For example, %s is equivalent to server name and %t is equivalent to threshold value. If a particular exit attribute contains a value of memprob %s in the server server1, then when InfoPrint invokes the memory usage shell script it passes server1 as the first argument.

For example, a shell script named uplimit might:

  1. Prevent new jobs from arriving at a logical destination by disabling that InfoPrint object.
  2. Prevent the listing of jobs so that queries of the current backlog do not add to the memory constraints.
  3. Ensure that any actual destinations (in this case, the three pooled actual destinations named adn) are re-enabled, so that they can reduce any backlog of jobs that could be causing the problem.

The uplimit script might look like this:

#!/bin/ksh
pddisable prt1-ld
pdset -cserv -xdisallow-list-obj-class=job server1
pdenable ad1 ad2 ad3

The lowlimit script might look like this:

  1. Re-enable the logical destination so that new jobs are being accepted.
  2. Reset the server to allow the listing of job queries.

The lowlimit script might look like this:

#!/bin/ksh
pdenable prt1-ld
pdset -cserv -xdisallow-list-obj-class== server1
Note: You can use the Queries to Prevent section on the Memory Usage page to both add and remove the listing of any queries against a specified InfoPrint object, such as Jobs. The Jobs object is the most useful to restrict, but this should be done cautiously, because once it has been set, you cannot query any jobs from either the InfoPrint Manager Administration Interface or the InfoPrint Manager Operations GUI.

Note that if the shell scripts or programs are not in the system path, you must specify the fully qualified path for the shell scripts that you have customized. If you misspell a shell script name or refer to a file that does not exist, InfoPrint lets you change the setting. For more information about the lower-memory-usage-threshold, lower-memory-usage-exit, upper-memory-usage-threshold, and upper-memory-usage-exit server attributes that support this feature, see InfoPrint Manager: Reference.

Once you have selected the appropriate values, click OK to apply this change and close the Server Properties dialog.