The solaris-kstat library provides a Ruby interface for gathering kernel statistics from the Solaris operating system. Each matching statistic is provided with its module, instance, and name fields, as well as its actual value.
Homepage Rubygems Ruby Documentation Download
gem install solaris-kstat -v 1.1.2
== Description A Ruby interface for the Solaris kstat library. == Prerequisites Solaris 8 (SunOS 2.8) or later. == Installation gem install solaris-kstat == Synopsis require 'solaris/kstat' require 'pp' include Solaris k = Kstat.new('cpu_info', 0, 'cpu_info0') pp k.record {'cpu_info'=> {0=> {'cpu_info0'=> {'chip_id'=>0, 'fpu_type'=>'sparcv9', 'device_ID'=>0, 'cpu_type'=>'sparcv9', 'implementation'=>'Unknown', 'clock_MHz'=>502, 'state_begin'=>1105974702, 'state'=>'on-line'}}}} == Class Methods Kstat.new(module=nil, instance=-1, name=nil) Creates and returns a Kstat object. This does not traverse the kstat chain. The Kstat#record method uses the values passed to actually retrieve data. You may specify a module, an instance and a name. The module defaults to nil (all modules), the instance defaults to -1 (all instances) and the name defaults to nil (all names). == Instance Methods Kstat#record Returns a nested hash based on the values passed to the constructor. How deeply that hash is nested depends on the values passed to the constructor. The more specific your criterion, the less data you will receive. == Unsupported names The following names will not return any meaningful value: * kstat_headers * sfmmu_global_stat * sfmmu_percpu_stat == Known Issues None at this time. Please report any issues on the project page at https://github.com/djberg96/solaris-kstat == Designer's Notes I have noticed that results from the cpu_stat module differ from the output of the 'kstat' command line tool. I am convinced that my code is correct and that there is a bug in the Solaris::Kstat Perl module. Unfortunately, the source for the version of the Solaris::Kstat Perl module that works on Solaris 8 and later is not available (the version on CPAN only works on Solaris 6 and 7). See http://tinyurl.com/karxw for more details. == Acknowledgements Thanks go to Charlie Mills for help with the 'volatile' issue for the original C code. == Future Plans Add snaptime and crtime information to the statistics hash. == License Artistic 2.0 == Copyright (C) 2003-2015 Daniel J. Berger All Rights Reserved == Contributions Although this library is free, please consider having your company setup a gittip if used by your company professionally. http://www.gittip.com/djberg96/ == Warranty This package is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantability and fitness for a particular purpose. == Author Daniel J. Berger == See Also kstat(1M)