blob: f9afa6dab042f768a8eb0f0f107963cf59b8fbb0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#!/usr/bin/perl -wT
# (c) 2003 by Peter Palfrader
#
# mrtg memory and swap usage check
use strict;
use English;
my $IFACE = shift @ARGV;
die ("Usage: $PROGRAM_NAME <interface>") unless defined $IFACE;
$ENV{'PATH'} = '/bin:/usr/bin';
delete @ENV{'IFS', 'CDPATH', 'ENV', 'BASH_ENV'};
$UID=$EUID;
open(FOO, "/proc/net/dev") || die "$0: can't open /proc/net/dev: $!";
my @dev = <FOO>;
close FOO;
my $dev = join '', @dev;
my ($in, $out) = $dev =~ /^\s*$IFACE:\s*(\d+)\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+(\d+)/m;
defined $in or
$in = 0,
warn ("Incoming bytes not found for $IFACE\n");
defined $out or
$out = 0,
warn ("Outgoing bytes not found for $IFACE\n");
my $uptime=`/usr/bin/uptime`;
my $hostname=`/bin/hostname`;
print $in,"\n";
print $out,"\n";
printf "%s%s", $uptime, $hostname;
|