diff options
author | Erich Eckner <git@eckner.net> | 2019-09-21 19:58:50 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2019-09-21 19:58:50 +0200 |
commit | 40b0437c8bbb158ce2198eb0fdebf5e68c1c43fe (patch) | |
tree | 657b6227b92dfc8e2d587f0297d7aa780179f7f3 | |
parent | 72ba5784d3fb1b924729470732b1c69d3abcda10 (diff) | |
download | logwatch-overrides-40b0437c8bbb158ce2198eb0fdebf5e68c1c43fe.tar.xz |
zz-sys: fix imports
-rw-r--r-- | zz-sys | 72 |
1 files changed, 72 insertions, 0 deletions
@@ -0,0 +1,72 @@ + +######################################################## +# Please file all bug reports, patches, and feature +# requests under: +# https://sourceforge.net/p/logwatch/_list/tickets +# Help requests and discusion can be filed under: +# https://sourceforge.net/p/logwatch/discussion/ +######################################################## + +######################################################## + +# This script prints out information about the CPU(s) and physical memory. +# It obtains the information from the Sys::CPU and Sys::MemInfo perl modules, +# so these must be installed. + +# Note that the number of CPUs is not the number of physical CPU chips; +# CPUs with Hyperthreading or multiple cores affect the number of CPUs +# displayed. + +####################################################### +## Copyright (c) 2008 Laurent Dufour +## Covered under the included MIT/X-Consortium License: +## http://www.opensource.org/licenses/mit-license.php +## All modifications and contributions by other persons to +## this script are assumed to have been donated to the +## Logwatch project and thus assume the above copyright +## and licensing terms. If you want to make contributions +## under your own copyright or a different license this +## must be explicitly stated in the contribution an the +## Logwatch project reserves the right to not accept such +## contributions. If you have made significant +## contributions to this script and want to claim +## copyright please contact logwatch-devel@lists.sourceforge.net. +######################################################### + +eval "require Sys::Info::Base"; +if ($@) { + print STDERR "No Sys::Info::Base module installed. To install, execute the command:\n"; + print STDERR " perl -MCPAN -e 'install Sys::Info::Base' \n\n"; +} else { + use Sys::Info; + my $info = Sys::Info->new; + my $cpu = $info->device( CPU => %options ); + print " CPU: " . $cpu->identify . "\n"; +} + +use POSIX qw(uname); +my ($OSname, $hostname, $release, $version, $machine) = POSIX::uname(); +print " Machine: $machine\n"; +my $OStitle; +$OStitle = $OSname; +$OStitle = "Solaris" if ($OSname eq "SunOS" && $release >= 2); +print " Release: $OStitle $release\n"; + +eval "require Sys::MemInfo"; +if ($@) { + print STDERR "No Sys::MemInfo module installed. To install, execute the command:\n"; + print STDERR " perl -MCPAN -e 'install Sys::MemInfo' \n\n"; +} else { + import Sys::MemInfo qw(totalmem freemem totalswap freeswap); + my $swapused = &totalswap - &freeswap; + printf " Total Memory: %6d MB\n", ((&totalmem - (&totalmem % (1024*1024))) / (1024*1024)); + printf " Free Memory: %6d MB\n", ((&freemem - (&freemem % (1024*1024))) / (1024*1024)); + printf " Swap Used: %6d MB\n", (($swapused - ($swapused % (1024*1024))) / (1024*1024)); +} + +# vi: shiftwidth=3 tabstop=3 syntax=perl et +# Local Variables: +# mode: perl +# perl-indent-level: 3 +# indent-tabs-mode: nil +# End: |