Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- __author__ = 'daniel'
- import argparse
- import time
- import sys
- def parseArgs():
- parser = argparse.ArgumentParser()
- parser.add_argument('-i', '--iface', default='eth0', metavar='interface')
- namespace = parser.parse_args()
- return namespace
- def getData(namespace):
- device = open('/proc/net/dev', 'r')
- rawData = device.readlines()
- for line in rawData:
- if namespace.iface in line:
- return line
- raise RuntimeError("Device does not exist")
- def parseData(namespace):
- try:
- rawData = getData(namespace)
- except RuntimeError as error:
- raise RuntimeError(error)
- rbytes = int(str(rawData).split()[1])
- rpackets = int(str(rawData).split()[2])
- tbytes = int(str(rawData).split()[9])
- tpackets = int(str(rawData).split()[10])
- return rbytes,rpackets,tbytes,tpackets
- def output(namespace):
- try:
- rbytes1,rpackets1,tbytes1,tpackets1 = parseData(namespace)
- time.sleep(1)
- rbytes2,rpackets2,tbytes2,tpackets2 = parseData(namespace)
- except RuntimeError as error:
- print error
- sys.exit(3)
- resRBytes = rbytes2 - rbytes1
- resRPackets = rpackets2 - rpackets1
- resTBytes = tbytes2 - tbytes1
- resTPackets = tpackets2 - tpackets1
- print "Load on " + namespace.iface + \
- " rbps=" + str(resRBytes) + \
- " rpps=" + str(resRPackets) + \
- " tbps=" + str(resTBytes) + \
- " tpps=" + str(resTPackets) + \
- " | rbps=" + str(resRBytes) + \
- ", rpps=" + str(resRPackets) + \
- ", tbps=" + str(resTBytes) + \
- ", tpps=" + str(resTPackets)
- sys.exit(0)
- output(parseArgs())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement