Advertisement
Guest User

Untitled

a guest
Aug 15th, 2013
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.62 KB | None | 0 0
  1. hg update -c feature/fm-new-ui
  2. hg update -c feature/ranged-chassis-id
  3.  
  4.  
  5. 2013-08-15 16:48:23,213 [inv.discovery] Running job lldp_discovery(jnr02-yla-laz)
  6. 2013-08-15 16:48:25,532 UNHANDLED EXCEPTION (2013-08-15 16:48:25.509524)
  7. Working directory: /opt/noc
  8. <type 'exceptions.AttributeError'>
  9. 'QuerySet' object has no attribute 'find_object'
  10. START OF TRACEBACK
  11. ------------------------------------------------------------------------
  12. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 263)
  13. Function: get_neighbor_by_mac
  14. 256 :param mac:
  15. 257 :return:
  16. 258 """
  17. 259 # Use cached values
  18. 260 o = self.neighbor_by_mac_cache.get(mac)
  19. 261 if not o:
  20. 262 # Find in discovery cache
  21. 263 ==> o = DiscoveryID.objects.find_object(mac=mac)
  22. 264 self.neighbor_by_mac_cache[mac] = o
  23. 265 return o
  24. 266
  25. 267 def is_own_mac(self, mac):
  26. 268 """
  27. 269 Check the MAC belongs to object
  28. Variables:
  29. mac = '78:19:F7:02:F7:C0'
  30. self =
  31. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>
  32. o = None
  33. ------------------------------------------------------------------------
  34. File: /opt/noc/inv/discovery/jobs/lldp_discovery.py (Line: 67)
  35. Function: get_neighbor
  36. 60 # Find by id
  37. 61 f = {
  38. 62 4: self.get_neighbor_by_mac, # macAddress(4)
  39. 63 5: self.get_neighbor_by_ip, # networkAddress(5)
  40. 64 7: self.get_neighbor_by_local # local(7)
  41. 65 }.get(chassis_subtype)
  42. 66 if f:
  43. 67 ==> n = f(chassis_id)
  44. 68 else:
  45. 69 n = None
  46. 70 self.n_cache[(chassis_id, chassis_subtype)] = n
  47. 71 return n
  48. 72
  49. 73 def get_neighbor_by_ip(self, ip):
  50. Variables:
  51. self =
  52. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>
  53. n = None
  54. chassis_subtype = 4
  55. chassis_id = '78:19:F7:02:F7:C0'
  56. f =
  57. <bound method LLDPLinkDiscoveryJob.get_neighbor_by_mac of <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>>
  58. ------------------------------------------------------------------------
  59. File: /opt/noc/inv/discovery/jobs/lldp_discovery.py (Line: 38)
  60. Function: process_result
  61. 31 for n in result:
  62. 32 if len(n["neighbors"]) != 1:
  63. 33 ## Not direct link
  64. 34 continue
  65. 35 # Resolve remote object
  66. 36 ni = n["neighbors"][0]
  67. 37 remote_object = self.get_neighbor(
  68. 38 ==> ni["remote_chassis_id"], ni["remote_chassis_id_subtype"])
  69. 39 self.debug("get_neighbor(%s, %s) -> %s" % (ni["remote_chassis_id"], ni["remote_chassis_id_subtype"], remote_object))
  70. 40 if not remote_object:
  71. 41 # Object not found
  72. 42 continue
  73. 43 # Resolve remote interface
  74. 44 remote_port = self.get_remote_port(remote_object,
  75. Variables:
  76. ni =
  77. {'remote_capabilities': 20,
  78. 'remote_chassis_id': '78:19:F7:02:F7:C0',
  79. 'remote_chassis_id_subtype': 4,
  80. 'remote_port': '530',
  81. 'remote_port_subtype': 7,
  82. 'remote_system_name': 'jnr01-yla-pod'}
  83. self =
  84. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>
  85. object = <ManagedObject: jnr01-yla-gsb>
  86. result =
  87. [{'local_interface': 'xe-5/2/0',
  88. 'local_interface_id': 518,
  89. 'neighbors': [{'remote_capabilities': 20,
  90. 'remote_chassis_id': '78:19:F7:02:F7:C0',
  91. 'remote_chassis_id_subtype': 4,
  92. 'remote_port': '530',
  93. 'remote_port_subtype': 7,
  94. 'remote_system_name': 'jnr01-yla-pod'}]},
  95. {'local_interface': 'xe-5/2/1',
  96. 'local_interface_id': 519,
  97. 'neighbors': [{'remote_capabilities': 20,
  98. 'remote_chassis_id': '78:19:F7:07:27:C0',
  99. 'remote_chassis_id_subtype': 4,
  100. 'remote_port': '531',
  101. 'remote_port_subtype': 7,
  102. 'remote_system_name': 'jnr01-yla-pet'}]}]
  103. n =
  104. {'local_interface': 'xe-5/2/0',
  105. 'local_interface_id': 518,
  106. 'neighbors': [{'remote_capabilities': 20,
  107. 'remote_chassis_id': '78:19:F7:02:F7:C0',
  108. 'remote_chassis_id_subtype': 4,
  109. 'remote_port': '530',
  110. 'remote_port_subtype': 7,
  111. 'remote_system_name': 'jnr01-yla-pod'}]}
  112. ------------------------------------------------------------------------
  113. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 218)
  114. Function: handler
  115. 211 self.own_macs = None # [(first_mac, last_mac), ...]
  116. 212 # Fetch existing links
  117. 213 self.submited = set() # (local_iface, remote_object, remote_iface)
  118. 214 self.load_existing_links(object)
  119. 215 # Process results
  120. 216 self.candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]
  121. 217 # remote iface may be unknown
  122. 218 ==> self.process_result(object, result)
  123. 219 # Fetch pending link checks
  124. 220 self.p_candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]
  125. 221 # local iface may be unknown
  126. 222 self.load_pending_checks(object)
  127. 223 # Resolve self links
  128. 224 self.resolve_self_links(object)
  129. Variables:
  130. self =
  131. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>
  132. object = <ManagedObject: jnr01-yla-gsb>
  133. result =
  134. [{'local_interface': 'xe-5/2/0',
  135. 'local_interface_id': 518,
  136. 'neighbors': [{'remote_capabilities': 20,
  137. 'remote_chassis_id': '78:19:F7:02:F7:C0',
  138. 'remote_chassis_id_subtype': 4,
  139. 'remote_port': '530',
  140. 'remote_port_subtype': 7,
  141. 'remote_system_name': 'jnr01-yla-pod'}]},
  142. {'local_interface': 'xe-5/2/1',
  143. 'local_interface_id': 519,
  144. 'neighbors': [{'remote_capabilities': 20,
  145. 'remote_chassis_id': '78:19:F7:07:27:C0',
  146. 'remote_chassis_id_subtype': 4,
  147. 'remote_port': '531',
  148. 'remote_port_subtype': 7,
  149. 'remote_system_name': 'jnr01-yla-pet'}]}]
  150. ------------------------------------------------------------------------
  151. File: /opt/noc/lib/scheduler/scheduler.py (Line: 253)
  152. Function: _job_wrapper
  153. 246 t.start()
  154. 247 else:
  155. 248 return self._job_wrapper(job, **kwargs)
  156. 249
  157. 250 def _job_wrapper(self, job, **kwargs):
  158. 251 tb = None
  159. 252 try:
  160. 253 ==> r = job.handler(**kwargs)
  161. 254 except Exception:
  162. 255 error_report()
  163. 256 job.on_exception()
  164. 257 s = job.S_EXCEPTION
  165. 258 tb = get_traceback()
  166. 259 else:
  167. Variables:
  168. job =
  169. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x4b2fc10>
  170. tb = None
  171. self = <noc.inv.discovery.scheduler.DiscoveryScheduler object at 0x25031d0>
  172. kwargs =
  173. {'object': <ManagedObject: jnr01-yla-gsb>,
  174. 'result': [{'local_interface': 'xe-5/2/0',
  175. 'local_interface_id': 518,
  176. 'neighbors': [{'remote_capabilities': 20,
  177. 'remote_chassis_id': '78:19:F7:02:F7:C0',
  178. 'remote_chassis_id_subtype': 4,
  179. 'remote_port': '530',
  180. 'remote_port_subtype': 7,
  181. 'remote_system_name': 'jnr01-yla-pod'}]},
  182. {'local_interface': 'xe-5/2/1',
  183. 'local_interface_id': 519,
  184. 'neighbors': [{'remote_capabilities': 20,
  185. 'remote_chassis_id': '78:19:F7:07:27:C0',
  186. 'remote_chassis_id_subtype': 4,
  187. 'remote_port': '531',
  188. 'remote_port_subtype': 7,
  189. 'remote_system_name': 'jnr01-yla-pet'}]}]}
  190. ------------------------------------------------------------------------
  191. END OF TRACEBACK
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement