X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=bwmon.py;h=0f2339073b2232a63b64089e0cac8acd12494faf;hb=0b0cd940aa2227074a877c480ba15542c82b9d59;hp=801e02ea169ee77e933486eb88c1e18f45c78f81;hpb=d3a3b2d3ea98e72183d1cb5497c38badaa0c5863;p=nodemanager.git diff --git a/bwmon.py b/bwmon.py index 801e02e..0f23390 100644 --- a/bwmon.py +++ b/bwmon.py @@ -1,8 +1,5 @@ #!/usr/bin/python # -# $Id$ -# $URL$ -# # Average bandwidth monitoring script. Run periodically via NM db.sync to # enforce a soft limit on daily bandwidth usage for each slice. If a # slice is found to have transmitted 80% of its daily byte limit usage, @@ -217,7 +214,7 @@ class Slice: self.capped = False self.updateSliceTags(rspec) - bwlimit.set(xid = self.xid, + bwlimit.set(xid = self.xid, dev = dev_default, minrate = self.MinRate * 1000, maxrate = self.MaxRate * 1000, maxexemptrate = self.Maxi2Rate * 1000, @@ -434,7 +431,7 @@ class Slice: (runningrates['minexemptrate'] != self.Mini2Rate * 1000) or \ (runningrates['share'] != self.Share): # Apply parameters - bwlimit.set(xid = self.xid, + bwlimit.set(xid = self.xid, dev = dev_default, minrate = self.MinRate * 1000, maxrate = new_maxrate, minexemptrate = self.Mini2Rate * 1000, @@ -452,7 +449,7 @@ def gethtbs(root_xid, default_xid): Turn off HTBs without names. """ livehtbs = {} - for params in bwlimit.get(): + for params in bwlimit.get(dev = dev_default): (xid, share, minrate, maxrate, minexemptrate, maxexemptrate, @@ -466,7 +463,7 @@ def gethtbs(root_xid, default_xid): # Orphaned (not associated with a slice) class name = "%d?" % xid logger.log("bwmon: Found orphaned HTB %s. Removing." %name) - bwlimit.off(xid) + bwlimit.off(xid, dev = dev_default) livehtbs[xid] = {'share': share, 'minrate': minrate, @@ -492,12 +489,13 @@ def sync(nmdbcopy): default_Maxi2Rate, \ default_MaxKByte,\ default_Maxi2KByte,\ - default_Share + default_Share, \ + dev_default # All slices names = [] # In case the limits have changed. - default_MaxRate = int(bwlimit.get_bwcap() / 1000) + default_MaxRate = int(bwlimit.get_bwcap(dev_default) / 1000) default_Maxi2Rate = int(bwlimit.bwmax / 1000) # Incase default isn't set yet. @@ -626,7 +624,7 @@ def sync(nmdbcopy): del slices[deadxid] if kernelhtbs.has_key(deadxid): logger.verbose("bwmon: Removing HTB for %s." % deadxid) - bwlimit.off(deadxid) + bwlimit.off(deadxid, dev = dev_default) # Clean up deaddb for deadslice in deaddb.keys(): @@ -691,7 +689,7 @@ def allOff(): kernelhtbs = gethtbs(root_xid, default_xid) if len(kernelhtbs): logger.log("bwmon: Disabling all running HTBs.") - for htb in kernelhtbs.keys(): bwlimit.off(htb) + for htb in kernelhtbs.keys(): bwlimit.off(htb, dev = dev_default) lock = threading.Event()