$SsStat: Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (→‎Syntax: add "unsigned")
 
(13 intermediate revisions by 3 users not shown)
Line 2: Line 2:
<span class="pageSubtitle">Retrieve subsystem's statistics into string</span>
<span class="pageSubtitle">Retrieve subsystem's statistics into string</span>


<p class="warning">Most Sirius $functions have been deprecated in favor of Object Oriented methods. There is currently no OO equivalent for the $SsStat function.</p>
<p class="warn"><b>Note: </b>Many $functions have been deprecated in favor of Object Oriented methods. There is currently no OO equivalent for the <var>$SsStat</var> function.</p>


This function allows retrieval of a specific subsystem's statistics into a string.  
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.  
==Syntax==
<p class="syntax"><span class="term">%string</span> = <span class="literal">$SsStat</span>(<span class="term">stat_list</span>, <span class="term">subsystem_name</span>)
</p>
<table>
<tr><th>%string</th>
<td>A string of data. If the string contains exactly four bytes, it is a binary [[#Return codes|error code]].
<p>
Otherwise, the first four bytes contain the unsigned binary number of milliseconds that the Online has been up. This provides a convenient number for calculating rates for the statistics. The next ten bytes contain the blank-padded file name, then follow two bytes containing the binary file number. This means that the actual statistical data starts at offset 16 (byte number 17) in the result string. </p></td></tr>


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>.  
<tr><th>stat_list</th>
 
<td>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.  
The second argument is the subsystem name for which data is to be returned.
<p>
 
For more information about available statistics, see the <var class="product">[[SirMon]]</var> M204wiki pages. </p></td></tr>
==Syntax==
<p class="syntax"><section begin="syntax" />%STRING = $SsStat(stat_list, subsystem_name)
<section end="syntax" /></p>
<p class="caption">%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 $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.
<tr><th>subsystem_name</th>
<td>The name of the subsystem for which data is to be returned. </td></tr>
</table>


<p class="code">
===Return codes===
  -5 - Required parameter not specified
<p class="code"> -5   Required parameter not specified
-12 - Invalid parameter (argument 2 > NUSERS,
-12   Invalid parameter (argument 2 > NUSERS,
          or invalid name in stat_list)
      or invalid name in stat_list)
-13 - STAT not linked in
-13   STAT not linked in
-14 - Result string would be longer than 255 bytes
-14   Result string would be longer than 255 bytes
-15 - Subsystem not active
-15   Subsystem not active
</p>
<p class="caption">$SsStat return codes
</p>
</p>


The following program displays some totals for subsystem SIRMON.
==Example==
The following program displays some totals for subsystem <code>SIRMON</code>.


<p class="code"> B
<p class="code">B
   
   
%DATA IS STRING LEN 255
%DATA IS STRING LEN 255
   
   
%DATA = $SsStat('NUSER RESEVAL RESSWCH', 'SIRMON')
%DATA = $SsStat('NUSER RESEVAL RESSWCH', 'SIRMON')
IF $LEN(%DATA) = 4 THEN
IF $LEN(%DATA) = 4 THEN
    PRINT '$SSSTAT ERROR... RC = ' WITH -
  PRINT '$SSSTAT ERROR... RC = ' WITH -
    $UNBIN(%DATA)
  $UNBIN(%DATA)
    STOP
  STOP
END IF
END IF
   
   
PRINT 'SUBSYSNAME = ' WITH $SUBSTR(%DATA, 5, 10)
PRINT 'SUBSYSNAME = ' WITH $SUBSTR(%DATA, 5, 10)
PRINT 'NUSER = ' WITH -
PRINT 'NUSER = ' WITH -
$UNBIN( $SUBSTR(%DATA, 17, 4) )
$UNBIN( $SUBSTR(%DATA, 17, 4) )
PRINT 'RESEVAL = ' WITH -
PRINT 'RESEVAL = ' WITH -
$UNBIN( $SUBSTR(%DATA, 21, 4) )
$UNBIN( $SUBSTR(%DATA, 21, 4) )
PRINT 'RESSWCH = ' WITH -
PRINT 'RESSWCH = ' WITH -
$UNBIN( $SUBSTR(%DATA, 25, 4) )
$UNBIN( $SUBSTR(%DATA, 25, 4) )
   
   
END
END
</p>
</p>


<h2>Products authorizing {{PAGENAMEE}}</h2><ul class="smallAndTightList">
==Products authorizing {{PAGENAMEE}}==
<li>[[Sirius functions]]
<ul class="smallAndTightList">
<li>[[List of $functions|Sirius functions]]
</ul>
</ul>
<p>
</p>


[[Category:$Functions|$SsStat]]
[[Category:$Functions|$SsStat]]

Latest revision as of 14:53, 4 October 2016

Retrieve subsystem's statistics into string

Note: Many $functions have been deprecated in favor of Object Oriented methods. There is currently no OO equivalent for the $SsStat function.

This function allows retrieval of a specific subsystem's statistics into a string.

Syntax

%string = $SsStat(stat_list, subsystem_name)

%string A string of data. If the string contains exactly four bytes, it is a binary error code.

Otherwise, the first four bytes contain the unsigned binary number of milliseconds that the Online has been up. This provides a convenient number for calculating rates for the statistics. The next ten bytes contain the blank-padded file name, then follow two bytes containing the binary file number. This means that the actual statistical data starts at offset 16 (byte number 17) in the result string.

stat_list 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 M204wiki pages.

subsystem_name The name of the subsystem for which data is to be returned.

Return codes

-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

Example

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

Products authorizing $SsStat