Level up on your Automation with NetBrain!
Hello I am trying to build a Qapp that runs 2 CLI cmd, one to pull the P2P IPs on the link between 2 nodes in canvas 1 and then second to run the ping on the those P2P IP variables from canvas1. First parser in canvas1 below is getting all the local p2p IP and then I am using script to create p2p IP for neighboring node. I am able to get all the required variables (ipv4_peer and intf) here with no issues.sh ip int bri | e "down|Down" | e unassigned Second parser below should be using the canvas1 variables to get the ping results but it’s not showing me the intended results.ping $ipv4_peer source $intfMy end goal is running a DVT/Qapp on the map to show latency/ping delay on the links between 2 nodes. Not sure if there is an easier method available for this. Please advise.Thanks in advance.
I am trying to understand how to use the getInterfaceProperty. I have a QAPP and wanted to input the description of an interface in one cells. The requirements are below. if I wanted to get the Descr for an interface but the interface is coming from the qapp how would the code go?$cell = getInterfaceProperty(‘Descr’,$_device,$intf,infs) ? I get no results and been trying to plug in the information with no change. Any suggestions?
Greetings, How can I get the One-IP List using python script? I couldn’t find a built-in function for it. I am not trying to use the API method. My ultimate goal is to retrieve the DeviceObject (DNS/Hostname and IP Address) of EndPoints connected to Access Switch Interfaces. I have the MAC Addresses of connected Endpoints, but there isn’t any built-in function to my knowledge to retrieve the DeviceObject by MAC Adddress. Using the ARP Table is not really feasible because I would first have to Find the Gateway Router, get the contents of the ARP Table and then do the mapping. The Interface Report Table from the Qapp inlcudes the fields DNSName and IPAddress, but unfortunately does not output it. Any help is appreciated! Best Regards, DaveDaMan
I am having issue creating a parser for NXOS radius groups. We recently migrated from one set of radius servers to another. I would like to be able to parse the AAA groups and pull out the group name, servers part of the group, and any particular settings. aaa group server radius radius server 10.1.2.3 server 10.1.2.4 deadtime 0 use-vrf default no source-interfaceaaa group server radius Active-AAA server 10.2.3.4 server 10.2.3.5 deadtime 0 use-vrf default source-interface mgmt0Seems like no matter what I do the parser will only pull first svr configured.
Hi,I’m trying to understand the scripting environment a bit more for qApps and have a few questions. For a table driven canvas I can pass one of table column values as a parameter to a parser. Is it possible to pass any other types of variables to a parser, say from another script? If so, how do you make it so that the variable is in scope for the parser Is it possible to access those table columns from a table driven canvas in scripts attached to a following table? If so, what’s the syntax you need to use? What is the Variable Mapping option in the Run Options dialog used for?Many thanks in advance… Regards,Andy
Greetings, I just ran into an interesting problem: In Qapp, when I script a GDT Variable to check if a another GDT Table or Table Variable is empty, it does not work using pythonic way. How can I get to check if a Table Attribute (list) is empty or not without coming up with other creative solutions? Basically, the Attribute (list) or Table appears to never be empty despite containing no data. BID Table has _device, id and mac_limit attributes.GDT Table has attribute “note” that I use for scripting.When I check if BID Table (list) or BID.bid attribute (list) is empty is doesn’t return true for empty using pythonic way:#Check if BID.bid (list) is empty:if not $BID.bid: $cell = “PASSED: Bridge-Domains are not configured”. Although empty, it doesn’t match and continues to go through next else statement: The value returned is “None”. In the note, I run the following script:try: if $mpls_ldp is None: $cell = "NOT APPLICABLE: Device is not a PE Device." else: if not $BID
Hello, I am trying to create a Qapp that runs a CLI command with arguments/variables based on output of the first CLI command. Requirement: First CLI Command, get all Cisco IP BGP neighbors: show ip bgp neighbors one of the key variables, $bgp_neighbors, from the output contains the IP Address of the IP BGP Neighbor With the Cisco IP BGP Neighbors Table output, run a second CLI Command (Second Canvas) that runs a second CLI Command with a variable/argument $bgp_neighbors: show ip bgp neighbors $bgp_neighor advertised-route How can that be accomplished?Thanks in advance for your help!
Greetings, I need help with a Qapp on how rerieve the current Row Number of cell from a GDT/DDT. How is it possible using python in a custom variable column? I am creating a Cisco IP BGP Table from CLI Command “Show IP BGP”. Due to poor table output formatting, the Network and Next_Hop items overlap so that two rows are required for a single entry.As a result, in Qapp DDT or GDT the value for “network” (when too large and containing CIDR notation) is displayed in the “Next_Hop” column instead with not all other fields blank, while creating another row below containing all other columns values but a blank field in the Network Column.To fix that problem, I want to create a custom variable field that populates the correct Network Address by:finding current row position of cell retrieving the value of the Next_Hop field one row above current row positionAny help or pointers are appreciated. Best Regards, Dave
I am new to netbrainsI am looking for reference solutions for following use cases.Execute CLI commands using netbrains API Execute run book using netbrains API Create map and export map using netbrains APII tried by following documentation but could not succeed.for use case “Execute run book using netbrains API” followed instructions from link Adding API-Triggered Tasks in NetBrain (netbraintech.com) but after creating stub and testing seeing an error
Hello everyone, we just got our Netbrain setup with API access to Meraki and Velocloud via a proxy server. I was wondering if there was a repository for parser files for API calls outside of the built in parser files. The parser file setup for API is a bit different than the other types of parser files and I am looking for more examples. Also, if there is a repository parser files to avoid the re-inventing the wheel scenario that would be great.
Do you have any device health check qapps? If not, how about this idea: check device hardware with various commands, e.g. Cisco's show module, show environmentshow moduleMod Ports Card Type Model Serial No.--- ----- -------------------------------------- ------------------ ----------- 4 48 48-port 10/100/1000 RJ45 EtherModule WS-X6148A-GE-TX x 5 5 Supervisor Engine 2T 10GE w/ CTS (Acti VS-SUP2T-10G xMod MAC addresses Hw Fw Sw Status--- ---------------------------------- ------ ------------ ------------ ------- 4 f 4.2 8.4(1) 15.5(1)SY8 Ok 5 d 1.3 12.2(50r)SYS 15.5(1)SY8 MajFailMod Sub-Module Model Serial Hw Status ---- --------------------------- ------------------ ----------- ------- ------- 5 Policy Feature Card 4 VS-F6K-PFC4 SAL16159W6L 1.
I have been dabbling with the Qapp Python scripting lately and i want to build a qapp wherein the user can have multiple end device ips as input and have their L2 connected switch and L3 Gateways automatically drawn on the map using one-ip-table information. However, looks like the gateways cannot be resolved by one ip table that’s why it is not being drawn. Then i noticed when the end device is drawn, i am able to see the L3 neighbor by extending the plus sign. Is there a Qapp API or a combination of them that can see the L3 neighbor? Or is there a better way to achieve this? Thank you! import PyDataModeloutput = GetOneIpTableItem($Input1.IP,"","","")output has no entry for gw.
Greetings, How do use alternation when I use regex in Parser Configuration? I want to find all standard and extendend ACLs:regex[$acl]:^ip access-list extended|standard (\S+) The below command works, but I am trying to get it to work with regex:ip access-list $_dummy(extended|standard) $acl CheersDave
Greetings,I am new to NetBrain. I am currently learning how to write Parsers and Qapps. I am running into a problem with my Qapp. I am not getting the desired result when I run my Qapp against any current Baseline (Configuration) or Live Data. I am getting the following messages in the execution log: 1 3:59:15 PM: Start to run Qapp "Cisco_IOS_XE_Switch_Compliance_Check"2 3:59:22 PM: Run Qapp on 0 device group(s), 0 site(s), 0 path(s), xxx device(s)3 3:59:22 PM: Run Qapp on xxx qualified devices4 3:59:22 PM: The Process Id is 243123.5 3:59:23 PM: No data for "NET_DEVICE_1337 + Cisco_IOS_XE_Switch_Compliance_Check". The historical data of the device and parser does not exist in the database. What am I missing? Best Regards Dave
Hello, I would like to know if it is possible to record and compare the differences in route tables over time for any router on our WAN. We use BGP so not sure if that makes any differnce as it should be just a show command and output of text from the CLI. I want to have a way to look back to see what changed on the device config (if at all) and the state of the live RIB vs the last saved/benchmarked RIB. If any of this is even possible could it be done as part of a scheduled task and some sort of alert to notify that something has changed? Thanks in advance.
Hi,Recently we have developed some Qapps to do different things, like analysing BGP parameters in our routers and firewalls.We have found a problem when we’ve tried to upload the final CSV to a SFTP server. Netbrain allows me natively to upload the CSV to a SMB server, but I haven’t found the way to do it via SFTP.The only way to do it is via programmed plugin, but it keeps your SFTP user/pass exposed, which is not desirable.Has anyone resolved this issue? Thanks!!Juan
Login to the community
No account yet? Create an account
Sign in with SSOLogin via NetBrain University
Enter your username or e-mail address. We'll send you an e-mail with instructions to reset your password.
Facebook | Instagram | Youtube | Twitter | LinkedIn
Privacy & Security Statement | Terms & Conditions | Impressum | UK Modern Slavery Statement