Код скрипта ../../bin/log-snmp.sh
#!/bin/bash
# Script for logging current SNMP information:
# - RX and TX bytes over some network interface
# Log to this file:
LOG_FILE=/var/www/stat/snmp.log
# Network interface number:
N=48
# SNMP host
HOST=192.168.222.144
# SNMP community
COMMUNITY=public
# MIBS
MIB1="IF-MIB::ifDescr.$N"
MIB2="IF-MIB::ifInOctets.$N"
MIB3="IF-MIB::ifInUcastPkts.$N"
MIB4="IF-MIB::ifOutOctets.$N"
MIB5="IF-MIB::ifOutUcastPkts.$N"
#############################
# Timestamp:
TS=`date '+%Y-%m-%d %H:%M:%S'`
# snmp info
RES=''
for MIB in $MIB1 $MIB2 $MIB3 $MIB4 $MIB5; do
LINE=`snmpget -c $COMMUNITY -v 1 $HOST $MIB`
NAME=`echo $LINE | sed "s/^IF-MIB::\([[:alnum:]]\+\).*/\1/"`
VALUE=`echo "$LINE" | sed "s/^IF-MIB::[[:alnum:]]\+\.$N = [[:alnum:]]\+: //"`
RES="$RES $NAME:$VALUE"
done
# Log all to the file
echo "$TS => $RES" >> "$LOG_FILE"
#------------------------------------------------------------