$SsStat: Difference between revisions
(Created page with "{{DISPLAYTITLE:$SsStat}} <span class="pageSubtitle"><section begin="desc" />Retrieve subsystem's statistics into string<section end="desc" /></span> <p class="warning">Most Siri...") |
m (1 revision) |
(No difference)
|
Revision as of 15:45, 31 January 2011
<section begin="desc" />Retrieve subsystem's statistics into string<section end="desc" />
Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $SsStat function is to be entered.
This function allows retrieval of a specific subsystem's statistics into a string.
The $SsStat function accepts two arguments and returns a string made up of an error code and returned statistics.
The first argument is a string of blank delimited words indicating the statistics to be returned. The length of each returned statistic is always a multiple of 4 bytes. This facilitates the use of $StatD with the returned string. For more information about available statistics, see the "SirMon User's Guide".
The second argument is the subsystem name for which data is to be returned.
Syntax
<section begin="syntax" /> %STRING = $SsStat(stat_list, subsystem_name) <section end="syntax" />
The data returned by $SsStat is binary; the first four bytes contain a return code. If the return code is negative, only four bytes are returned. If the return code is positive, it contains a number of milliseconds that the online has been up. This provides a convenient number for calculating rates for the statistics. With a positive return code, the next ten bytes contain the blank padded file name, followed by two bytes containing the binary file number. This means that the actual data starts at offset 16 (byte number 17) in the result string.
-5 - Required parameter not specified -12 - Invalid parameter (argument 2 > NUSERS, or invalid name in stat_list) -13 - STAT not linked in -14 - Result string would be longer than 255 bytes -15 - Subsystem not active
The following program displays some totals for subsystem SIRMON.
B %DATA IS STRING LEN 255 %DATA = $SsStat('NUSER RESEVAL RESSWCH', 'SIRMON') IF $LEN(%DATA) = 4 THEN PRINT '$SSSTAT ERROR... RC = ' WITH - $UNBIN(%DATA) STOP END IF PRINT 'SUBSYSNAME = ' WITH $SUBSTR(%DATA, 5, 10) PRINT 'NUSER = ' WITH - $UNBIN( $SUBSTR(%DATA, 17, 4) ) PRINT 'RESEVAL = ' WITH - $UNBIN( $SUBSTR(%DATA, 21, 4) ) PRINT 'RESSWCH = ' WITH - $UNBIN( $SUBSTR(%DATA, 25, 4) ) END
- &SFUNC