git://git.onelab.eu
/
mom.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e3596f8
)
Removed unused class variables.
author
Faiyaz Ahmed
<faiyaza@cs.princeton.edu>
Mon, 10 Jul 2006 20:22:12 +0000
(20:22 +0000)
committer
Faiyaz Ahmed
<faiyaza@cs.princeton.edu>
Mon, 10 Jul 2006 20:22:12 +0000
(20:22 +0000)
bwmon.py
patch
|
blob
|
history
diff --git
a/bwmon.py
b/bwmon.py
index
6274ee8
..
3946957
100755
(executable)
--- a/
bwmon.py
+++ b/
bwmon.py
@@
-15,7
+15,7
@@
# Faiyaz Ahmed <faiyaza@cs.princeton.edu>
# Copyright (C) 2004-2006 The Trustees of Princeton University
#
# Faiyaz Ahmed <faiyaza@cs.princeton.edu>
# Copyright (C) 2004-2006 The Trustees of Princeton University
#
-# $Id: bwmon.py,v 1.
6 2006/07/10 15:19:35
faiyaza Exp $
+# $Id: bwmon.py,v 1.
7 2006/07/10 19:19:07
faiyaza Exp $
#
import syslog
#
import syslog
@@
-86,8
+86,6
@@
class Slice:
time - beginning of recording period in UNIX seconds
bytes - low bandwidth bytes transmitted at the beginning of the recording period
exemptbytes - high bandwidth bytes transmitted at the beginning of the recording period (for I2 -F)
time - beginning of recording period in UNIX seconds
bytes - low bandwidth bytes transmitted at the beginning of the recording period
exemptbytes - high bandwidth bytes transmitted at the beginning of the recording period (for I2 -F)
- avgrate - average low bandwidth rate to enforce over the recording period
- avgexemptrate - average high bandwidth rate to enforce over the recording period (for I2 -F)
last_avgrate - last recorded avgrate from NM
last_maxrate - last recorded maxrate from NM
last_avgexemptrate - last recorded avgexemptrate from NM
last_avgrate - last recorded avgrate from NM
last_maxrate - last recorded maxrate from NM
last_avgexemptrate - last recorded avgexemptrate from NM
@@
-97,13
+95,11
@@
class Slice:
def __init__(self, xid, name, maxrate, maxexemptrate, bytes, exemptbytes):
self.xid = xid
self.name = name
def __init__(self, xid, name, maxrate, maxexemptrate, bytes, exemptbytes):
self.xid = xid
self.name = name
- self._maxrate = default_maxrate
+ self.time = 0
+ self.exemptbytes = 0
self.last_maxrate = default_maxrate
self.last_maxrate = default_maxrate
- self.avgrate = default_avgrate
self.last_avgrate = default_avgrate
self.last_avgrate = default_avgrate
- self.avgexemptrate = default_avgexemptrate
self.last_avgexemptrate = default_avgexemptrate
self.last_avgexemptrate = default_avgexemptrate
- self.maxexemptrate = default_maxexemptrate
self.last_maxexemptrate = default_maxexemptrate
self.reset(maxrate, maxexemptrate, bytes, exemptbytes)
self.last_maxexemptrate = default_maxexemptrate
self.reset(maxrate, maxexemptrate, bytes, exemptbytes)
@@
-123,7
+119,7
@@
class Slice:
self.bytes = bytes
self.exemptbytes = exemptbytes
self.bytes = bytes
self.exemptbytes = exemptbytes
- #If NM except"ns below, and new_max* doesn't get set, use last.
+ #
If NM except"ns below, and new_max* doesn't get set, use last.
new_maxrate = self.last_maxrate
new_maxexemptrate = self.last_maxexemptrate
new_maxrate = self.last_maxrate
new_maxexemptrate = self.last_maxexemptrate
@@
-159,15
+155,19
@@
class Slice:
it will get to send slightly more than the average daily byte
limit.
"""
it will get to send slightly more than the average daily byte
limit.
"""
+
+ # If NM except'ns below, and avg*rate doesn't get set, use last_*.
+ avgrate = self.last_avgrate
+ avgexemptrate = self.last_avgexemptrate
# Query Node Manager for max average rate overrides
try:
# Query Node Manager for max average rate overrides
try:
- (
self.avgrate, self.
avgexemptrate) = nm.query(self.name,
+ (
avgrate,
avgexemptrate) = nm.query(self.name,
[('nm_net_avg_rate', self.last_avgrate),
('nm_net_avg_exempt_rate', self.last_avgexemptrate)])
#If NM is alive, and there is a cap, update new
[('nm_net_avg_rate', self.last_avgrate),
('nm_net_avg_exempt_rate', self.last_avgexemptrate)])
#If NM is alive, and there is a cap, update new
- self.last_avgexemptrate =
self.
avgexemptrate
- self.last_avgrate =
self.
avgrate
+ self.last_avgexemptrate = avgexemptrate
+ self.last_avgrate = avgrate
except Exception, err:
print "Warning: Exception received while querying NM:", err
except Exception, err:
print "Warning: Exception received while querying NM:", err
@@
-179,10
+179,10
@@
class Slice:
'date': time.asctime(time.gmtime()) + " GMT",
'period': format_period(period)}
'date': time.asctime(time.gmtime()) + " GMT",
'period': format_period(period)}
- bytelimit =
self.
avgrate * period / bits_per_byte
+ bytelimit = avgrate * period / bits_per_byte
if bytes >= (self.bytes + bytelimit) and \
if bytes >= (self.bytes + bytelimit) and \
- maxrate >
self.
avgrate:
- new_maxrate =
self.
avgrate
+ maxrate > avgrate:
+ new_maxrate = avgrate
else:
new_maxrate = maxrate
else:
new_maxrate = maxrate
@@
-191,7
+191,7
@@
class Slice:
params['bytes'] = format_bytes(bytes - self.bytes)
params['maxrate'] = bwlimit.format_tc_rate(maxrate)
params['limit'] = format_bytes(bytelimit)
params['bytes'] = format_bytes(bytes - self.bytes)
params['maxrate'] = bwlimit.format_tc_rate(maxrate)
params['limit'] = format_bytes(bytelimit)
- params['avgrate'] = bwlimit.format_tc_rate(
self.
avgrate)
+ params['avgrate'] = bwlimit.format_tc_rate(avgrate)
if verbose:
print "%(slice)s %(class)s " \
if verbose:
print "%(slice)s %(class)s " \
@@
-203,10
+203,10
@@
class Slice:
message += template % params
print "%(slice)s %(class)s capped at %(avgrate)s (%(bytes)s/%(limit)s)" % params
message += template % params
print "%(slice)s %(class)s capped at %(avgrate)s (%(bytes)s/%(limit)s)" % params
- exemptbytelimit =
self.
avgexemptrate * period / bits_per_byte
+ exemptbytelimit = avgexemptrate * period / bits_per_byte
if exemptbytes >= (self.exemptbytes + exemptbytelimit) and \
if exemptbytes >= (self.exemptbytes + exemptbytelimit) and \
- maxexemptrate >
self.
avgexemptrate:
- new_maxexemptrate =
self.
avgexemptrate
+ maxexemptrate > avgexemptrate:
+ new_maxexemptrate = avgexemptrate
else:
new_maxexemptrate = maxexemptrate
else:
new_maxexemptrate = maxexemptrate
@@
-215,7
+215,7
@@
class Slice:
params['bytes'] = format_bytes(exemptbytes - self.exemptbytes)
params['maxrate'] = bwlimit.format_tc_rate(maxexemptrate)
params['limit'] = format_bytes(exemptbytelimit)
params['bytes'] = format_bytes(exemptbytes - self.exemptbytes)
params['maxrate'] = bwlimit.format_tc_rate(maxexemptrate)
params['limit'] = format_bytes(exemptbytelimit)
- params['avgrate'] = bwlimit.format_tc_rate(
self.
avgexemptrate)
+ params['avgrate'] = bwlimit.format_tc_rate(avgexemptrate)
if verbose:
print "%(slice)s %(class)s " \
if verbose:
print "%(slice)s %(class)s " \
@@
-298,11
+298,11
@@
def main():
(version, slices) = pickle.load(f)
f.close()
# Check version of data file
(version, slices) = pickle.load(f)
f.close()
# Check version of data file
- if version != "$Id: bwmon.py,v 1.
6 2006/07/10 15:19:35
faiyaza Exp $":
+ if version != "$Id: bwmon.py,v 1.
7 2006/07/10 19:19:07
faiyaza Exp $":
print "Not using old version '%s' data file %s" % (version, datafile)
raise Exception
except Exception:
print "Not using old version '%s' data file %s" % (version, datafile)
raise Exception
except Exception:
- version = "$Id: bwmon.py,v 1.
6 2006/07/10 15:19:35
faiyaza Exp $"
+ version = "$Id: bwmon.py,v 1.
7 2006/07/10 19:19:07
faiyaza Exp $"
slices = {}
# Get special slice IDs
slices = {}
# Get special slice IDs