Comments (3)
I'm not sure what exactly you are trying to do. I'm assuming that you are retrieving LLDP adjacencies for a given port (fabric PathEp DN). This is my recommendation on how to do it. (There are many ways of doing this)
[iface] = leaf.methods.ResolveClass('lldpIf').GET(**(
options.filter(filters.Eq('lldpIf.portDesc',
'topology/pod-3/paths-1017/pathep-[eth1/23]')) &
options.rspSubtreeClass('lldpAdjEp')))
for adj in iface.lldpAdjEp:
print(f'Adjacency {adj.id} => {adj.sysName}:{adj.portDesc}')
Output
Adjacency 1 => ifav11-n3k-5:Ethernet1/15
from pyaci.
These options are passed on to the server using the URL constructed. Please look at the query filters section in this documentation. IIRC, subtreeClass
is applicable only when you are using it with rspSubtreeFull
or rspSubtreeChildren
. Please turn on logging to see the corresponding REST API requests it is making.
import logging
logging.basicConfig(level=logging.INFO)
logging.getLogger('pyaci').setLevel(logging.DEBUG)
from pyaci.
I see, thanks the logging was also very helpful :)
Like this works
lldp_neighbours = apic.methods.ResolveClass('lldpIf').GET(**options.filter(
filters.Eq('lldpIf.portDesc',path.tDn)) &
options.rspSubtreeChildren & options.subtreeClass('lldpAdjEp,lldpIf'))
Just wondering why I have to add lldpIf
in the subtreeClass as I would think lldpIf
is the root of the tree? But might be how APIC works.
Regardless thanks a lot !!!
EDIT: Figured the above out, I need to use rspSubtreeClass
not subtreeClass
from pyaci.
Related Issues (18)
- Fix unit tests under Python 3 HOT 1
- Provide hint about the requirement of full metadata when PyACI is used without generating the metadata
- Provide an API to configure automatic session token refresh HOT 3
- Provide a mechanism for automatic subscription refresh HOT 2
- rmetagen.py traceback
- ApiOptions.__and__ generates exception in Python3
- Support multiple versions of ACI from the same Python process HOT 1
- Errors with multiple GET requests HOT 2
- Publish PyACI to PyPI HOT 2
- Allow rmetagen.py to be imported and used without arguments HOT 1
- Autopage resolver method exception in Python3
- How to add childern to a MO object? HOT 2
- How to Query ACL Permit and Deny Logs HOT 3
- Unable to get ACL permits/drops in pyaci HOT 2
- insieme.pymit.pyaccess? HOT 1
- Request to support large POST scenario
- Follow your document and it can't work?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyaci.