kstat(1M)




NAME

     kstat - display kernel statistics


SYNOPSIS

     kstat [-lpq] [-T  u  |  d  ]  [-c  class]  [-m  module]  [-i
     instance] [-n name] [-s statistic] [interval  [count]]

     kstat    [-lpq]    [-T     u    |    d    ]    [-c    class]
     [module:instance:name:statistic...] [interval  [count]]


DESCRIPTION

     The kstat utility examines the available kernel  statistics,
     or  kstats, on the system and reports those statistics which
     match the criteria specified  on  the  command  line.   Each
     matching statistic is printed with its module, instance, and
     name fields, as well as its actual value.

     Kernel statistics may be published by various kernel subsys-
     tems,  such as drivers or loadable modules; each kstat has a
     module field that denotes its publisher.  Since each  module
     may  have countable entities (such as multiple disks associ-
     ated with the sd(7D) driver) for which it wishes  to  report
     statistics,  the  kstat  also has an instance field to index
     the statistics for each entity; kstat instances are numbered
     starting  from  zero.   Finally,  the  kstat is given a name
     unique within its module.

     Each kstat may be a special kstat type, an  array  of  name-
     value  pairs,  or  raw  data.   In the name-value case, each
     reported value is given a label, which we refer  to  as  the
     statistic.  Known raw and special kstats are given statistic
     labels for each of their values by  kstat;  thus,  all  pub-
     lished       values      can      be      referenced      as
     module:instance:name:statistic.

     When invoked without any module operands or  options,  kstat
     will  match  all  defined statistics on the system.  Example
     invocations are provided below.  All times are displayed  as
     fractional seconds since system boot.


OPTIONS

     The tests specified by the following options  are  logically
     ANDed,  and  all matching kstats will be selected. A regular
     expression containing shell metacharacters must be protected
     from the shell by enclosing it with the appropriate quotes.

     The argument for the -c, -i, -m, -n, and -s options  may  be
     specified as a shell glob pattern, or a Perl regular expres-
     sion enclosed in '/' characters.

     -c class
           Displays only kstats that match the specified class.

     -i instance
           Displays  only  kstats  that   match   the   specified
           instance.

     -l    Lists matching kstat names without displaying values.

     -m module
           Displays only kstats that match the specified module.

     -n name
           Displays only kstats that match the specified name.

     -p    Displays output in parseable format. All example  out-
           put  in this document is given in this format. If this
           option is not specified, kstat produces  output  in  a
           human-readable, table format.

     -q    Displays no output, but return appropriate exit status
           for matches against given criteria.

     -s statistic
           Displays only kstats that match the specified  statis-
           tic.

     -T d | u
           Displays a time stamp before  each  statistics  block,
           either in ctime(3C) format ('d') or as an alphanumeric
           representation of the value returned by time(2) ('u').


OPERANDS

     The following operands are supported:

     module:instance:name:statistic
           Alternate method of specifying module, instance, name,
           and  statistic as described above. Each of the module,
           instance, name, or statistic specifiers may be a shell
           glob  pattern or a Perl regular expression enclosed by
           '/' characters.  It is possible to use both  specifier
           types  within  a  single  operand. Leaving a specifier
           empty is equivalent to using the '*' glob pattern  for
           that specifier.

     interval
           The number of seconds between reports.

     count The number of reports to be printed.


