Guest User

Untitled

a guest
Aug 30th, 2013
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.24 KB | None | 0 0
  1. VUNHANDLED EXCEPTION (2013-08-30 14:05:07.593654)\
  2. Working directory: /opt/noc\
  3. <type 'exceptions.AttributeError'>\
  4. 'QuerySet' object has no attribute 'chassis_mac'\
  5. START OF TRACEBACK\
  6. ------------------------------------------------------------------------\
  7. File: /opt/noc/inv/models/discoveryid.py (Line: 100)\
  8. Function: macs_for_object\
  9. 93 """\
  10. 94 Get MAC addresses for object\
  11. 95 :param cls:\
  12. 96 :param object:\
  13. 97 :return: list of (fist_mac, last_mac)\
  14. 98 """\
  15. 99 o = cls.objects.filter(object=object.id)\
  16. 100 ==> if not o or not o.chassis_mac:\
  17. 101 return None\
  18. 102 return [(r.first_mac, r.last_mac) for r in o.chassis_mac]\
  19. Variables:\
  20. object = <ManagedObject: cat->\
  21. o = [<DiscoveryID: cat->]\
  22. cls = <class 'noc.inv.models.discoveryid.DiscoveryID'>\
  23. ------------------------------------------------------------------------\
  24. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 274)\
  25. Function: is_own_mac\
  26. 267 def is_own_mac(self, mac):\
  27. 268 """\
  28. 269 Check the MAC belongs to object\
  29. 270 :param mac:\
  30. 271 :return:\
  31. 272 """\
  32. 273 if self.own_macs is None:\
  33. 274 ==> r = DiscoveryID.macs_for_object(self.object)\
  34. 275 if not r:\
  35. 276 self.own_macs = []\
  36. 277 return False\
  37. 278 if self.own_macs:\
  38. 279 mr = self.own_mac_cache.get(mac)\
  39. 280 if mr is None:\
  40. Variables:\
  41. mac = 'F0:25:72:60:D2:00'\
  42. self = \
  43. <noc.inv.discovery.jobs.rep_discovery.REPLinkDiscoveryJob object at 0x80c2ec050>\
  44. ------------------------------------------------------------------------\
  45. File: /opt/noc/inv/discovery/jobs/rep_discovery.py (Line: 32)\
  46. Function: process_result\
  47. 25 "initial_submit_concurrency")\
  48. 26 \
  49. 27 def process_result(self, object, result):\
  50. 28 for segment in result:\
  51. 29 topology = segment["topology"]\
  52. 30 # Find own ports\
  53. 31 o = [i for i, p in enumerate(topology)\
  54. 32 ==> if self.is_own_mac(p["mac"])]\
  55. 33 if not o:\
  56. 34 continue # Not found\
  57. 35 elif len(o) == 2:\
  58. 36 f, s = o\
  59. 37 L = len(topology)\
  60. 38 if not topology[f]["edge_no_neighbor"]:\
  61. Variables:\
  62. i = 0\
  63. self = \
  64. <noc.inv.discovery.jobs.rep_discovery.REPLinkDiscoveryJob object at 0x80c2ec050>\
  65. object = <ManagedObject: cat->\
  66. p = \
  67. {'edge': 'PRI',\
  68. 'edge_no_neighbor': True,\
  69. 'mac': 'F0:25:72:60:D2:00',\
  70. 'name': 'cat-',\
  71. 'neighbor_number': 1,\
  72. 'port': 'Gi0/16',\
  73. 'rev_neighbor_number': 4,\
  74. 'role': 'OPEN'}\
  75. result = \
  76. [{'segment': 1,\
  77. 'topology': [{'edge': 'PRI',\
  78. 'edge_no_neighbor': True,\
  79. 'mac': 'F0:25:72:60:D2:00',\
  80. 'name': 'cat-',\
  81. 'neighbor_number': 1,\
  82. 'port': 'Gi0/16',\
  83. 'rev_neighbor_number': 4,\
  84. 'role': 'OPEN'},\
  85. {'edge_no_neighbor': False,\
  86. 'mac': 'F0:25:72:60:D2:00',\
  87. 'name': 'cat-',\
  88. 'neighbor_number': 2,\
  89. 'port': 'Gi0/15',\
  90. 'rev_neighbor_number': 3,\
  91. 'role': 'ALT'},\
  92. {'edge_no_neighbor': False,\
  93. 'mac': '08:D0:9F:A9:AF:80',\
  94. 'name': 'cat-',\
  95. 'neighbor_number': 3,\
  96. 'port': 'Gi0/2',\
  97. 'rev_neighbor_number': 2,\
  98. 'role': 'OPEN'},\
  99. {'edge': 'SEC',\
  100. 'edge_no_neighbor': True,\
  101. 'mac': '08:D0:9F:A9:AF:80',\
  102. 'name': 'cat-',\
  103. 'neighbor_number': 4,\
  104. 'port': 'Gi0/1',\
  105. 'rev_neighbor_number': 1,\
  106. 'role': 'OPEN'}]}]\
  107. segment = \
  108. {'segment': 1,\
  109. 'topology': [{'edge': 'PRI',\
  110. 'edge_no_neighbor': True,\
  111. 'mac': 'F0:25:72:60:D2:00',\
  112. 'name': 'cat-',\
  113. 'neighbor_number': 1,\
  114. 'port': 'Gi0/16',\
  115. 'rev_neighbor_number': 4,\
  116. 'role': 'OPEN'},\
  117. {'edge_no_neighbor': False,\
  118. 'mac': 'F0:25:72:60:D2:00',\
  119. 'name': 'cat-',\
  120. 'neighbor_number': 2,\
  121. 'port': 'Gi0/15',\
  122. 'rev_neighbor_number': 3,\
  123. 'role': 'ALT'},\
  124. {'edge_no_neighbor': False,\
  125. 'mac': '08:D0:9F:A9:AF:80',\
  126. 'name': 'cat-',\
  127. 'neighbor_number': 3,\
  128. 'port': 'Gi0/2',\
  129. 'rev_neighbor_number': 2,\
  130. 'role': 'OPEN'},\
  131. {'edge': 'SEC',\
  132. 'edge_no_neighbor': True,\
  133. 'mac': '08:D0:9F:A9:AF:80',\
  134. 'name': 'cat-',\
  135. 'neighbor_number': 4,\
  136. 'port': 'Gi0/1',\
  137. 'rev_neighbor_number': 1,\
  138. 'role': 'OPEN'}]}\
  139. topology = \
  140. [{'edge': 'PRI',\
  141. 'edge_no_neighbor': True,\
  142. 'mac': 'F0:25:72:60:D2:00',\
  143. 'name': 'cat-',\
  144. 'neighbor_number': 1,\
  145. 'port': 'Gi0/16',\
  146. 'rev_neighbor_number': 4,\
  147. 'role': 'OPEN'},\
  148. {'edge_no_neighbor': False,\
  149. 'mac': 'F0:25:72:60:D2:00',\
  150. 'name': 'cat-',\
  151. 'neighbor_number': 2,\
  152. 'port': 'Gi0/15',\
  153. 'rev_neighbor_number': 3,\
  154. 'role': 'ALT'},\
  155. {'edge_no_neighbor': False,\
  156. 'mac': '08:D0:9F:A9:AF:80',\
  157. 'name': 'cat-',\
  158. 'neighbor_number': 3,\
  159. 'port': 'Gi0/2',\
  160. 'rev_neighbor_number': 2,\
  161. 'role': 'OPEN'},\
  162. {'edge': 'SEC',\
  163. 'edge_no_neighbor': True,\
  164. 'mac': '08:D0:9F:A9:AF:80',\
  165. 'name': 'cat-',\
  166. 'neighbor_number': 4,\
  167. 'port': 'Gi0/1',\
  168. 'rev_neighbor_number': 1,\
  169. 'role': 'OPEN'}]\
  170. ------------------------------------------------------------------------\
  171. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 218)\
  172. Function: handler\
  173. 211 self.own_macs = None # [(first_mac, last_mac), ...]\
  174. 212 # Fetch existing links\
  175. 213 self.submited = set() # (local_iface, remote_object, remote_iface)\
  176. 214 self.load_existing_links(object)\
  177. 215 # Process results\
  178. 216 self.candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]\
  179. 217 # remote iface may be unknown\
  180. 218 ==> self.process_result(object, result)\
  181. 219 # Fetch pending link checks\
  182. 220 self.p_candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]\
  183. 221 # local iface may be unknown\
  184. 222 self.load_pending_checks(object)\
  185. 223 # Resolve self links\
  186. 224 self.resolve_self_links(object)\
  187. Variables:\
  188. self = \
  189. <noc.inv.discovery.jobs.rep_discovery.REPLinkDiscoveryJob object at 0x80c2ec050>\
  190. object = <ManagedObject: cat->\
  191. result = \
  192. [{'segment': 1,\
  193. 'topology': [{'edge': 'PRI',\
  194. 'edge_no_neighbor': True,\
  195. 'mac': 'F0:25:72:60:D2:00',\
  196. 'name': 'cat-',\
  197. 'neighbor_number': 1,\
  198. 'port': 'Gi0/16',\
  199. 'rev_neighbor_number': 4,\
  200. 'role': 'OPEN'},\
  201. {'edge_no_neighbor': False,\
  202. 'mac': 'F0:25:72:60:D2:00',\
  203. 'name': 'cat-',\
  204. 'neighbor_number': 2,\
  205. 'port': 'Gi0/15',\
  206. 'rev_neighbor_number': 3,\
  207. 'role': 'ALT'},\
  208. {'edge_no_neighbor': False,\
  209. 'mac': '08:D0:9F:A9:AF:80',\
  210. 'name': 'cat-',\
  211. 'neighbor_number': 3,\
  212. 'port': 'Gi0/2',\
  213. 'rev_neighbor_number': 2,\
  214. 'role': 'OPEN'},\
  215. {'edge': 'SEC',\
  216. 'edge_no_neighbor': True,\
  217. 'mac': '08:D0:9F:A9:AF:80',\
  218. 'name': 'cat-',\
  219. 'neighbor_number': 4,\
  220. 'port': 'Gi0/1',\
  221. 'rev_neighbor_number': 1,\
  222. 'role': 'OPEN'}]}]\
  223. ------------------------------------------------------------------------\
  224. File: /opt/noc/lib/scheduler/scheduler.py (Line: 253)\
  225. Function: _job_wrapper\
  226. 246 t.start()\
  227. 247 else:\
  228. 248 return self._job_wrapper(job, **kwargs)\
  229. 249 \
  230. 250 def _job_wrapper(self, job, **kwargs):\
  231. 251 tb = None\
  232. 252 try:\
  233. 253 ==> r = job.handler(**kwargs)\
  234. 254 except Exception:\
  235. 255 error_report()\
  236. 256 job.on_exception()\
  237. 257 s = job.S_EXCEPTION\
  238. 258 tb = get_traceback()\
  239. 259 else:\
  240. Variables:\
  241. job = \
  242. <noc.inv.discovery.jobs.rep_discovery.REPLinkDiscoveryJob object at 0x80c2ec050>\
  243. tb = None\
  244. self = <noc.inv.discovery.scheduler.DiscoveryScheduler object at 0x80854a950>\
  245. kwargs = \
  246. {'object': <ManagedObject: cat->,\
  247. 'result': [{'segment': 1,\
  248. 'topology': [{'edge': 'PRI',\
  249. 'edge_no_neighbor': True,\
  250. 'mac': 'F0:25:72:60:D2:00',\
  251. 'name': 'cat-',\
  252. 'neighbor_number': 1,\
  253. 'port': 'Gi0/16',\
  254. 'rev_neighbor_number': 4,\
  255. 'role': 'OPEN'},\
  256. {'edge_no_neighbor': False,\
  257. 'mac': 'F0:25:72:60:D2:00',\
  258. 'name': 'cat-',\
  259. 'neighbor_number': 2,\
  260. 'port': 'Gi0/15',\
  261. 'rev_neighbor_number': 3,\
  262. 'role': 'ALT'},\
  263. {'edge_no_neighbor': False,\
  264. 'mac': '08:D0:9F:A9:AF:80',\
  265. 'name': 'cat-',\
  266. 'neighbor_number': 3,\
  267. 'port': 'Gi0/2',\
  268. 'rev_neighbor_number': 2,\
  269. 'role': 'OPEN'},\
  270. {'edge': 'SEC',\
  271. 'edge_no_neighbor': True,\
  272. 'mac': '08:D0:9F:A9:AF:80',\
  273. 'name': 'cat-',\
  274. 'neighbor_number': 4,\
  275. 'port': 'Gi0/1',\
  276. 'rev_neighbor_number': 1,\
  277. 'role': 'OPEN'}]}]}\
  278. ------------------------------------------------------------------------\
  279. END OF TRACEBACK
  280. p7
  281. sS'type'
  282. p8
  283. S'Unhandled Exception'
  284. p9
  285. sS'ts'
  286. p10
  287. I1377857107
Advertisement
Add Comment
Please, Sign In to add comment