summaryrefslogtreecommitdiff
path: root/zz-sys
diff options
context:
space:
mode:
Diffstat (limited to 'zz-sys')
-rw-r--r--zz-sys72
1 files changed, 72 insertions, 0 deletions
diff --git a/zz-sys b/zz-sys
new file mode 100644
index 0000000..204b250
--- /dev/null
+++ b/zz-sys
@@ -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: