$SyStat: Difference between revisions

From m204wiki
Jump to navigation Jump to search
(Automatically generated page update)
mNo edit summary
Line 6: Line 6:
This function allows retrieval of system statistics into a string.  
This function allows retrieval of system statistics into a string.  


The $SyStat function accepts one argument and returns a string made up of an error code and returned statistics.  
The <var>$SyStat</var> function accepts one argument 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 <var class="product">[http://sirius-software.com/maint/download/monr.pdf SirMon User's Guide]</var>.
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 <var>$StatD</var> with the returned string. For more information about available statistics, see the <var class="product">[http://sirius-software.com/maint/download/monr.pdf SirMon User's Guide]</var>.


==Syntax==
==Syntax==
<p class="syntax"><span class="term">%STRING</span> = <span class="literal">$SyStat</span>(<span class="term">stat_list</span>)
<p class="syntax"><span class="term">%string</span> = <span class="literal">$SyStat</span>(<span class="term">stat_list</span>)
</p>
<p>
<var class="term">%string</var> is made up of binary data, the first 4 bytes of which is an error code. If the error code is negative, <var class="term">%string</var> will only be 4 bytes long.</p>
 
===Return codes===
<p class="code"> -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
</p>
</p>
<p>%STRING is made up of binary data, the first 4 bytes of which is an error code. If the error code is negative %STRING will only be 4 bytes long.</p>


The data returned by $SyStat is binary with the first 4 bytes containing an error code. If the error code is negative, only 4 bytes are returned. If the error code is positive, it contains a number of milliseconds since the online region was brought up. This provides a convenient number for calculating rates for the statistics. When a positive error code is returned the next 10 bytes contain the blank padded word 'SYSTEM' followed by 2 bytes of binary 0. This means that the actual data starts at offset 16 (byte number 17) in the result string.
==Usage notes==
<ul>
<li>The data returned by <var>$SyStat</var> is binary, with the first 4 bytes containing an error code. If the error code is negative, only 4 bytes are returned. If the error code is positive, it contains the number of milliseconds since the online region was brought up. This provides a convenient number for calculating rates for the statistics.  


<p class="code">
<li>When a positive error code is returned, the next 10 bytes contain the blank-padded word <code>SYSTEM</code> followed by 2 bytes of binary 0. This means that the actual data starts at offset 16 (byte number 17) in the result string.
  -5 - Required parameter not specified
</ul>
-12 - Invalid name in stat_list
-13 - STAT not linked in
-14 - Result string would be longer than 255 bytes
</p>
<p class="caption">$SyStat return codes
</p>


==Example==
The following program displays some totals for system statistics.
The following program displays some totals for system statistics.
<p class="code"> B
<p class="code">B
   
   
%DATA IS STRING LEN 255
%DATA IS STRING LEN 255
   
   
%DATA = $SyStat('CPU DKIO SVIO')
%DATA = $SyStat('CPU DKIO SVIO')
IF $LEN(%DATA) = 4 THEN
IF $LEN(%DATA) = 4 THEN
    PRINT '$SYSTAT ERROR... RC = ' WITH $UNBIN(%DATA)
  PRINT '$SYSTAT ERROR... RC = ' WITH $UNBIN(%DATA)
    STOP
  STOP
END IF
END IF
   
   
PRINT 'CPU = ' WITH $UNBIN( $SUBSTR(%DATA, 17, 4) )
PRINT 'CPU = ' WITH $UNBIN( $SUBSTR(%DATA, 17, 4) )
PRINT 'DKIO = ' WITH $UNBIN( $SUBSTR(%DATA, 21, 4) )
PRINT 'DKIO = ' WITH $UNBIN( $SUBSTR(%DATA, 21, 4) )
PRINT 'SVIO = ' WITH $UNBIN( $SUBSTR(%DATA, 25, 4) )
PRINT 'SVIO = ' WITH $UNBIN( $SUBSTR(%DATA, 25, 4) )
   
   
END
END
</p>
</p>


Line 48: Line 53:
<li>[[Sirius $Functions]]
<li>[[Sirius $Functions]]
</ul>
</ul>
<p>
</p>


[[Category:$Functions|$SyStat]]
[[Category:$Functions|$SyStat]]

Revision as of 00:21, 16 April 2013

Retrieve system statistics into string

Most Sirius $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.

The $SyStat function accepts one argument 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.

Syntax

%string = $SyStat(stat_list)

%string is made up of binary data, the first 4 bytes of which is an error code. If the error code is negative, %string will only be 4 bytes long.

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

Usage notes

  • The data returned by $SyStat is binary, with the first 4 bytes containing an error code. If the error code is negative, only 4 bytes are returned. If the error code is positive, it contains the number of milliseconds since the online region was brought up. This provides a convenient number for calculating rates for the statistics.
  • When a positive error code is returned, the next 10 bytes contain the blank-padded word SYSTEM followed by 2 bytes of binary 0. This means that the actual data starts at offset 16 (byte number 17) in the result string.

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

Products authorizing $SyStat