$SyStat: Difference between revisions
m (→Syntax: add "unsigned") |
(Correction on the location of each statistic) |
||
Line 17: | Line 17: | ||
<tr><th>stat_list</th> | <tr><th>stat_list</th> | ||
<td>A string of blank-delimited words indicating the statistics to be returned. | <td>A string of blank-delimited words indicating the statistics to be returned. Each returned statistic is a 4-byte, unsigned, binary number; the offset of each statistic is plus four from the previous statistic, with the first statistic starting at offset 16 or byte number 17. This facilitates the use of <var>$StatD</var> with the returned string. For more information about available statistics, see [[System statistics displayed in SirMon]].</td></tr> | ||
</table> | </table> | ||
Revision as of 17:56, 11 February 2018
Retrieve system statistics into string
Note: Many $functions have been deprecated in favor of Object Oriented methods. There is no OO equivalent for the $SyStat function.
This function allows retrieval of system statistics into a string.
Syntax
%string = $SyStat(stat_list)
%string | If the length of the returned value is exactly four, %string is a binary number indicating an error code. Otherwise, the first four bytes of %string is an unsigned binary number indicating the number of milliseconds the Online has been up. This provides a convenient number for calculating rates for the statistics.
The next ten bytes contain the blank-padded word |
---|---|
stat_list | A string of blank-delimited words indicating the statistics to be returned. Each returned statistic is a 4-byte, unsigned, binary number; the offset of each statistic is plus four from the previous statistic, with the first statistic starting at offset 16 or byte number 17. This facilitates the use of $StatD with the returned string. For more information about available statistics, see System statistics displayed in SirMon. |
Return codes
-5 Required parameter not specified -12 Invalid name in stat_list -13 STAT not linked in -14 Result string would be longer than 255 bytes
Example
The following program displays some totals for system statistics.
B %DATA IS STRING LEN 255 %DATA = $SyStat('CPU DKIO SVIO') IF $LEN(%DATA) = 4 THEN PRINT '$SYSTAT ERROR... RC = ' WITH $UNBIN(%DATA) STOP END IF PRINT 'CPU = ' WITH $UNBIN( $SUBSTR(%DATA, 17, 4) ) PRINT 'DKIO = ' WITH $UNBIN( $SUBSTR(%DATA, 21, 4) ) PRINT 'SVIO = ' WITH $UNBIN( $SUBSTR(%DATA, 25, 4) ) END