self.Maxi2Rate = default_Maxi2Rate
self.Mini2Rate = bwlimit.bwmin / 1000
self.MaxKByte = default_MaxKByte
- self.ThreshKByte = (.8 * self.MaxKByte)
+ self.ThreshKByte = int(.8 * self.MaxKByte)
self.Maxi2KByte = default_Maxi2KByte
- self.Threshi2KByte = (.8 * self.Maxi2KByte)
+ self.Threshi2KByte = int(.8 * self.Maxi2KByte)
self.Share = default_Share
self.Sharei2 = default_Share
self.emailed = False
'date': time.asctime(time.gmtime()) + " GMT",
'period': format_period(period)}
- if new_maxrate != self.MaxRate:
+ if new_maxrate != (self.MaxRate * 1000):
# Format template parameters for low bandwidth message
params['class'] = "low bandwidth"
params['bytes'] = format_bytes(usedbytes - self.bytes)
message += template % params
logger.log("bwmon: ** %(slice)s %(class)s capped at %(new_maxrate)s/s " % params)
- if new_maxexemptrate != self.Maxi2Rate:
+ if new_maxexemptrate != (self.Maxi2Rate * 1000):
# Format template parameters for high bandwidth message
params['class'] = "high bandwidth"
params['bytes'] = format_bytes(usedi2bytes - self.i2bytes)
params['limit'] = format_bytes(self.Maxi2KByte * 1024)
- params['new_maxexemptrate'] = bwlimit.format_tc_rate(new_maxi2rate)
+ params['new_maxrate'] = bwlimit.format_tc_rate(new_maxexemptrate)
message += template % params
logger.log("bwmon: ** %(slice)s %(class)s capped at %(new_maxrate)s/s " % params)
# Notify slice
- if message and self.emailed == False:
+ if self.emailed == False:
subject = "pl_mom capped bandwidth of slice %(slice)s on %(hostname)s" % params
if debug:
logger.log("bwmon: "+ subject)
logger.log("bwmon: "+ message + (footer % params))
else:
self.emailed = True
+ logger.log("bwmon: Emailing %s" % self.name)
slicemail(self.name, subject, message + (footer % params))
if new_maxrate < (self.MinRate * 1000):
new_maxrate = self.MinRate * 1000
# State information. I'm capped.
- self.capped = True
+ self.capped += True
else:
# Sanity Check
new_maxrate = self.MaxRate * 1000
- self.capped = False
+ self.capped += False
if usedi2bytes >= (self.i2bytes + (self.Threshi2KByte * 1024)):
maxi2byte = self.Maxi2KByte * 1024
if new_maxi2rate < (self.Mini2Rate * 1000):
new_maxi2rate = self.Mini2Rate * 1000
# State information. I'm capped.
- self.capped = True
+ self.capped += True
else:
# Sanity
new_maxi2rate = self.Maxi2Rate * 1000
- self.capped = False
+ self.capped += False
# Apply parameters
bwlimit.set(xid = self.xid,
share = self.Share)
# Notify slice
- if self.capped == True and self.emailed == False:
- self.notify(newmaxrate, newmaxexemptrate, usedbytes, usedi2bytes)
+ if self.capped == True:
+ self.notify(new_maxrate, new_maxi2rate, usedbytes, usedi2bytes)
def gethtbs(root_xid, default_xid):