EXAMPLES

     In the following examples, all the command lines in a  block
     produce  the  same  output, as shown immediately below.  The
     exact statistics and values will of course vary from machine
     to machine.
     Example 1: Using the kstat Command

     example$ kstat -p -m unix -i 0 -n system_misc -s 'avenrun*'
     example$ kstat -p -s 'avenrun*'
     example$ kstat -p 'unix:0:system_misc:avenrun*'
     example$ kstat -p ':::avenrun*'
     example$ kstat -p ':::/^avenrun_/d+min$/'

     unix:0:system_misc:avenrun_15min        3
     unix:0:system_misc:avenrun_1min 4
     unix:0:system_misc:avenrun_5min 2

     Example 2: Using the kstat Command

     example$ kstat -p -m cpu_stat -s 'intr*'
     example$ kstat -p cpu_stat:::/^intr/

     cpu_stat:0:cpu_stat0:intr       29682330
     cpu_stat:0:cpu_stat0:intrblk    87
     cpu_stat:0:cpu_stat0:intrthread 15054222
     cpu_stat:1:cpu_stat1:intr       426073
     cpu_stat:1:cpu_stat1:intrblk    51
     cpu_stat:1:cpu_stat1:intrthread 289668
     cpu_stat:2:cpu_stat2:intr       134160
     cpu_stat:2:cpu_stat2:intrblk    0
     cpu_stat:2:cpu_stat2:intrthread 131
     cpu_stat:3:cpu_stat3:intr       196566
     cpu_stat:3:cpu_stat3:intrblk    30
     cpu_stat:3:cpu_stat3:intrthread 59626

     Example 3: Using the kstat Command

     example$ kstat -p :::state ':::avenrun*'
     example$ kstat -p :::state :::/^avenrun/

     cpu_info:0:cpu_info0:state      on-line
     cpu_info:1:cpu_info1:state      on-line
     cpu_info:2:cpu_info2:state      on-line
     cpu_info:3:cpu_info3:state      on-line
     unix:0:system_misc:avenrun_15min        4
     unix:0:system_misc:avenrun_1min 10
     unix:0:system_misc:avenrun_5min 3

     Example 4: Using the kstat Command

     example$ kstat -p 'unix:0:system_misc:avenrun*' 1 3
     unix:0:system_misc:avenrun_15min        15
     unix:0:system_misc:avenrun_1min 11
     unix:0:system_misc:avenrun_5min 21

     unix:0:system_misc:avenrun_15min        15
     unix:0:system_misc:avenrun_1min 11
     unix:0:system_misc:avenrun_5min 21

     unix:0:system_misc:avenrun_15min        15
     unix:0:system_misc:avenrun_1min 11
     unix:0:system_misc:avenrun_5min 21

     Example 5: Using the kstat Command

     example$ kstat -p -T d 'unix:0:system_misc:avenrun*' 5 2
     Thu Jul 22 19:39:50 1999
     unix:0:system_misc:avenrun_15min        12
     unix:0:system_misc:avenrun_1min 0
     unix:0:system_misc:avenrun_5min 11

     Thu Jul 22 19:39:55 1999
     unix:0:system_misc:avenrun_15min        12
     unix:0:system_misc:avenrun_1min 0
     unix:0:system_misc:avenrun_5min 11

     Example 6: Using the kstat Command

     example$ kstat -p -T u 'unix:0:system_misc:avenrun*'
     932668656
     unix:0:system_misc:avenrun_15min        14
     unix:0:system_misc:avenrun_1min 5
     unix:0:system_misc:avenrun_5min 18


EXIT STATUS

     The following exit values are returned:

     0     One or more statistics were matched.

     1     No statistics were matched.

     2     Invalid command line options were specified.

     3     A fatal error occurred.


FILES

     /dev/kstat
           kernel statistics driver


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________________________________
    | ATTRIBUTE TYPE              | ATTRIBUTE VALUE             |
    |_____________________________|_____________________________|
    | Availability                | SUNWcsu                     |
    |_____________________________|_____________________________|


SEE ALSO

     sh(1), time(2), ctime(3C)gmatch(3GEN), kstat(3KSTAT), attri-
     butes(5), kstat(7D), sd(7D), kstat(9S)


NOTES

     If the pattern argument contains glob or Perl RE metacharac-
     ters  which are also shell metacharacters, it will be neces-
     sary to enclose the pattern with appropriate shell quotes.


Man(1) output converted with man2html