HEX
Server: LiteSpeed
System: Linux s3604.bom1.stableserver.net 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
User: dmstechonline (1480)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: //lib64/nagios/plugins/vz7_check_a2_ifspeed.sh
#!/bin/bash
# Ref : OPSTEAM-15874
# Find interface speed & alert
#

iface_min="1000" # Expected minimum interface speed in MB
iface_regex="vz" # Regex to test if node is VZ or SRT
iface_host="$(hostname)"

if [[ ${iface_host} =~ ${iface_regex} ]]; then
  iface_device=$(ip link |grep "br0 state UP" | awk -F": " '{print $2}')
  iface_speed=$(cat /sys/class/net/"${iface_device}"/speed)
  if [ "${iface_speed}" -lt "${iface_min}" ]; then
    printf "%s\n" "Check_interface_speed - ${iface_device} speed is ${iface_speed}Mbps - CRIT"
    exit 2
  else
    printf "%s\n" "Check_interface_speed - ${iface_device} speed is ${iface_speed}Mbps - OK"
    exit 0
  fi
else
  iface_device=$(ip -4 route ls | grep default | awk '{print $NF}')
  iface_speed=$(cat /sys/class/net/"${iface_device}"/speed)
  if [ "${iface_speed}" -lt "${iface_min}" ]; then
    printf "%s\n" "Check_interface_speed - ${iface_device} speed is ${iface_speed}Mbps - CRIT"
    exit 2
  else
    printf "%s\n" "Check_interface_speed - ${iface_device} speed is ${iface_speed}Mbps - OK"
    exit 0
  fi
fi