Take per section maximum_backup_age in account

This commit is contained in:
htouvet 2018-01-30 12:29:16 +01:00
parent 076c07ff24
commit 1190eb4d9d
2 changed files with 51 additions and 51 deletions

View File

@ -716,7 +716,7 @@ class backup_generic:
raise raise
def checknagios(self,maxage_hours=30): def checknagios(self):
""" """
Returns a tuple (nagiosstatus,message) for the current backup_name Returns a tuple (nagiosstatus,message) for the current backup_name
Read status from dbstat database Read status from dbstat database
@ -731,7 +731,7 @@ class backup_generic:
self.logger.debug('[%s] checknagios : no result from query',self.backup_name) self.logger.debug('[%s] checknagios : no result from query',self.backup_name)
return (nagiosStateCritical,'CRITICAL : No backup found for %s in database' % self.backup_name) return (nagiosStateCritical,'CRITICAL : No backup found for %s in database' % self.backup_name)
else: else:
mindate = datetime2isodate((datetime.datetime.now() - datetime.timedelta(hours=maxage_hours))) mindate = datetime2isodate((datetime.datetime.now() - datetime.timedelta(hours=self.maximum_backup_age)))
self.logger.debug('[%s] checknagios : looking for most recent OK not older than %s',self.backup_name,mindate) self.logger.debug('[%s] checknagios : looking for most recent OK not older than %s',self.backup_name,mindate)
for b in q: for b in q:
if b['backup_end'] >= mindate and b['status'] == 'OK': if b['backup_end'] >= mindate and b['status'] == 'OK':

View File

@ -115,7 +115,7 @@ class tis_backup:
# TODO limit backup to one backup on the command line # TODO limit backup to one backup on the command line
def checknagios(self,sections=[],maxage_hours=None): def checknagios(self,sections=[]):
try: try:
if not sections: if not sections:
sections = [backup_item.backup_name for backup_item in self.backup_list] sections = [backup_item.backup_name for backup_item in self.backup_list]
@ -133,7 +133,7 @@ class tis_backup:
assert(isinstance(backup_item,backup_generic)) assert(isinstance(backup_item,backup_generic))
if not maxage_hours: if not maxage_hours:
maxage_hours = backup_item.maximum_backup_age maxage_hours = backup_item.maximum_backup_age
(nagiosstatus,log) = backup_item.checknagios(maxage_hours=maxage_hours) (nagiosstatus,log) = backup_item.checknagios()
if nagiosstatus == nagiosStateCritical: if nagiosstatus == nagiosStateCritical:
critical.append((backup_item.backup_name,log)) critical.append((backup_item.backup_name,log))
elif nagiosstatus == nagiosStateWarning : elif nagiosstatus == nagiosStateWarning :