Advertisement
Guest User

Untitled

a guest
May 23rd, 2013
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 59.27 KB | None | 0 0
  1. 2013-05-23 14:45:44,549 UNHANDLED EXCEPTION (2013-05-23 14:45:44.474930)
  2. Working directory: /opt/noc
  3. <type 'exceptions.TypeError'>
  4. 'ObjectId' object is not iterable
  5. START OF TRACEBACK
  6. ------------------------------------------------------------------------
  7. File: /opt/noc/lib/nosql.py (Line: 166)
  8. Function: to_mongo
  9. 159 else:
  10. 160 id = value
  11. 161 return id_field.to_mongo(id)
  12. 162
  13. 163 id_field_name = self.document_type._meta["id_field"]
  14. 164 id_field = self.document_type._fields[id_field_name]
  15. 165 if document:
  16. 166 ==> return [convert(v) for v in document]
  17. 167 else:
  18. 168 return document
  19. 169
  20. 170
  21. 171 class ForeignKeyField(BaseField):
  22. 172 """
  23. Variables:
  24. id_field_name = 'id'
  25. convert = <function convert at 0x505ade8>
  26. self = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  27. id_field = <mongoengine.base.ObjectIdField object at 0x2b7d350>
  28. _[1] = []
  29. document = ObjectId('5107e4927e85c97d40e2979d')
  30. ------------------------------------------------------------------------
  31. File: /opt/noc/lib/nosql.py (Line: 125)
  32. Function: prepare_query_value
  33. 118
  34. 119 def lookup_member(self, name):
  35. 120 return self.document_type._fields.get(name)
  36. 121
  37. 122 def prepare_query_value(self, op, value):
  38. 123 if value is None:
  39. 124 return None
  40. 125 ==> return self.to_mongo(value)
  41. 126
  42. 127
  43. 128 class PlainReferenceListField(PlainReferenceField):
  44. 129 def __get__(self, instance, owner):
  45. 130 def convert(value):
  46. 131 if isinstance(value, ObjectId):
  47. Variables:
  48. self = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  49. value = ObjectId('5107e4927e85c97d40e2979d')
  50. op = 'in'
  51. ------------------------------------------------------------------------
  52. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 731)
  53. Function: _transform_query
  54. 724 value = StringField.prepare_query_value(op, value)
  55. 725 else:
  56. 726 value = field
  57. 727 else:
  58. 728 value = field.prepare_query_value(op, value)
  59. 729 elif op in ('in', 'nin', 'all', 'near'):
  60. 730 # 'in', 'nin' and 'all' require a list of values
  61. 731 ==> value = [field.prepare_query_value(op, v) for v in value]
  62. 732
  63. 733 # if op and op not in match_operators:
  64. 734 if op:
  65. 735 if op in geo_operators:
  66. 736 if op == "within_distance":
  67. 737 value = {'$within': {'$center': value}}
  68. Variables:
  69. cleaned_fields = [<noc.lib.nosql.PlainReferenceListField object at 0x4448110>]
  70. match_operators =
  71. ['contains',
  72. 'icontains',
  73. 'startswith',
  74. 'istartswith',
  75. 'endswith',
  76. 'iendswith',
  77. 'exact',
  78. 'iexact']
  79. _doc_cls = <class 'noc.inv.models.link.Link'>
  80. _field_operation = False
  81. value = .. queryset mid-iteration ..
  82. negate = False
  83. query = {'interfaces__in': .. queryset mid-iteration ..}
  84. append_field = True
  85. geo_operators =
  86. ['within_distance',
  87. 'within_spherical_distance',
  88. 'within_box',
  89. 'within_polygon',
  90. 'near',
  91. 'near_sphere']
  92. field = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  93. parts = ['interfaces']
  94. cls = <class 'mongoengine.queryset.QuerySet'>
  95. mongo_query = {}
  96. operators =
  97. ['ne',
  98. 'gt',
  99. 'gte',
  100. 'lt',
  101. 'lte',
  102. 'in',
  103. 'nin',
  104. 'mod',
  105. 'all',
  106. 'size',
  107. 'exists',
  108. 'not']
  109. part = 'in'
  110. key = 'interfaces__in'
  111. i = 1
  112. fields = [<noc.lib.nosql.PlainReferenceListField object at 0x4448110>]
  113. singular_ops =
  114. [None,
  115. 'ne',
  116. 'gt',
  117. 'gte',
  118. 'lt',
  119. 'lte',
  120. 'not',
  121. 'contains',
  122. 'icontains',
  123. 'startswith',
  124. 'istartswith',
  125. 'endswith',
  126. 'iendswith',
  127. 'exact',
  128. 'iexact']
  129. p = 'in'
  130. v = ObjectId('5107e4927e85c97d40e2979d')
  131. indices = []
  132. _[3] = []
  133. op = 'in'
  134. custom_operators = ['match']
  135. ------------------------------------------------------------------------
  136. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 162)
  137. Function: visit_query
  138. 155 if combination.operation == combination.OR:
  139. 156 return {'$or': combination.children}
  140. 157 elif combination.operation == combination.AND:
  141. 158 return self._mongo_query_conjunction(combination.children)
  142. 159 return combination
  143. 160
  144. 161 def visit_query(self, query):
  145. 162 ==> return QuerySet._transform_query(self.document, **query.query)
  146. 163
  147. 164 def _mongo_query_conjunction(self, queries):
  148. 165 """Merges Mongo query dicts - effectively &ing them together.
  149. 166 """
  150. 167 combined_query = {}
  151. 168 for query in queries:
  152. Variables:
  153. query = <mongoengine.queryset.Q object at 0x5387b50>
  154. self = <mongoengine.queryset.QueryCompilerVisitor object at 0x5387bd0>
  155. ------------------------------------------------------------------------
  156. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 270)
  157. Function: accept
  158. 263 query structures.
  159. 264 """
  160. 265
  161. 266 def __init__(self, **query):
  162. 267 self.query = query
  163. 268
  164. 269 def accept(self, visitor):
  165. 270 ==> return visitor.visit_query(self)
  166. 271
  167. 272 @property
  168. 273 def empty(self):
  169. 274 return not bool(self.query)
  170. 275
  171. 276
  172. Variables:
  173. visitor = <mongoengine.queryset.QueryCompilerVisitor object at 0x5387bd0>
  174. self = <mongoengine.queryset.Q object at 0x5387b50>
  175. ------------------------------------------------------------------------
  176. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 205)
  177. Function: to_query
  178. 198
  179. 199 AND = 0
  180. 200 OR = 1
  181. 201
  182. 202 def to_query(self, document):
  183. 203 query = self.accept(SimplificationVisitor())
  184. 204 query = query.accept(QueryTreeTransformerVisitor())
  185. 205 ==> query = query.accept(QueryCompilerVisitor(document))
  186. 206 return query
  187. 207
  188. 208 def accept(self, visitor):
  189. 209 raise NotImplementedError
  190. 210
  191. 211 def _combine(self, other, operation):
  192. Variables:
  193. query = <mongoengine.queryset.Q object at 0x5387b50>
  194. self = <mongoengine.queryset.Q object at 0x5387b50>
  195. document = <class 'noc.inv.models.link.Link'>
  196. ------------------------------------------------------------------------
  197. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 379)
  198. Function: _query
  199. 372 setattr(c, prop, copy.deepcopy(val))
  200. 373
  201. 374 return c
  202. 375
  203. 376 @property
  204. 377 def _query(self):
  205. 378 if self._mongo_query is None:
  206. 379 ==> self._mongo_query = self._query_obj.to_query(self._document)
  207. 380 if self._class_check:
  208. 381 self._mongo_query.update(self._initial_query)
  209. 382 return self._mongo_query
  210. 383
  211. 384 def ensure_index(self, key_or_list, drop_dups=False, background=False,
  212. 385 **kwargs):
  213. Variables:
  214. self = repr() failed
  215. ------------------------------------------------------------------------
  216. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 583)
  217. Function: _cursor
  218. 576 cursor_args['fields'] = self._loaded_fields.as_dict()
  219. 577 return cursor_args
  220. 578
  221. 579 @property
  222. 580 def _cursor(self):
  223. 581 if self._cursor_obj is None:
  224. 582
  225. 583 ==> self._cursor_obj = self._collection.find(self._query,
  226. 584 **self._cursor_args)
  227. 585 # Apply where clauses to cursor
  228. 586 if self._where_clause:
  229. 587 self._cursor_obj.where(self._where_clause)
  230. 588
  231. 589 # apply default ordering
  232. Variables:
  233. self = .. queryset mid-iteration ..
  234. ------------------------------------------------------------------------
  235. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 990)
  236. Function: rewind
  237. 983
  238. 984 def rewind(self):
  239. 985 """Rewind the cursor to its unevaluated state.
  240. 986
  241. 987 .. versionadded:: 0.3
  242. 988 """
  243. 989 self._iter = False
  244. 990 ==> self._cursor.rewind()
  245. 991
  246. 992 def count(self):
  247. 993 """Count the selected elements in the query.
  248. 994 """
  249. 995 if self._limit == 0:
  250. 996 return 0
  251. Variables:
  252. self = .. queryset mid-iteration ..
  253. ------------------------------------------------------------------------
  254. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 1517)
  255. Function: __iter__
  256. 1510
  257. 1511 if ret is not None and 'n' in ret:
  258. 1512 return ret['n']
  259. 1513 except pymongo.errors.OperationFailure, e:
  260. 1514 raise OperationError(u'Update failed [%s]' % unicode(e))
  261. 1515
  262. 1516 def __iter__(self):
  263. 1517 ==> self.rewind()
  264. 1518 return self
  265. 1519
  266. 1520 def _get_scalar(self, doc):
  267. 1521
  268. 1522 def lookup(obj, name):
  269. 1523 chunks = name.split('__')
  270. Variables:
  271. self = .. queryset mid-iteration ..
  272. ------------------------------------------------------------------------
  273. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 112)
  274. Function: load_existing_links
  275. 105 Process job result and submit candidates
  276. 106 :param result:
  277. 107 :return:
  278. 108 """
  279. 109 pass
  280. 110
  281. 111 def load_existing_links(self, object):
  282. 112 ==> for l in Link.object_links(object):
  283. 113 if l.is_ptp:
  284. 114 i1, i2 = l.interfaces
  285. 115 if l.is_loop:
  286. 116 # Loop to self
  287. 117 self.submited.add((i1.name, object, i2.name))
  288. 118 self.submited.add((i2.name, object, i1.name))
  289. Variables:
  290. self =
  291. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x49db550>
  292. object = <ManagedObject: Gagarina_15a_2>
  293. ------------------------------------------------------------------------
  294. File: /opt/noc/inv/discovery/jobs/link_discovery.py (Line: 212)
  295. Function: handler
  296. 205 :param result:
  297. 206 :return:
  298. 207 """
  299. 208 # Caches
  300. 209 self.neighbor_by_mac_cache = {} # mac -> object
  301. 210 # Fetch existing links
  302. 211 self.submited = set() # (local_iface, remote_object, remote_iface)
  303. 212 ==> self.load_existing_links(object)
  304. 213 # Process results
  305. 214 self.candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]
  306. 215 # remote iface may be unknown
  307. 216 self.process_result(object, result)
  308. 217 # Fetch pending link checks
  309. 218 self.p_candidates = defaultdict(list) # remote -> [(local iface, remote_iface)]
  310. Variables:
  311. self =
  312. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x49db550>
  313. object = <ManagedObject: Gagarina_15a_2>
  314. result =
  315. [{'local_interface': 'GigabitEthernet0/0/1',
  316. 'neighbors': [{'remote_capabilities': 4,
  317. 'remote_chassis_id': '80:FB:06:03:7A:D7',
  318. 'remote_chassis_id_subtype': 4,
  319. 'remote_port': 'GigabitEthernet0/0/1',
  320. 'remote_port_subtype': 5,
  321. 'remote_system_name': 'Gagarina_13a_2'}]},
  322. {'local_interface': 'GigabitEthernet0/0/2',
  323. 'neighbors': [{'remote_capabilities': 4,
  324. 'remote_chassis_id': '80:FB:06:03:89:87',
  325. 'remote_chassis_id_subtype': 4,
  326. 'remote_port': 'GigabitEthernet0/0/2',
  327. 'remote_port_subtype': 5,
  328. 'remote_system_name': 'Gagarina_15a_7'}]}]
  329. ------------------------------------------------------------------------
  330. File: /opt/noc/lib/scheduler/scheduler.py (Line: 253)
  331. Function: _job_wrapper
  332. 246 t.start()
  333. 247 else:
  334. 248 return self._job_wrapper(job, **kwargs)
  335. 249
  336. 250 def _job_wrapper(self, job, **kwargs):
  337. 251 tb = None
  338. 252 try:
  339. 253 ==> r = job.handler(**kwargs)
  340. 254 except Exception:
  341. 255 error_report()
  342. 256 job.on_exception()
  343. 257 s = job.S_EXCEPTION
  344. 258 tb = get_traceback()
  345. 259 else:
  346. Variables:
  347. job =
  348. <noc.inv.discovery.jobs.lldp_discovery.LLDPLinkDiscoveryJob object at 0x49db550>
  349. tb = None
  350. self = <noc.inv.discovery.scheduler.DiscoveryScheduler object at 0x2ae63d0>
  351. kwargs =
  352. {'object': <ManagedObject: Gagarina_15a_2>,
  353. 'result': [{'local_interface': 'GigabitEthernet0/0/1',
  354. 'neighbors': [{'remote_capabilities': 4,
  355. 'remote_chassis_id': '80:FB:06:03:7A:D7',
  356. 'remote_chassis_id_subtype': 4,
  357. 'remote_port': 'GigabitEthernet0/0/1',
  358. 'remote_port_subtype': 5,
  359. 'remote_system_name': 'Gagarina_13a_2'}]},
  360. {'local_interface': 'GigabitEthernet0/0/2',
  361. 'neighbors': [{'remote_capabilities': 4,
  362. 'remote_chassis_id': '80:FB:06:03:89:87',
  363. 'remote_chassis_id_subtype': 4,
  364. 'remote_port': 'GigabitEthernet0/0/2',
  365. 'remote_port_subtype': 5,
  366. 'remote_system_name': 'Gagarina_15a_7'}]}]}
  367. ------------------------------------------------------------------------
  368. END OF TRACEBACK
  369. 2013-05-23 14:45:48,027 [inv.discovery: mac_discovery(dsw01-par-lyj)] MAC 00:0C:85:3A:73:70. VC Domain: default, VLAN 2070 at 9
  370. 2013-05-23 14:45:48,135 [inv.discovery: mac_discovery(dsw01-par-lyj)] MAC 00:1E:58:99:23:AF. VC Domain: default, VLAN 2070 at 9
  371. 2013-05-23 14:45:48,434 UNHANDLED EXCEPTION (2013-05-23 14:45:48.264075)
  372. Working directory: /opt/noc
  373. <type 'exceptions.TypeError'>
  374. 'ObjectId' object is not iterable
  375. START OF TRACEBACK
  376. ------------------------------------------------------------------------
  377. File: /opt/noc/lib/nosql.py (Line: 166)
  378. Function: to_mongo
  379. 159 else:
  380. 160 id = value
  381. 161 return id_field.to_mongo(id)
  382. 162
  383. 163 id_field_name = self.document_type._meta["id_field"]
  384. 164 id_field = self.document_type._fields[id_field_name]
  385. 165 if document:
  386. 166 ==> return [convert(v) for v in document]
  387. 167 else:
  388. 168 return document
  389. 169
  390. 170
  391. 171 class ForeignKeyField(BaseField):
  392. 172 """
  393. Variables:
  394. id_field_name = 'id'
  395. convert = <function convert at 0x505ade8>
  396. self = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  397. id_field = <mongoengine.base.ObjectIdField object at 0x2b7d350>
  398. _[1] = []
  399. document = ObjectId('50fe3f747e85c96228e4c1b7')
  400. ------------------------------------------------------------------------
  401. File: /opt/noc/lib/nosql.py (Line: 125)
  402. Function: prepare_query_value
  403. 118
  404. 119 def lookup_member(self, name):
  405. 120 return self.document_type._fields.get(name)
  406. 121
  407. 122 def prepare_query_value(self, op, value):
  408. 123 if value is None:
  409. 124 return None
  410. 125 ==> return self.to_mongo(value)
  411. 126
  412. 127
  413. 128 class PlainReferenceListField(PlainReferenceField):
  414. 129 def __get__(self, instance, owner):
  415. 130 def convert(value):
  416. 131 if isinstance(value, ObjectId):
  417. Variables:
  418. self = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  419. value = ObjectId('50fe3f747e85c96228e4c1b7')
  420. op = None
  421. ------------------------------------------------------------------------
  422. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 728)
  423. Function: _transform_query
  424. 721 if isinstance(field, basestring):
  425. 722 if op in match_operators and isinstance(value, basestring):
  426. 723 from mongoengine import StringField
  427. 724 value = StringField.prepare_query_value(op, value)
  428. 725 else:
  429. 726 value = field
  430. 727 else:
  431. 728 ==> value = field.prepare_query_value(op, value)
  432. 729 elif op in ('in', 'nin', 'all', 'near'):
  433. 730 # 'in', 'nin' and 'all' require a list of values
  434. 731 value = [field.prepare_query_value(op, v) for v in value]
  435. 732
  436. 733 # if op and op not in match_operators:
  437. 734 if op:
  438. Variables:
  439. cleaned_fields = [<noc.lib.nosql.PlainReferenceListField object at 0x4448110>]
  440. match_operators =
  441. ['contains',
  442. 'icontains',
  443. 'startswith',
  444. 'istartswith',
  445. 'endswith',
  446. 'iendswith',
  447. 'exact',
  448. 'iexact']
  449. _doc_cls = <class 'noc.inv.models.link.Link'>
  450. _field_operation = False
  451. value = ObjectId('50fe3f747e85c96228e4c1b7')
  452. negate = False
  453. query = {'interfaces': ObjectId('50fe3f747e85c96228e4c1b7')}
  454. append_field = True
  455. geo_operators =
  456. ['within_distance',
  457. 'within_spherical_distance',
  458. 'within_box',
  459. 'within_polygon',
  460. 'near',
  461. 'near_sphere']
  462. field = <noc.lib.nosql.PlainReferenceListField object at 0x4448110>
  463. parts = ['interfaces']
  464. cls = <class 'mongoengine.queryset.QuerySet'>
  465. mongo_query = {}
  466. operators =
  467. ['ne',
  468. 'gt',
  469. 'gte',
  470. 'lt',
  471. 'lte',
  472. 'in',
  473. 'nin',
  474. 'mod',
  475. 'all',
  476. 'size',
  477. 'exists',
  478. 'not']
  479. part = 'interfaces'
  480. key = 'interfaces'
  481. i = 0
  482. fields = [<noc.lib.nosql.PlainReferenceListField object at 0x4448110>]
  483. singular_ops =
  484. [None,
  485. 'ne',
  486. 'gt',
  487. 'gte',
  488. 'lt',
  489. 'lte',
  490. 'not',
  491. 'contains',
  492. 'icontains',
  493. 'startswith',
  494. 'istartswith',
  495. 'endswith',
  496. 'iendswith',
  497. 'exact',
  498. 'iexact']
  499. p = 'interfaces'
  500. indices = []
  501. op = None
  502. custom_operators = ['match']
  503. ------------------------------------------------------------------------
  504. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 162)
  505. Function: visit_query
  506. 155 if combination.operation == combination.OR:
  507. 156 return {'$or': combination.children}
  508. 157 elif combination.operation == combination.AND:
  509. 158 return self._mongo_query_conjunction(combination.children)
  510. 159 return combination
  511. 160
  512. 161 def visit_query(self, query):
  513. 162 ==> return QuerySet._transform_query(self.document, **query.query)
  514. 163
  515. 164 def _mongo_query_conjunction(self, queries):
  516. 165 """Merges Mongo query dicts - effectively &ing them together.
  517. 166 """
  518. 167 combined_query = {}
  519. 168 for query in queries:
  520. Variables:
  521. query = <mongoengine.queryset.Q object at 0x49e1290>
  522. self = <mongoengine.queryset.QueryCompilerVisitor object at 0x49dd390>
  523. ------------------------------------------------------------------------
  524. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 270)
  525. Function: accept
  526. 263 query structures.
  527. 264 """
  528. 265
  529. 266 def __init__(self, **query):
  530. 267 self.query = query
  531. 268
  532. 269 def accept(self, visitor):
  533. 270 ==> return visitor.visit_query(self)
  534. 271
  535. 272 @property
  536. 273 def empty(self):
  537. 274 return not bool(self.query)
  538. 275
  539. 276
  540. Variables:
  541. visitor = <mongoengine.queryset.QueryCompilerVisitor object at 0x49dd390>
  542. self = <mongoengine.queryset.Q object at 0x49e1290>
  543. ------------------------------------------------------------------------
  544. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 205)
  545. Function: to_query
  546. 198
  547. 199 AND = 0
  548. 200 OR = 1
  549. 201
  550. 202 def to_query(self, document):
  551. 203 query = self.accept(SimplificationVisitor())
  552. 204 query = query.accept(QueryTreeTransformerVisitor())
  553. 205 ==> query = query.accept(QueryCompilerVisitor(document))
  554. 206 return query
  555. 207
  556. 208 def accept(self, visitor):
  557. 209 raise NotImplementedError
  558. 210
  559. 211 def _combine(self, other, operation):
  560. Variables:
  561. query = <mongoengine.queryset.Q object at 0x49e1290>
  562. self = <mongoengine.queryset.Q object at 0x49e1290>
  563. document = <class 'noc.inv.models.link.Link'>
  564. ------------------------------------------------------------------------
  565. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 379)
  566. Function: _query
  567. 372 setattr(c, prop, copy.deepcopy(val))
  568. 373
  569. 374 return c
  570. 375
  571. 376 @property
  572. 377 def _query(self):
  573. 378 if self._mongo_query is None:
  574. 379 ==> self._mongo_query = self._query_obj.to_query(self._document)
  575. 380 if self._class_check:
  576. 381 self._mongo_query.update(self._initial_query)
  577. 382 return self._mongo_query
  578. 383
  579. 384 def ensure_index(self, key_or_list, drop_dups=False, background=False,
  580. 385 **kwargs):
  581. Variables:
  582. self = repr() failed
  583. ------------------------------------------------------------------------
  584. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 583)
  585. Function: _cursor
  586. 576 cursor_args['fields'] = self._loaded_fields.as_dict()
  587. 577 return cursor_args
  588. 578
  589. 579 @property
  590. 580 def _cursor(self):
  591. 581 if self._cursor_obj is None:
  592. 582
  593. 583 ==> self._cursor_obj = self._collection.find(self._query,
  594. 584 **self._cursor_args)
  595. 585 # Apply where clauses to cursor
  596. 586 if self._where_clause:
  597. 587 self._cursor_obj.where(self._where_clause)
  598. 588
  599. 589 # apply default ordering
  600. Variables:
  601. self = .. queryset mid-iteration ..
  602. ------------------------------------------------------------------------
  603. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 1159)
  604. Function: __getitem__
  605. 1152 # Allow further QuerySet modifications to be performed
  606. 1153 return self
  607. 1154 # Integer index provided
  608. 1155 elif isinstance(key, int):
  609. 1156 if self._scalar:
  610. 1157 return self._get_scalar(self._document._from_son(
  611. 1158 self._cursor[key]))
  612. 1159 ==> return self._document._from_son(self._cursor[key])
  613. 1160 raise AttributeError
  614. 1161
  615. 1162 def distinct(self, field):
  616. 1163 """Return a list of distinct values for a given field.
  617. 1164
  618. 1165 :param field: the field to select distinct values from
  619. Variables:
  620. self = .. queryset mid-iteration ..
  621. key = 0
  622. ------------------------------------------------------------------------
  623. File: /opt/noc/lib/python2.6/site-packages/mongoengine/queryset.py (Line: 864)
  624. Function: first
  625. 857 doc.save()
  626. 858 return doc
  627. 859
  628. 860 def first(self):
  629. 861 """Retrieve the first object matching the query.
  630. 862 """
  631. 863 try:
  632. 864 ==> result = self[0]
  633. 865 except IndexError:
  634. 866 result = None
  635. 867 return result
  636. 868
  637. 869 def insert(self, doc_or_docs, load_bulk=True, safe=False, write_options=None):
  638. 870 """bulk insert documents
  639. Variables:
  640. self = .. queryset mid-iteration ..
  641. ------------------------------------------------------------------------
  642. File: /opt/noc/inv/models/interface.py (Line: 83)
  643. Function: link
  644. 76
  645. 77 @property
  646. 78 def link(self):
  647. 79 """
  648. 80 Return Link instance or None
  649. 81 :return:
  650. 82 """
  651. 83 ==> return Link.objects.filter(interfaces=self.id).first()
  652. 84
  653. 85 @property
  654. 86 def is_linked(self):
  655. 87 """
  656. 88 Check interface is linked
  657. 89 :returns: True if interface is linked, False otherwise
  658. Variables:
  659. self = <Interface: dsw01-par-lyj: 2>
  660. ------------------------------------------------------------------------
  661. File: /opt/noc/inv/models/interface.py (Line: 91)
  662. Function: is_linked
  663. 84
  664. 85 @property
  665. 86 def is_linked(self):
  666. 87 """
  667. 88 Check interface is linked
  668. 89 :returns: True if interface is linked, False otherwise
  669. 90 """
  670. 91 ==> return self.link is not None
  671. 92
  672. 93 def unlink(self):
  673. 94 """
  674. 95 Remove existing link.
  675. 96 Raise ValueError if interface is not linked
  676. 97 """
  677. Variables:
  678. self = <Interface: dsw01-par-lyj: 2>
  679. ------------------------------------------------------------------------
  680. File: /opt/noc/inv/discovery/jobs/mac_discovery.py (Line: 139)
  681. Function: check_port
  682. 132 """
  683. 133 # Local interface
  684. 134 iface = Interface.objects.filter(
  685. 135 managed_object=object.id, name=port).first()
  686. 136 if not iface:
  687. 137 return # Not found
  688. 138 # Check interface is still unlinked
  689. 139 ==> if iface.is_linked:
  690. 140 return # Already linked
  691. 141 # Try to find remote interface by MAC
  692. 142 interfaces = list(Interface.objects.filter(mac=mac))
  693. 143 if len(interfaces) != 1:
  694. 144 return # No strict match
  695. 145 remote_iface = interfaces[0]
  696. Variables:
  697. iface = <Interface: dsw01-par-lyj: 2>
  698. self =
  699. <noc.inv.discovery.jobs.mac_discovery.MACDiscoveryJob object at 0x7017a90>
  700. object = <ManagedObject: dsw01-par-lyj>
  701. mac = '00:16:36:AB:C7:B6'
  702. vlans = [844]
  703. port = '2'
  704. ------------------------------------------------------------------------
  705. File: /opt/noc/inv/discovery/jobs/mac_discovery.py (Line: 80)
  706. Function: handler
  707. 73 mh = defaultdict(int)
  708. 74 for p, m in pmc:
  709. 75 mh[m] += 1
  710. 76 # Check all unique MACs
  711. 77 for port, mac in pmc:
  712. 78 if mh[mac] == 1:
  713. 79 self.check_port(object, port, mac,
  714. 80 ==> [vlan for vlan, mac in port_macs[port]])
  715. 81 return True
  716. 82
  717. 83 @classmethod
  718. 84 def initial_submit_queryset(cls):
  719. 85 return {"object_profile__enable_mac_discovery": True}
  720. 86
  721. Variables:
  722. iface = '9'
  723. port_macs =
  724. defaultdict(<type 'set'>, {'9': set([(235, '00:19:21:78:08:95'), (235, 'BC:5F:F4:00:04:28'), (235, '68:05:CA:01:DF:E2'), (235, '68:05:CA:02:0C:AA'), (235, '30:85:A9:AC:51:15'), (844, 'F0:DE:F1:8A:74:6C'), (2070, '00:10:00:00:00:03'), (235, '68:05:CA:01:E4:A0'), (235, 'C8:9C:DC:53:8C:F2'), (235, '68:05:CA:01:E1:18'), (235, '4C:02:89:00:75:7F'), (235, '30:85:A9:AC:3F:A6'), (844, '00:1F:A4:2B:58:78'), (2070, '4C:B1:6C:16:81:28'), (2070, '00:1E:58:99:23:AF'), (235, '68:05:CA:01:DC:56'), (235, '68:05:CA:01:D9:DE'), (235, '30:85:A9:15:0F:03'), (2070, '00:10:00:00:00:04'), (235, '30:85:A9:AC:44:6D'), (235, '68:05:CA:08:7B:1E'), (2070, '4C:B1:6C:D2:74:95'), (235, '68:05:CA:01:D9:58'), (235, '00:1A:92:38:34:62'), (235, '00:15:F2:5E:0E:C9'), (2070, '08:19:A6:93:18:9E'), (235, '00:30:67:DD:F4:1D'), (235, '00:26:18:DA:5F:52'), (2070, '00:1B:0D:6A:78:91'), (235, '68:05:CA:01:C2:28'), (235, '00:26:18:DC:F3:FF'), (235, '68:05:CA:01:E3:DA'), (235, '00:1B:0D:6A:78:91'), (235, 'BC:5F:F4:00:03:A1'), (235, '48:5B:39:D1:D6:19'), (2070, '00:25:9E:DC:D5:7E'), (235, '00:1B:21:87:B6:74'), (844, '00:1E:8C:1D:13:0B'), (235, '38:60:77:C2:80:0C'), (235, '68:05:CA:01:DC:A0'), (2070, '4C:1F:CC:67:14:2E'), (235, '68:05:CA:01:E0:F0'), (844, 'D8:6C:E9:62:4A:55'), (235, '50:46:5D:8A:BC:1C'), (235, '30:85:A9:AC:44:67'), (2070, '00:1E:4C:9D:1E:07'), (235, '68:05:CA:01:E0:CE'), (235, '68:05:CA:01:DA:20'), (235, '00:1B:21:81:77:F2'), (403, '00:1F:6C:B9:19:C0'), (2070, '00:10:00:00:00:05'), (235, '30:85:A9:AC:50:A6'), (2070, '4C:1F:CC:65:CD:68'), (3651, '00:1B:0D:6A:78:91'), (235, '30:85:A9:AC:40:17'), (2070, '4C:1F:CC:66:3F:0A'), (235, '00:21:91:54:15:3A'), (235, '30:85:A9:AC:4C:4A'), (2070, '00:10:00:00:00:38'), (844, '28:6E:D4:10:52:42'), (235, '00:0E:38:5F:6F:1B'), (2070, '00:0C:85:3A:73:70'), (235, '68:05:CA:02:0C:B8'), (2070, '4C:B1:6C:D2:74:32'), (235, '00:15:E9:3D:10:63'), (235, '00:13:D4:1F:D6:1F'), (2070, '00:10:00:43:00:01'), (235, '30:85:A9:AC:51:18'), (235, '20:CF:30:E7:9B:5E'), (235, 'FC:75:16:8E:40:81'), (844, '00:1B:0D:6A:78:91'), (844, '54:04:A6:99:FE:B2'), (235, '68:05:CA:01:E4:B0'), (2070, '00:10:00:00:00:84'), (2070, '00:10:00:52:52:01'), (235, '30:85:A9:AC:44:94'), (844, '00:24:1D:97:4B:34'), (235, '00:25:22:60:87:37'), (403, '00:1B:0D:6A:78:91'), (235, '30:85:A9:AC:48:D8'), (235, '30:85:A9:AC:50:FA'), (844, 'B4:B3:62:5E:32:40'), (2070, '00:10:00:00:00:89'), (235, '00:11:11:9F:58:54'), (2070, '4C:B1:6C:D2:71:BF'), (2070, '00:20:35:22:3B:DF'), (235, '68:05:CA:01:E3:64'), (235, '30:85:A9:AC:4C:8E'), (2070, '00:10:00:00:00:07'), (235, '00:30:67:82:22:75'), (235, '30:85:A9:AC:4C:8C'), (235, '00:04:61:5B:C8:AA'), (235, '00:1B:21:84:BE:EA'), (2070, '08:19:A6:93:18:5C'), (2070, '08:19:A6:93:1A:CF'), (235, '30:85:A9:AC:51:99'), (2070, '00:18:82:4D:1B:22'), (2070, '4C:1F:CC:65:CD:2E'), (235, '30:85:A9:AC:52:1B'), (844, '00:14:2A:9F:76:2D')]), '1': set([(844, '00:13:49:D2:25:05'), (844, '00:13:49:E8:04:85')]), '2': set([(844, '00:16:36:AB:C7:B6')])})
  725. dups = set(['00:1B:0D:6A:78:91'])
  726. v =
  727. {'interfaces': ['9'], 'mac': '00:1B:0D:6A:78:91', 'type': 'D', 'vlan_id': 3651}
  728. vc_domain = <VCDomain: default>
  729. self =
  730. <noc.inv.discovery.jobs.mac_discovery.MACDiscoveryJob object at 0x7017a90>
  731. vlan = 844
  732. m = '00:16:36:AB:C7:B6'
  733. mh = defaultdict(<type 'int'>, {'00:16:36:AB:C7:B6': 1})
  734. object = <ManagedObject: dsw01-par-lyj>
  735. p = '2'
  736. mac = '00:16:36:AB:C7:B6'
  737. result =
  738. [{'interfaces': ['9'],
  739. 'mac': '00:04:61:5B:C8:AA',
  740. 'type': 'D',
  741. 'vlan_id': 235},
  742. {'interfaces': ['9'],
  743. 'mac': '00:0E:38:5F:6F:1B',
  744. 'type': 'D',
  745. 'vlan_id': 235},
  746. {'interfaces': ['9'],
  747. 'mac': '00:11:11:9F:58:54',
  748. 'type': 'D',
  749. 'vlan_id': 235},
  750. {'interfaces': ['9'],
  751. 'mac': '00:13:D4:1F:D6:1F',
  752. 'type': 'D',
  753. 'vlan_id': 235},
  754. {'interfaces': ['9'],
  755. 'mac': '00:15:E9:3D:10:63',
  756. 'type': 'D',
  757. 'vlan_id': 235},
  758. {'interfaces': ['9'],
  759. 'mac': '00:15:F2:5E:0E:C9',
  760. 'type': 'D',
  761. 'vlan_id': 235},
  762. {'interfaces': ['9'],
  763. 'mac': '00:19:21:78:08:95',
  764. 'type': 'D',
  765. 'vlan_id': 235},
  766. {'interfaces': ['9'],
  767. 'mac': '00:1A:92:38:34:62',
  768. 'type': 'D',
  769. 'vlan_id': 235},
  770. {'interfaces': ['9'],
  771. 'mac': '00:1B:0D:6A:78:91',
  772. 'type': 'D',
  773. 'vlan_id': 235},
  774. {'interfaces': ['9'],
  775. 'mac': '00:1B:21:81:77:F2',
  776. 'type': 'D',
  777. 'vlan_id': 235},
  778. {'interfaces': ['9'],
  779. 'mac': '00:1B:21:84:BE:EA',
  780. 'type': 'D',
  781. 'vlan_id': 235},
  782. {'interfaces': ['9'],
  783. 'mac': '00:1B:21:87:B6:74',
  784. 'type': 'D',
  785. 'vlan_id': 235},
  786. {'interfaces': ['9'],
  787. 'mac': '00:21:91:54:15:3A',
  788. 'type': 'D',
  789. 'vlan_id': 235},
  790. {'interfaces': ['9'],
  791. 'mac': '00:25:22:60:87:37',
  792. 'type': 'D',
  793. 'vlan_id': 235},
  794. {'interfaces': ['9'],
  795. 'mac': '00:26:18:DA:5F:52',
  796. 'type': 'D',
  797. 'vlan_id': 235},
  798. {'interfaces': ['9'],
  799. 'mac': '00:26:18:DC:F3:FF',
  800. 'type': 'D',
  801. 'vlan_id': 235},
  802. {'interfaces': ['9'],
  803. 'mac': '00:30:67:82:22:75',
  804. 'type': 'D',
  805. 'vlan_id': 235},
  806. {'interfaces': ['9'],
  807. 'mac': '00:30:67:DD:F4:1D',
  808. 'type': 'D',
  809. 'vlan_id': 235},
  810. {'interfaces': ['9'],
  811. 'mac': '20:CF:30:E7:9B:5E',
  812. 'type': 'D',
  813. 'vlan_id': 235},
  814. {'interfaces': ['9'],
  815. 'mac': '30:85:A9:15:0F:03',
  816. 'type': 'D',
  817. 'vlan_id': 235},
  818. {'interfaces': ['9'],
  819. 'mac': '30:85:A9:AC:3F:A6',
  820. 'type': 'D',
  821. 'vlan_id': 235},
  822. {'interfaces': ['9'],
  823. 'mac': '30:85:A9:AC:40:17',
  824. 'type': 'D',
  825. 'vlan_id': 235},
  826. {'interfaces': ['9'],
  827. 'mac': '30:85:A9:AC:44:67',
  828. 'type': 'D',
  829. 'vlan_id': 235},
  830. {'interfaces': ['9'],
  831. 'mac': '30:85:A9:AC:44:6D',
  832. 'type': 'D',
  833. 'vlan_id': 235},
  834. {'interfaces': ['9'],
  835. 'mac': '30:85:A9:AC:44:94',
  836. 'type': 'D',
  837. 'vlan_id': 235},
  838. {'interfaces': ['9'],
  839. 'mac': '30:85:A9:AC:48:D8',
  840. 'type': 'D',
  841. 'vlan_id': 235},
  842. {'interfaces': ['9'],
  843. 'mac': '30:85:A9:AC:4C:4A',
  844. 'type': 'D',
  845. 'vlan_id': 235},
  846. {'interfaces': ['9'],
  847. 'mac': '30:85:A9:AC:4C:8C',
  848. 'type': 'D',
  849. 'vlan_id': 235},
  850. {'interfaces': ['9'],
  851. 'mac': '30:85:A9:AC:4C:8E',
  852. 'type': 'D',
  853. 'vlan_id': 235},
  854. {'interfaces': ['9'],
  855. 'mac': '30:85:A9:AC:50:A6',
  856. 'type': 'D',
  857. 'vlan_id': 235},
  858. {'interfaces': ['9'],
  859. 'mac': '30:85:A9:AC:50:FA',
  860. 'type': 'D',
  861. 'vlan_id': 235},
  862. {'interfaces': ['9'],
  863. 'mac': '30:85:A9:AC:51:15',
  864. 'type': 'D',
  865. 'vlan_id': 235},
  866. {'interfaces': ['9'],
  867. 'mac': '30:85:A9:AC:51:18',
  868. 'type': 'D',
  869. 'vlan_id': 235},
  870. {'interfaces': ['9'],
  871. 'mac': '30:85:A9:AC:51:99',
  872. 'type': 'D',
  873. 'vlan_id': 235},
  874. {'interfaces': ['9'],
  875. 'mac': '30:85:A9:AC:52:1B',
  876. 'type': 'D',
  877. 'vlan_id': 235},
  878. {'interfaces': ['9'],
  879. 'mac': '38:60:77:C2:80:0C',
  880. 'type': 'D',
  881. 'vlan_id': 235},
  882. {'interfaces': ['9'],
  883. 'mac': '48:5B:39:D1:D6:19',
  884. 'type': 'D',
  885. 'vlan_id': 235},
  886. {'interfaces': ['9'],
  887. 'mac': '4C:02:89:00:75:7F',
  888. 'type': 'D',
  889. 'vlan_id': 235},
  890. {'interfaces': ['9'],
  891. 'mac': '50:46:5D:8A:BC:1C',
  892. 'type': 'D',
  893. 'vlan_id': 235},
  894. {'interfaces': ['9'],
  895. 'mac': '68:05:CA:01:C2:28',
  896. 'type': 'D',
  897. 'vlan_id': 235},
  898. {'interfaces': ['9'],
  899. 'mac': '68:05:CA:01:D9:58',
  900. 'type': 'D',
  901. 'vlan_id': 235},
  902. {'interfaces': ['9'],
  903. 'mac': '68:05:CA:01:D9:DE',
  904. 'type': 'D',
  905. 'vlan_id': 235},
  906. {'interfaces': ['9'],
  907. 'mac': '68:05:CA:01:DA:20',
  908. 'type': 'D',
  909. 'vlan_id': 235},
  910. {'interfaces': ['9'],
  911. 'mac': '68:05:CA:01:DC:56',
  912. 'type': 'D',
  913. 'vlan_id': 235},
  914. {'interfaces': ['9'],
  915. 'mac': '68:05:CA:01:DC:A0',
  916. 'type': 'D',
  917. 'vlan_id': 235},
  918. {'interfaces': ['9'],
  919. 'mac': '68:05:CA:01:DF:E2',
  920. 'type': 'D',
  921. 'vlan_id': 235},
  922. {'interfaces': ['9'],
  923. 'mac': '68:05:CA:01:E0:CE',
  924. 'type': 'D',
  925. 'vlan_id': 235},
  926. {'interfaces': ['9'],
  927. 'mac': '68:05:CA:01:E0:F0',
  928. 'type': 'D',
  929. 'vlan_id': 235},
  930. {'interfaces': ['9'],
  931. 'mac': '68:05:CA:01:E1:18',
  932. 'type': 'D',
  933. 'vlan_id': 235},
  934. {'interfaces': ['9'],
  935. 'mac': '68:05:CA:01:E3:64',
  936. 'type': 'D',
  937. 'vlan_id': 235},
  938. {'interfaces': ['9'],
  939. 'mac': '68:05:CA:01:E3:DA',
  940. 'type': 'D',
  941. 'vlan_id': 235},
  942. {'interfaces': ['9'],
  943. 'mac': '68:05:CA:01:E4:A0',
  944. 'type': 'D',
  945. 'vlan_id': 235},
  946. {'interfaces': ['9'],
  947. 'mac': '68:05:CA:01:E4:B0',
  948. 'type': 'D',
  949. 'vlan_id': 235},
  950. {'interfaces': ['9'],
  951. 'mac': '68:05:CA:02:0C:AA',
  952. 'type': 'D',
  953. 'vlan_id': 235},
  954. {'interfaces': ['9'],
  955. 'mac': '68:05:CA:02:0C:B8',
  956. 'type': 'D',
  957. 'vlan_id': 235},
  958. {'interfaces': ['9'],
  959. 'mac': '68:05:CA:08:7B:1E',
  960. 'type': 'D',
  961. 'vlan_id': 235},
  962. {'interfaces': ['9'],
  963. 'mac': 'BC:5F:F4:00:03:A1',
  964. 'type': 'D',
  965. 'vlan_id': 235},
  966. {'interfaces': ['9'],
  967. 'mac': 'BC:5F:F4:00:04:28',
  968. 'type': 'D',
  969. 'vlan_id': 235},
  970. {'interfaces': ['9'],
  971. 'mac': 'C8:9C:DC:53:8C:F2',
  972. 'type': 'D',
  973. 'vlan_id': 235},
  974. {'interfaces': ['9'],
  975. 'mac': 'FC:75:16:8E:40:81',
  976. 'type': 'D',
  977. 'vlan_id': 235},
  978. {'interfaces': ['9'],
  979. 'mac': '00:1B:0D:6A:78:91',
  980. 'type': 'D',
  981. 'vlan_id': 403},
  982. {'interfaces': ['9'],
  983. 'mac': '00:1F:6C:B9:19:C0',
  984. 'type': 'D',
  985. 'vlan_id': 403},
  986. {'interfaces': ['1'],
  987. 'mac': '00:13:49:D2:25:05',
  988. 'type': 'D',
  989. 'vlan_id': 844},
  990. {'interfaces': ['1'],
  991. 'mac': '00:13:49:E8:04:85',
  992. 'type': 'D',
  993. 'vlan_id': 844},
  994. {'interfaces': ['9'],
  995. 'mac': '00:14:2A:9F:76:2D',
  996. 'type': 'D',
  997. 'vlan_id': 844},
  998. {'interfaces': ['2'],
  999. 'mac': '00:16:36:AB:C7:B6',
  1000. 'type': 'D',
  1001. 'vlan_id': 844},
  1002. {'interfaces': ['9'],
  1003. 'mac': '00:1B:0D:6A:78:91',
  1004. 'type': 'D',
  1005. 'vlan_id': 844},
  1006. {'interfaces': ['9'],
  1007. 'mac': '00:1E:8C:1D:13:0B',
  1008. 'type': 'D',
  1009. 'vlan_id': 844},
  1010. {'interfaces': ['9'],
  1011. 'mac': '00:1F:A4:2B:58:78',
  1012. 'type': 'D',
  1013. 'vlan_id': 844},
  1014. {'interfaces': ['9'],
  1015. 'mac': '00:24:1D:97:4B:34',
  1016. 'type': 'D',
  1017. 'vlan_id': 844},
  1018. {'interfaces': ['9'],
  1019. 'mac': '28:6E:D4:10:52:42',
  1020. 'type': 'D',
  1021. 'vlan_id': 844},
  1022. {'interfaces': ['9'],
  1023. 'mac': '54:04:A6:99:FE:B2',
  1024. 'type': 'D',
  1025. 'vlan_id': 844},
  1026. {'interfaces': ['9'],
  1027. 'mac': 'B4:B3:62:5E:32:40',
  1028. 'type': 'D',
  1029. 'vlan_id': 844},
  1030. {'interfaces': ['9'],
  1031. 'mac': 'D8:6C:E9:62:4A:55',
  1032. 'type': 'D',
  1033. 'vlan_id': 844},
  1034. {'interfaces': ['9'],
  1035. 'mac': 'F0:DE:F1:8A:74:6C',
  1036. 'type': 'D',
  1037. 'vlan_id': 844},
  1038. {'interfaces': ['9'],
  1039. 'mac': '00:0C:85:3A:73:70',
  1040. 'type': 'D',
  1041. 'vlan_id': 2070},
  1042. {'interfaces': ['9'],
  1043. 'mac': '00:10:00:00:00:03',
  1044. 'type': 'D',
  1045. 'vlan_id': 2070},
  1046. {'interfaces': ['9'],
  1047. 'mac': '00:10:00:00:00:04',
  1048. 'type': 'D',
  1049. 'vlan_id': 2070},
  1050. {'interfaces': ['9'],
  1051. 'mac': '00:10:00:00:00:05',
  1052. 'type': 'D',
  1053. 'vlan_id': 2070},
  1054. {'interfaces': ['9'],
  1055. 'mac': '00:10:00:00:00:07',
  1056. 'type': 'D',
  1057. 'vlan_id': 2070},
  1058. {'interfaces': ['9'],
  1059. 'mac': '00:10:00:00:00:38',
  1060. 'type': 'D',
  1061. 'vlan_id': 2070},
  1062. {'interfaces': ['9'],
  1063. 'mac': '00:10:00:00:00:84',
  1064. 'type': 'D',
  1065. 'vlan_id': 2070},
  1066. {'interfaces': ['9'],
  1067. 'mac': '00:10:00:00:00:89',
  1068. 'type': 'D',
  1069. 'vlan_id': 2070},
  1070. {'interfaces': ['9'],
  1071. 'mac': '00:10:00:43:00:01',
  1072. 'type': 'D',
  1073. 'vlan_id': 2070},
  1074. {'interfaces': ['9'],
  1075. 'mac': '00:10:00:52:52:01',
  1076. 'type': 'D',
  1077. 'vlan_id': 2070},
  1078. {'interfaces': ['9'],
  1079. 'mac': '00:18:82:4D:1B:22',
  1080. 'type': 'D',
  1081. 'vlan_id': 2070},
  1082. {'interfaces': ['9'],
  1083. 'mac': '00:1B:0D:6A:78:91',
  1084. 'type': 'D',
  1085. 'vlan_id': 2070},
  1086. {'interfaces': ['9'],
  1087. 'mac': '00:1E:4C:9D:1E:07',
  1088. 'type': 'D',
  1089. 'vlan_id': 2070},
  1090. {'interfaces': ['9'],
  1091. 'mac': '00:1E:58:99:23:AF',
  1092. 'type': 'D',
  1093. 'vlan_id': 2070},
  1094. {'interfaces': ['9'],
  1095. 'mac': '00:20:35:22:3B:DF',
  1096. 'type': 'D',
  1097. 'vlan_id': 2070},
  1098. {'interfaces': ['9'],
  1099. 'mac': '00:25:9E:DC:D5:7E',
  1100. 'type': 'D',
  1101. 'vlan_id': 2070},
  1102. {'interfaces': ['9'],
  1103. 'mac': '08:19:A6:93:18:5C',
  1104. 'type': 'D',
  1105. 'vlan_id': 2070},
  1106. {'interfaces': ['9'],
  1107. 'mac': '08:19:A6:93:18:9E',
  1108. 'type': 'D',
  1109. 'vlan_id': 2070},
  1110. {'interfaces': ['9'],
  1111. 'mac': '08:19:A6:93:1A:CF',
  1112. 'type': 'D',
  1113. 'vlan_id': 2070},
  1114. {'interfaces': ['9'],
  1115. 'mac': '4C:1F:CC:65:CD:2E',
  1116. 'type': 'D',
  1117. 'vlan_id': 2070},
  1118. {'interfaces': ['9'],
  1119. 'mac': '4C:1F:CC:65:CD:68',
  1120. 'type': 'D',
  1121. 'vlan_id': 2070},
  1122. {'interfaces': ['9'],
  1123. 'mac': '4C:1F:CC:66:3F:0A',
  1124. 'type': 'D',
  1125. 'vlan_id': 2070},
  1126. {'interfaces': ['9'],
  1127. 'mac': '4C:1F:CC:67:14:2E',
  1128. 'type': 'D',
  1129. 'vlan_id': 2070},
  1130. {'interfaces': ['9'],
  1131. 'mac': '4C:B1:6C:16:81:28',
  1132. 'type': 'D',
  1133. 'vlan_id': 2070},
  1134. {'interfaces': ['9'],
  1135. 'mac': '4C:B1:6C:D2:71:BF',
  1136. 'type': 'D',
  1137. 'vlan_id': 2070},
  1138. {'interfaces': ['9'],
  1139. 'mac': '4C:B1:6C:D2:74:32',
  1140. 'type': 'D',
  1141. 'vlan_id': 2070},
  1142. {'interfaces': ['9'],
  1143. 'mac': '4C:B1:6C:D2:74:95',
  1144. 'type': 'D',
  1145. 'vlan_id': 2070},
  1146. {'interfaces': ['9'],
  1147. 'mac': '00:1B:0D:6A:78:91',
  1148. 'type': 'D',
  1149. 'vlan_id': 3651}]
  1150. pmc = [('2', '00:16:36:AB:C7:B6')]
  1151. seen =
  1152. {'00:04:61:5B:C8:AA': 235,
  1153. '00:0C:85:3A:73:70': 2070,
  1154. '00:0E:38:5F:6F:1B': 235,
  1155. '00:10:00:00:00:03': 2070,
  1156. '00:10:00:00:00:04': 2070,
  1157. '00:10:00:00:00:05': 2070,
  1158. '00:10:00:00:00:07': 2070,
  1159. '00:10:00:00:00:38': 2070,
  1160. '00:10:00:00:00:84': 2070,
  1161. '00:10:00:00:00:89': 2070,
  1162. '00:10:00:43:00:01': 2070,
  1163. '00:10:00:52:52:01': 2070,
  1164. '00:11:11:9F:58:54': 235,
  1165. '00:13:49:D2:25:05': 844,
  1166. '00:13:49:E8:04:85': 844,
  1167. '00:13:D4:1F:D6:1F': 235,
  1168. '00:14:2A:9F:76:2D': 844,
  1169. '00:15:E9:3D:10:63': 235,
  1170. '00:15:F2:5E:0E:C9': 235,
  1171. '00:16:36:AB:C7:B6': 844,
  1172. '00:18:82:4D:1B:22': 2070,
  1173. '00:19:21:78:08:95': 235,
  1174. '00:1A:92:38:34:62': 235,
  1175. '00:1B:0D:6A:78:91': 235,
  1176. '00:1B:21:81:77:F2': 235,
  1177. '00:1B:21:84:BE:EA': 235,
  1178. '00:1B:21:87:B6:74': 235,
  1179. '00:1E:4C:9D:1E:07': 2070,
  1180. '00:1E:58:99:23:AF': 2070,
  1181. '00:1E:8C:1D:13:0B': 844,
  1182. '00:1F:6C:B9:19:C0': 403,
  1183. '00:1F:A4:2B:58:78': 844,
  1184. '00:20:35:22:3B:DF': 2070,
  1185. '00:21:91:54:15:3A': 235,
  1186. '00:24:1D:97:4B:34': 844,
  1187. '00:25:22:60:87:37': 235,
  1188. '00:25:9E:DC:D5:7E': 2070,
  1189. '00:26:18:DA:5F:52': 235,
  1190. '00:26:18:DC:F3:FF': 235,
  1191. '00:30:67:82:22:75': 235,
  1192. '00:30:67:DD:F4:1D': 235,
  1193. '08:19:A6:93:18:5C': 2070,
  1194. '08:19:A6:93:18:9E': 2070,
  1195. '08:19:A6:93:1A:CF': 2070,
  1196. '20:CF:30:E7:9B:5E': 235,
  1197. '28:6E:D4:10:52:42': 844,
  1198. '30:85:A9:15:0F:03': 235,
  1199. '30:85:A9:AC:3F:A6': 235,
  1200. '30:85:A9:AC:40:17': 235,
  1201. '30:85:A9:AC:44:67': 235,
  1202. '30:85:A9:AC:44:6D': 235,
  1203. '30:85:A9:AC:44:94': 235,
  1204. '30:85:A9:AC:48:D8': 235,
  1205. '30:85:A9:AC:4C:4A': 235,
  1206. '30:85:A9:AC:4C:8C': 235,
  1207. '30:85:A9:AC:4C:8E': 235,
  1208. '30:85:A9:AC:50:A6': 235,
  1209. '30:85:A9:AC:50:FA': 235,
  1210. '30:85:A9:AC:51:15': 235,
  1211. '30:85:A9:AC:51:18': 235,
  1212. '30:85:A9:AC:51:99': 235,
  1213. '30:85:A9:AC:52:1B': 235,
  1214. '38:60:77:C2:80:0C': 235,
  1215. '48:5B:39:D1:D6:19': 235,
  1216. '4C:02:89:00:75:7F': 235,
  1217. '4C:1F:CC:65:CD:2E': 2070,
  1218. '4C:1F:CC:65:CD:68': 2070,
  1219. '4C:1F:CC:66:3F:0A': 2070,
  1220. '4C:1F:CC:67:14:2E': 2070,
  1221. '4C:B1:6C:16:81:28': 2070,
  1222. '4C:B1:6C:D2:71:BF': 2070,
  1223. '4C:B1:6C:D2:74:32': 2070,
  1224. '4C:B1:6C:D2:74:95': 2070,
  1225. '50:46:5D:8A:BC:1C': 235,
  1226. '54:04:A6:99:FE:B2': 844,
  1227. '68:05:CA:01:C2:28': 235,
  1228. '68:05:CA:01:D9:58': 235,
  1229. '68:05:CA:01:D9:DE': 235,
  1230. '68:05:CA:01:DA:20': 235,
  1231. '68:05:CA:01:DC:56': 235,
  1232. '68:05:CA:01:DC:A0': 235,
  1233. '68:05:CA:01:DF:E2': 235,
  1234. '68:05:CA:01:E0:CE': 235,
  1235. '68:05:CA:01:E0:F0': 235,
  1236. '68:05:CA:01:E1:18': 235,
  1237. '68:05:CA:01:E3:64': 235,
  1238. '68:05:CA:01:E3:DA': 235,
  1239. '68:05:CA:01:E4:A0': 235,
  1240. '68:05:CA:01:E4:B0': 235,
  1241. '68:05:CA:02:0C:AA': 235,
  1242. '68:05:CA:02:0C:B8': 235,
  1243. '68:05:CA:08:7B:1E': 235,
  1244. 'B4:B3:62:5E:32:40': 844,
  1245. 'BC:5F:F4:00:03:A1': 235,
  1246. 'BC:5F:F4:00:04:28': 235,
  1247. 'C8:9C:DC:53:8C:F2': 235,
  1248. 'D8:6C:E9:62:4A:55': 844,
  1249. 'F0:DE:F1:8A:74:6C': 844,
  1250. 'FC:75:16:8E:40:81': 235}
  1251. port = '2'
  1252. ------------------------------------------------------------------------
  1253. File: /opt/noc/lib/scheduler/scheduler.py (Line: 253)
  1254. Function: _job_wrapper
  1255. 246 t.start()
  1256. 247 else:
  1257. 248 return self._job_wrapper(job, **kwargs)
  1258. 249
  1259. 250 def _job_wrapper(self, job, **kwargs):
  1260. 251 tb = None
  1261. 252 try:
  1262. 253 ==> r = job.handler(**kwargs)
  1263. 254 except Exception:
  1264. 255 error_report()
  1265. 256 job.on_exception()
  1266. 257 s = job.S_EXCEPTION
  1267. 258 tb = get_traceback()
  1268. 259 else:
  1269. Variables:
  1270. job =
  1271. <noc.inv.discovery.jobs.mac_discovery.MACDiscoveryJob object at 0x7017a90>
  1272. tb = None
  1273. self = <noc.inv.discovery.scheduler.DiscoveryScheduler object at 0x2ae63d0>
  1274. kwargs =
  1275. {'object': <ManagedObject: dsw01-par-lyj>,
  1276. 'result': [{'interfaces': ['9'],
  1277. 'mac': '00:04:61:5B:C8:AA',
  1278. 'type': 'D',
  1279. 'vlan_id': 235},
  1280. {'interfaces': ['9'],
  1281. 'mac': '00:0E:38:5F:6F:1B',
  1282. 'type': 'D',
  1283. 'vlan_id': 235},
  1284. {'interfaces': ['9'],
  1285. 'mac': '00:11:11:9F:58:54',
  1286. 'type': 'D',
  1287. 'vlan_id': 235},
  1288. {'interfaces': ['9'],
  1289. 'mac': '00:13:D4:1F:D6:1F',
  1290. 'type': 'D',
  1291. 'vlan_id': 235},
  1292. {'interfaces': ['9'],
  1293. 'mac': '00:15:E9:3D:10:63',
  1294. 'type': 'D',
  1295. 'vlan_id': 235},
  1296. {'interfaces': ['9'],
  1297. 'mac': '00:15:F2:5E:0E:C9',
  1298. 'type': 'D',
  1299. 'vlan_id': 235},
  1300. {'interfaces': ['9'],
  1301. 'mac': '00:19:21:78:08:95',
  1302. 'type': 'D',
  1303. 'vlan_id': 235},
  1304. {'interfaces': ['9'],
  1305. 'mac': '00:1A:92:38:34:62',
  1306. 'type': 'D',
  1307. 'vlan_id': 235},
  1308. {'interfaces': ['9'],
  1309. 'mac': '00:1B:0D:6A:78:91',
  1310. 'type': 'D',
  1311. 'vlan_id': 235},
  1312. {'interfaces': ['9'],
  1313. 'mac': '00:1B:21:81:77:F2',
  1314. 'type': 'D',
  1315. 'vlan_id': 235},
  1316. {'interfaces': ['9'],
  1317. 'mac': '00:1B:21:84:BE:EA',
  1318. 'type': 'D',
  1319. 'vlan_id': 235},
  1320. {'interfaces': ['9'],
  1321. 'mac': '00:1B:21:87:B6:74',
  1322. 'type': 'D',
  1323. 'vlan_id': 235},
  1324. {'interfaces': ['9'],
  1325. 'mac': '00:21:91:54:15:3A',
  1326. 'type': 'D',
  1327. 'vlan_id': 235},
  1328. {'interfaces': ['9'],
  1329. 'mac': '00:25:22:60:87:37',
  1330. 'type': 'D',
  1331. 'vlan_id': 235},
  1332. {'interfaces': ['9'],
  1333. 'mac': '00:26:18:DA:5F:52',
  1334. 'type': 'D',
  1335. 'vlan_id': 235},
  1336. {'interfaces': ['9'],
  1337. 'mac': '00:26:18:DC:F3:FF',
  1338. 'type': 'D',
  1339. 'vlan_id': 235},
  1340. {'interfaces': ['9'],
  1341. 'mac': '00:30:67:82:22:75',
  1342. 'type': 'D',
  1343. 'vlan_id': 235},
  1344. {'interfaces': ['9'],
  1345. 'mac': '00:30:67:DD:F4:1D',
  1346. 'type': 'D',
  1347. 'vlan_id': 235},
  1348. {'interfaces': ['9'],
  1349. 'mac': '20:CF:30:E7:9B:5E',
  1350. 'type': 'D',
  1351. 'vlan_id': 235},
  1352. {'interfaces': ['9'],
  1353. 'mac': '30:85:A9:15:0F:03',
  1354. 'type': 'D',
  1355. 'vlan_id': 235},
  1356. {'interfaces': ['9'],
  1357. 'mac': '30:85:A9:AC:3F:A6',
  1358. 'type': 'D',
  1359. 'vlan_id': 235},
  1360. {'interfaces': ['9'],
  1361. 'mac': '30:85:A9:AC:40:17',
  1362. 'type': 'D',
  1363. 'vlan_id': 235},
  1364. {'interfaces': ['9'],
  1365. 'mac': '30:85:A9:AC:44:67',
  1366. 'type': 'D',
  1367. 'vlan_id': 235},
  1368. {'interfaces': ['9'],
  1369. 'mac': '30:85:A9:AC:44:6D',
  1370. 'type': 'D',
  1371. 'vlan_id': 235},
  1372. {'interfaces': ['9'],
  1373. 'mac': '30:85:A9:AC:44:94',
  1374. 'type': 'D',
  1375. 'vlan_id': 235},
  1376. {'interfaces': ['9'],
  1377. 'mac': '30:85:A9:AC:48:D8',
  1378. 'type': 'D',
  1379. 'vlan_id': 235},
  1380. {'interfaces': ['9'],
  1381. 'mac': '30:85:A9:AC:4C:4A',
  1382. 'type': 'D',
  1383. 'vlan_id': 235},
  1384. {'interfaces': ['9'],
  1385. 'mac': '30:85:A9:AC:4C:8C',
  1386. 'type': 'D',
  1387. 'vlan_id': 235},
  1388. {'interfaces': ['9'],
  1389. 'mac': '30:85:A9:AC:4C:8E',
  1390. 'type': 'D',
  1391. 'vlan_id': 235},
  1392. {'interfaces': ['9'],
  1393. 'mac': '30:85:A9:AC:50:A6',
  1394. 'type': 'D',
  1395. 'vlan_id': 235},
  1396. {'interfaces': ['9'],
  1397. 'mac': '30:85:A9:AC:50:FA',
  1398. 'type': 'D',
  1399. 'vlan_id': 235},
  1400. {'interfaces': ['9'],
  1401. 'mac': '30:85:A9:AC:51:15',
  1402. 'type': 'D',
  1403. 'vlan_id': 235},
  1404. {'interfaces': ['9'],
  1405. 'mac': '30:85:A9:AC:51:18',
  1406. 'type': 'D',
  1407. 'vlan_id': 235},
  1408. {'interfaces': ['9'],
  1409. 'mac': '30:85:A9:AC:51:99',
  1410. 'type': 'D',
  1411. 'vlan_id': 235},
  1412. {'interfaces': ['9'],
  1413. 'mac': '30:85:A9:AC:52:1B',
  1414. 'type': 'D',
  1415. 'vlan_id': 235},
  1416. {'interfaces': ['9'],
  1417. 'mac': '38:60:77:C2:80:0C',
  1418. 'type': 'D',
  1419. 'vlan_id': 235},
  1420. {'interfaces': ['9'],
  1421. 'mac': '48:5B:39:D1:D6:19',
  1422. 'type': 'D',
  1423. 'vlan_id': 235},
  1424. {'interfaces': ['9'],
  1425. 'mac': '4C:02:89:00:75:7F',
  1426. 'type': 'D',
  1427. 'vlan_id': 235},
  1428. {'interfaces': ['9'],
  1429. 'mac': '50:46:5D:8A:BC:1C',
  1430. 'type': 'D',
  1431. 'vlan_id': 235},
  1432. {'interfaces': ['9'],
  1433. 'mac': '68:05:CA:01:C2:28',
  1434. 'type': 'D',
  1435. 'vlan_id': 235},
  1436. {'interfaces': ['9'],
  1437. 'mac': '68:05:CA:01:D9:58',
  1438. 'type': 'D',
  1439. 'vlan_id': 235},
  1440. {'interfaces': ['9'],
  1441. 'mac': '68:05:CA:01:D9:DE',
  1442. 'type': 'D',
  1443. 'vlan_id': 235},
  1444. {'interfaces': ['9'],
  1445. 'mac': '68:05:CA:01:DA:20',
  1446. 'type': 'D',
  1447. 'vlan_id': 235},
  1448. {'interfaces': ['9'],
  1449. 'mac': '68:05:CA:01:DC:56',
  1450. 'type': 'D',
  1451. 'vlan_id': 235},
  1452. {'interfaces': ['9'],
  1453. 'mac': '68:05:CA:01:DC:A0',
  1454. 'type': 'D',
  1455. 'vlan_id': 235},
  1456. {'interfaces': ['9'],
  1457. 'mac': '68:05:CA:01:DF:E2',
  1458. 'type': 'D',
  1459. 'vlan_id': 235},
  1460. {'interfaces': ['9'],
  1461. 'mac': '68:05:CA:01:E0:CE',
  1462. 'type': 'D',
  1463. 'vlan_id': 235},
  1464. {'interfaces': ['9'],
  1465. 'mac': '68:05:CA:01:E0:F0',
  1466. 'type': 'D',
  1467. 'vlan_id': 235},
  1468. {'interfaces': ['9'],
  1469. 'mac': '68:05:CA:01:E1:18',
  1470. 'type': 'D',
  1471. 'vlan_id': 235},
  1472. {'interfaces': ['9'],
  1473. 'mac': '68:05:CA:01:E3:64',
  1474. 'type': 'D',
  1475. 'vlan_id': 235},
  1476. {'interfaces': ['9'],
  1477. 'mac': '68:05:CA:01:E3:DA',
  1478. 'type': 'D',
  1479. 'vlan_id': 235},
  1480. {'interfaces': ['9'],
  1481. 'mac': '68:05:CA:01:E4:A0',
  1482. 'type': 'D',
  1483. 'vlan_id': 235},
  1484. {'interfaces': ['9'],
  1485. 'mac': '68:05:CA:01:E4:B0',
  1486. 'type': 'D',
  1487. 'vlan_id': 235},
  1488. {'interfaces': ['9'],
  1489. 'mac': '68:05:CA:02:0C:AA',
  1490. 'type': 'D',
  1491. 'vlan_id': 235},
  1492. {'interfaces': ['9'],
  1493. 'mac': '68:05:CA:02:0C:B8',
  1494. 'type': 'D',
  1495. 'vlan_id': 235},
  1496. {'interfaces': ['9'],
  1497. 'mac': '68:05:CA:08:7B:1E',
  1498. 'type': 'D',
  1499. 'vlan_id': 235},
  1500. {'interfaces': ['9'],
  1501. 'mac': 'BC:5F:F4:00:03:A1',
  1502. 'type': 'D',
  1503. 'vlan_id': 235},
  1504. {'interfaces': ['9'],
  1505. 'mac': 'BC:5F:F4:00:04:28',
  1506. 'type': 'D',
  1507. 'vlan_id': 235},
  1508. {'interfaces': ['9'],
  1509. 'mac': 'C8:9C:DC:53:8C:F2',
  1510. 'type': 'D',
  1511. 'vlan_id': 235},
  1512. {'interfaces': ['9'],
  1513. 'mac': 'FC:75:16:8E:40:81',
  1514. 'type': 'D',
  1515. 'vlan_id': 235},
  1516. {'interfaces': ['9'],
  1517. 'mac': '00:1B:0D:6A:78:91',
  1518. 'type': 'D',
  1519. 'vlan_id': 403},
  1520. {'interfaces': ['9'],
  1521. 'mac': '00:1F:6C:B9:19:C0',
  1522. 'type': 'D',
  1523. 'vlan_id': 403},
  1524. {'interfaces': ['1'],
  1525. 'mac': '00:13:49:D2:25:05',
  1526. 'type': 'D',
  1527. 'vlan_id': 844},
  1528. {'interfaces': ['1'],
  1529. 'mac': '00:13:49:E8:04:85',
  1530. 'type': 'D',
  1531. 'vlan_id': 844},
  1532. {'interfaces': ['9'],
  1533. 'mac': '00:14:2A:9F:76:2D',
  1534. 'type': 'D',
  1535. 'vlan_id': 844},
  1536. {'interfaces': ['2'],
  1537. 'mac': '00:16:36:AB:C7:B6',
  1538. 'type': 'D',
  1539. 'vlan_id': 844},
  1540. {'interfaces': ['9'],
  1541. 'mac': '00:1B:0D:6A:78:91',
  1542. 'type': 'D',
  1543. 'vlan_id': 844},
  1544. {'interfaces': ['9'],
  1545. 'mac': '00:1E:8C:1D:13:0B',
  1546. 'type': 'D',
  1547. 'vlan_id': 844},
  1548. {'interfaces': ['9'],
  1549. 'mac': '00:1F:A4:2B:58:78',
  1550. 'type': 'D',
  1551. 'vlan_id': 844},
  1552. {'interfaces': ['9'],
  1553. 'mac': '00:24:1D:97:4B:34',
  1554. 'type': 'D',
  1555. 'vlan_id': 844},
  1556. {'interfaces': ['9'],
  1557. 'mac': '28:6E:D4:10:52:42',
  1558. 'type': 'D',
  1559. 'vlan_id': 844},
  1560. {'interfaces': ['9'],
  1561. 'mac': '54:04:A6:99:FE:B2',
  1562. 'type': 'D',
  1563. 'vlan_id': 844},
  1564. {'interfaces': ['9'],
  1565. 'mac': 'B4:B3:62:5E:32:40',
  1566. 'type': 'D',
  1567. 'vlan_id': 844},
  1568. {'interfaces': ['9'],
  1569. 'mac': 'D8:6C:E9:62:4A:55',
  1570. 'type': 'D',
  1571. 'vlan_id': 844},
  1572. {'interfaces': ['9'],
  1573. 'mac': 'F0:DE:F1:8A:74:6C',
  1574. 'type': 'D',
  1575. 'vlan_id': 844},
  1576. {'interfaces': ['9'],
  1577. 'mac': '00:0C:85:3A:73:70',
  1578. 'type': 'D',
  1579. 'vlan_id': 2070},
  1580. {'interfaces': ['9'],
  1581. 'mac': '00:10:00:00:00:03',
  1582. 'type': 'D',
  1583. 'vlan_id': 2070},
  1584. {'interfaces': ['9'],
  1585. 'mac': '00:10:00:00:00:04',
  1586. 'type': 'D',
  1587. 'vlan_id': 2070},
  1588. {'interfaces': ['9'],
  1589. 'mac': '00:10:00:00:00:05',
  1590. 'type': 'D',
  1591. 'vlan_id': 2070},
  1592. {'interfaces': ['9'],
  1593. 'mac': '00:10:00:00:00:07',
  1594. 'type': 'D',
  1595. 'vlan_id': 2070},
  1596. {'interfaces': ['9'],
  1597. 'mac': '00:10:00:00:00:38',
  1598. 'type': 'D',
  1599. 'vlan_id': 2070},
  1600. {'interfaces': ['9'],
  1601. 'mac': '00:10:00:00:00:84',
  1602. 'type': 'D',
  1603. 'vlan_id': 2070},
  1604. {'interfaces': ['9'],
  1605. 'mac': '00:10:00:00:00:89',
  1606. 'type': 'D',
  1607. 'vlan_id': 2070},
  1608. {'interfaces': ['9'],
  1609. 'mac': '00:10:00:43:00:01',
  1610. 'type': 'D',
  1611. 'vlan_id': 2070},
  1612. {'interfaces': ['9'],
  1613. 'mac': '00:10:00:52:52:01',
  1614. 'type': 'D',
  1615. 'vlan_id': 2070},
  1616. {'interfaces': ['9'],
  1617. 'mac': '00:18:82:4D:1B:22',
  1618. 'type': 'D',
  1619. 'vlan_id': 2070},
  1620. {'interfaces': ['9'],
  1621. 'mac': '00:1B:0D:6A:78:91',
  1622. 'type': 'D',
  1623. 'vlan_id': 2070},
  1624. {'interfaces': ['9'],
  1625. 'mac': '00:1E:4C:9D:1E:07',
  1626. 'type': 'D',
  1627. 'vlan_id': 2070},
  1628. {'interfaces': ['9'],
  1629. 'mac': '00:1E:58:99:23:AF',
  1630. 'type': 'D',
  1631. 'vlan_id': 2070},
  1632. {'interfaces': ['9'],
  1633. 'mac': '00:20:35:22:3B:DF',
  1634. 'type': 'D',
  1635. 'vlan_id': 2070},
  1636. {'interfaces': ['9'],
  1637. 'mac': '00:25:9E:DC:D5:7E',
  1638. 'type': 'D',
  1639. 'vlan_id': 2070},
  1640. {'interfaces': ['9'],
  1641. 'mac': '08:19:A6:93:18:5C',
  1642. 'type': 'D',
  1643. 'vlan_id': 2070},
  1644. {'interfaces': ['9'],
  1645. 'mac': '08:19:A6:93:18:9E',
  1646. 'type': 'D',
  1647. 'vlan_id': 2070},
  1648. {'interfaces': ['9'],
  1649. 'mac': '08:19:A6:93:1A:CF',
  1650. 'type': 'D',
  1651. 'vlan_id': 2070},
  1652. {'interfaces': ['9'],
  1653. 'mac': '4C:1F:CC:65:CD:2E',
  1654. 'type': 'D',
  1655. 'vlan_id': 2070},
  1656. {'interfaces': ['9'],
  1657. 'mac': '4C:1F:CC:65:CD:68',
  1658. 'type': 'D',
  1659. 'vlan_id': 2070},
  1660. {'interfaces': ['9'],
  1661. 'mac': '4C:1F:CC:66:3F:0A',
  1662. 'type': 'D',
  1663. 'vlan_id': 2070},
  1664. {'interfaces': ['9'],
  1665. 'mac': '4C:1F:CC:67:14:2E',
  1666. 'type': 'D',
  1667. 'vlan_id': 2070},
  1668. {'interfaces': ['9'],
  1669. 'mac': '4C:B1:6C:16:81:28',
  1670. 'type': 'D',
  1671. 'vlan_id': 2070},
  1672. {'interfaces': ['9'],
  1673. 'mac': '4C:B1:6C:D2:71:BF',
  1674. 'type': 'D',
  1675. 'vlan_id': 2070},
  1676. {'interfaces': ['9'],
  1677. 'mac': '4C:B1:6C:D2:74:32',
  1678. 'type': 'D',
  1679. 'vlan_id': 2070},
  1680. {'interfaces': ['9'],
  1681. 'mac': '4C:B1:6C:D2:74:95',
  1682. 'type': 'D',
  1683. 'vlan_id': 2070},
  1684. {'interfaces': ['9'],
  1685. 'mac': '00:1B:0D:6A:78:91',
  1686. 'type': 'D',
  1687. 'vlan_id': 3651}]}
  1688. ------------------------------------------------------------------------
  1689. END OF TRACEBACK
  1690. 2013-05-23 14:45:48,505 [inv.discovery] Rescheduling job mac_discovery(548) to 2013-05-23 14:58:03.485391 status=W
  1691. 2013-05-23 14:45:48,671 [inv.discovery] Running job stp_discovery(core-sw-1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement