Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- UNHANDLED EXCEPTION (2014-06-16 22:48:03.189261)
- <type 'exceptions.TypeError'>
- unsupported operand type(s) for %: 'float' and 'list'
- START OF TRACEBACK
- ------------------------------------------------------------------------
- File: /opt/noc/lib/scheduler/intervaljob.py (Line: 42)
- Function: submit
- 35 :param ts: Explicitly set start time
- 36 :return:
- 37 """
- 38 data = data or {}
- 39 if randomize:
- 40 offset = random.random()
- 41 elif keep_offset:
- 42 ==> offset = time.time() % interval / interval
- 43 else:
- 44 offset = 0
- 45 schedule = {
- 46 "interval": interval,
- 47 "offset": offset,
- 48 "randomize": randomize,
- Variables:
- scheduler =
- <noc.fm.correlator.scheduler.CorrelatorScheduler object at 0x7f57233c1b10>
- failed_interval = None
- data = {'interface': u'GigabitEthernet0/0/13'}
- interval = [(None, 60)]
- ts = None
- keep_offset = True
- key = ObjectId('539f1fc23fe772e40c6558fb')
- randomize = False
- cls = <class 'noc.fm.correlator.jobs.check_link.CheckLinkJob'>
- ------------------------------------------------------------------------
- File: /opt/noc/fm/correlator/joblauncher.py (Line: 49)
- Function: submit
- 42 "failed_interval": None,
- 43 "keep_offset": True
- 44 }
- 45 cfg.update(self.job.get_job_config(alarm, cfg))
- 46 self.job.submit(
- 47 self.scheduler,
- 48 key=alarm.id,
- 49 ==> **cfg
- 50 )
- Variables:
- cfg =
- {'data': {'interface': u'GigabitEthernet0/0/13'},
- 'failed_interval': None,
- 'interval': [(None, 60)],
- 'keep_offset': True}
- alarm = <ActiveAlarm: 539f1fc23fe772e40c6558fb>
- self = <noc.fm.correlator.joblauncher.JobLauncher object at 0x7f572273fa10>
- ------------------------------------------------------------------------
- File: /opt/noc/fm/correlator/daemon.py (Line: 312)
- Function: raise_alarm
- 305 # Silently drop alarm
- 306 logging.debug("Alarm severity is 0, dropping")
- 307 a.delete()
- 308 return
- 309 # Launch jobs when necessary
- 310 if a.alarm_class.id in self.alarm_jobs:
- 311 for job in self.alarm_jobs[r.alarm_class.id]:
- 312 ==> job.submit(a)
- 313 # Notify about new alarm
- 314 if not a.root:
- 315 a.managed_object.event(a.managed_object.EV_ALARM_RISEN, {
- 316 "alarm": a,
- 317 "subject": a.get_translated_subject("en"),
- 318 "body": a.get_translated_body("en"),
- Variables:
- aa = <ActiveAlarm: 539f1fc23fe772e40c6558fb>
- a = <ActiveAlarm: 539f1fc23fe772e40c6558fb>
- e = <ActiveEvent: 539f1fc13fe772e40947bb10>
- vars =
- {u'description': u'Gubkina 1 COD School 10.205.28.164',
- u'interface': u'GigabitEthernet0/0/13',
- u'link': '53957e733fe77206296b20df'}
- self = <noc.fm.correlator.daemon.Correlator object at 0x7f5724087d10>
- job = <noc.fm.correlator.joblauncher.JobLauncher object at 0x7f572273fa10>
- r = <noc.fm.correlator.rule.Rule object at 0x7f5722936a90>
- discriminator = '18cde8f34c7bc1f4fd9f1190f3e6c4475b2c70d5'
- ------------------------------------------------------------------------
- File: /opt/noc/fm/correlator/daemon.py (Line: 405)
- Function: dispose_event
- 398 # Process action
- 399 if r.action == "drop":
- 400 e.delete()
- 401 return
- 402 elif r.action == "ignore":
- 403 return
- 404 elif r.action == "raise" and r.combo_condition == "none":
- 405 ==> self.raise_alarm(r, e)
- 406 elif r.action == "clear" and r.combo_condition == "none":
- 407 self.clear_alarm(r, e)
- 408 if r.action in ("raise", "clear"):
- 409 # Write discriminator if can trigger delayed event
- 410 if r.unique and r.event_class.id in self.back_rules:
- 411 discriminator, vars = r.get_vars(e)
- Variables:
- e = <ActiveEvent: 539f1fc13fe772e40947bb10>
- self = <noc.fm.correlator.daemon.Correlator object at 0x7f5724087d10>
- r = <noc.fm.correlator.rule.Rule object at 0x7f5722936a90>
- cond = True
- env =
- {'NOC_ACTIVATORS': <PrefixTable: NOC::Activators>,
- 'event': <ActiveEvent: 539f1fc13fe772e40947bb10>,
- 're': <module 're' from '/opt/noc/lib/python2.7/re.pyc'>}
- drc = [<noc.fm.correlator.rule.Rule object at 0x7f5722936a90>]
- ------------------------------------------------------------------------
- File: /opt/noc/fm/correlator/jobs/dispose.py (Line: 19)
- Function: handler
- 12
- 13
- 14 class AlarmDispositionJob(Job):
- 15 name = "dispose"
- 16 model = ActiveEvent
- 17
- 18 def handler(self):
- 19 ==> self.scheduler.correlator.dispose_event(self.object)
- 20 self.scheduler.correlator.update_stats(success=True)
- 21 return True
- 22
- 23 def on_exception(self):
- 24 self.scheduler.correlator.mark_as_failed(self.object)
- 25 self.scheduler.correlator.update_stats(success=False)
- Variables:
- self =
- <noc.fm.correlator.jobs.dispose.AlarmDispositionJob object at 0x7f57227731d0>
- ------------------------------------------------------------------------
- File: /opt/noc/lib/scheduler/scheduler.py (Line: 283)
- Function: _job_wrapper
- 276 else:
- 277 return self._job_wrapper(job, **kwargs)
- 278
- 279 def _job_wrapper(self, job, **kwargs):
- 280 tb = None
- 281 t0 = time.time()
- 282 try:
- 283 ==> r = job.handler(**kwargs)
- 284 except Exception:
- 285 # error_report()
- 286 tb = get_traceback()
- 287 job.error(tb)
- 288 job.on_exception()
- 289 s = job.S_EXCEPTION
- Variables:
- job =
- <noc.fm.correlator.jobs.dispose.AlarmDispositionJob object at 0x7f57227731d0>
- tb =
- u'UNHANDLED EXCEPTION (2014-06-16 22:48:03.178539)\nWorking directory: /opt/noc\n<type \'exceptions.TypeError\'>\nunsupported operand type(s) for %: \'float\' and \'list\'\nSTART OF TRACEBACK\n------------------------------------------------------------------------\nFile: /opt/noc/lib/scheduler/intervaljob.py (Line: 42)\nFunction: submit\n 35 :param ts: Explicitly set start time\n 36 :return:\n 37 """\n 38 data = data or {}\n 39 if randomize:\n 40 offset = random.random()\n 41 elif keep_offset:\n 42 ==> offset = time.time() % interval / interval\n 43 else:\n 44 offset = 0\n 45 schedule = {\n 46 "interval": interval,\n 47 "offset": offset,\n 48 "randomize": randomize,\nVariables:\n scheduler = \n<noc.fm.correlator.scheduler.CorrelatorScheduler object at 0x7f57233c1b10>\n failed_interval = None\n data = {\'interface\': u\'GigabitEthernet0/0/13\'}\n interval = [(None, 60)]\n ts = None\n keep_offset = True\n key = ObjectId(\'539f1fc23fe772e40c6558fb\')\n randomize = False\n cls = <class \'noc.fm.correlator.jobs.check_link.CheckLinkJob\'>\n------------------------------------------------------------------------\nFile: /opt/noc/fm/correlator/joblauncher.py (Line: 49)\nFunction: submit\n 42 "failed_interval": None,\n 43 "keep_offset": True\n 44 }\n 45 cfg.update(self.job.get_job_config(alarm, cfg))\n 46 self.job.submit(\n 47 self.scheduler,\n 48 key=alarm.id,\n 49 ==> **cfg\n 50 )\nVariables:\n cfg = \n{\'data\': {\'interface\': u\'GigabitEthernet0/0/13\'},\n \'failed_interval\': None,\n \'interval\': [(None, 60)],\n \'keep_offset\': True}\n alarm = <ActiveAlarm: 539f1fc23fe772e40c6558fb>\n self = <noc.fm.correlator.joblauncher.JobLauncher object at 0x7f572273fa10>\n------------------------------------------------------------------------\nFile: /opt/noc/fm/correlator/daemon.py (Line: 312)\nFunction: raise_alarm\n 305 # Silently drop alarm\n 306 logging.debug("Alarm severity is 0, dropping")\n 307 a.delete()\n 308 return\n 309 # Launch jobs when necessary\n 310 if a.alarm_class.id in self.alarm_jobs:\n 311 for job in self.alarm_jobs[r.alarm_class.id]:\n 312 ==> job.submit(a)\n 313 # Notify about new alarm\n 314 if not a.root:\n 315 a.managed_object.event(a.managed_object.EV_ALARM_RISEN, {\n 316 "alarm": a,\n 317 "subject": a.get_translated_subject("en"),\n 318 "body": a.get_translated_body("en"),\nVariables:\n aa = <ActiveAlarm: 539f1fc23fe772e40c6558fb>\n a = <ActiveAlarm: 539f1fc23fe772e40c6558fb>\n e = <ActiveEvent: 539f1fc13fe772e40947bb10>\n vars = \n{u\'description\': u\'Gubkina 1 COD School 10.205.28.164\',\n u\'interface\': u\'GigabitEthernet0/0/13\',\n u\'link\': \'53957e733fe77206296b20df\'}\n self = <noc.fm.correlator.daemon.Correlator object at 0x7f5724087d10>\n job = <noc.fm.correlator.joblauncher.JobLauncher object at 0x7f572273fa10>\n r = <noc.fm.correlator.rule.Rule object at 0x7f5722936a90>\n discriminator = \'18cde8f34c7bc1f4fd9f1190f3e6c4475b2c70d5\'\n------------------------------------------------------------------------\nFile: /opt/noc/fm/correlator/daemon.py (Line: 405)\nFunction: dispose_event\n 398 # Process action\n 399 if r.action == "drop":\n 400 e.delete()\n 401 return\n 402 elif r.action == "ignore":\n 403 return\n 404 elif r.action == "raise" and r.combo_condition == "none":\n 405 ==> self.raise_alarm(r, e)\n 406 elif r.action == "clear" and r.combo_condition == "none":\n 407 self.clear_alarm(r, e)\n 408 if r.action in ("raise", "clear"):\n 409 # Write discriminator if can trigger delayed event\n 410 if r.unique and r.event_class.id in self.back_rules:\n 411 discriminator, vars = r.get_vars(e)\nVariables:\n e = <ActiveEvent: 539f1fc13fe772e40947bb10>\n self = <noc.fm.correlator.daemon.Correlator object at 0x7f5724087d10>\n r = <noc.fm.correlator.rule.Rule object at 0x7f5722936a90>\n cond = True\n env = \n{\'NOC_ACTIVATORS\': <PrefixTable: NOC::Activators>,\n \'event\': <ActiveEvent: 539f1fc13fe772e40947bb10>,\n \'re\': <module \'re\' from \'/opt/noc/lib/python2.7/re.pyc\'>}\n drc = [<noc.fm.correlator.rule.Rule object at 0x7f5722936a90>]\n------------------------------------------------------------------------\nFile: /opt/noc/fm/correlator/jobs/dispose.py (Line: 19)\nFunction: handler\n 12 \n 13 \n 14 class AlarmDispositionJob(Job):\n 15 name = "dispose"\n 16 model = ActiveEvent\n 17 \n 18 def handler(self):\n 19 ==> self.scheduler.correlator.dispose_event(self.object)\n 20 self.scheduler.correlator.update_stats(success=True)\n 21 return True\n 22 \n 23 def on_exception(self):\n 24 self.scheduler.correlator.mark_as_failed(self.object)\n 25 self.scheduler.correlator.update_stats(success=False)\nVariables:\n self = \n<noc.fm.correlator.jobs.dispose.AlarmDispositionJob object at 0x7f57227731d0>\n------------------------------------------------------------------------\nFile: /opt/noc/lib/scheduler/scheduler.py (Line: 283)\nFunction: _job_wrapper\n 276 else:\n 277 return self._job_wrapper(job, **kwargs)\n 278 \n 279 def _job_wrapper(self, job, **kwargs):\n 280 tb = None\n 281 t0 = time.time()\n 282 try:\n 283 ==> r = job.handler(**kwargs)\n 284 except Exception:\n 285 # error_report()\n 286 tb = get_traceback()\n 287 job.error(tb)\n 288 job.on_exception()\n 289 s = job.S_EXCEPTION\nVariables:\n job = \n<noc.fm.correlator.jobs.dispose.AlarmDispositionJob object at 0x7f57227731d0>\n tb = None\n self = \n<noc.fm.correlator.scheduler.CorrelatorScheduler object at 0x7f57233c1b10>\n t0 = 1402937282.349127\n kwargs = {}\n------------------------------------------------------------------------\nEND OF TRACEBACK'
- self =
- <noc.fm.correlator.scheduler.CorrelatorScheduler object at 0x7f57233c1b10>
- t0 = 1402937282.349127
- kwargs = {}
- ------------------------------------------------------------------------
- END OF TRACEBACK
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement