Skip to content

Update nxos show interface #2112

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 26 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
43fe419
nxos show interface changes
Apr 27, 2025
7ed8bc6
Drop extra blank line in cisco_nxos_show_interface.textfsm
mjbear Apr 27, 2025
2c76203
Swap literal white space for regex
mjbear Apr 27, 2025
30fad29
Regenerate structured test data with new keys
mjbear Apr 27, 2025
e105d46
Fix input/output/CRC compatibility
mjbear Apr 28, 2025
8bc34ef
Change leading whitespace regex
mjbear Apr 28, 2025
11b1ab7
Add regexes for several unmatched lines
mjbear Apr 28, 2025
abcff61
Fix jumbo packet matching in older output
mjbear Apr 28, 2025
1464311
Add more unmatched lines (ucast,mcast,bcast)
mjbear Apr 28, 2025
9180842
Add input/output pkt support for older output
mjbear Apr 28, 2025
a48b91b
Fix bandwidth and packet rates for older output
mjbear Apr 28, 2025
09e41a6
Add unmatched line and finish with Error directive
mjbear Apr 28, 2025
c1ed0ad
added raw file for nxos show interface
Apr 28, 2025
13cf2e7
Move/reduce file, match channel member in output
mjbear Apr 29, 2025
e2ba8e9
added files 5 and 6 that fail
Apr 29, 2025
bdf87d7
added test data 7
Apr 29, 2025
ad746d1
Add support for mgmt0 attributes
mjbear Apr 29, 2025
6ff0f24
added fail tests 7-10
Apr 29, 2025
63a9b6b
Add support for Ha input and vPC status
mjbear Apr 29, 2025
928ee47
updated 9
Apr 29, 2025
56aa577
Add support for port-ch with no members
mjbear Apr 29, 2025
440e2ca
Add support for odd "jumbo pa" vendor typo
mjbear Apr 29, 2025
7b7c7df
added more failures to 9
Apr 29, 2025
f471a46
Add support for loopback stats
mjbear Apr 29, 2025
e74e609
added more data into file 9
Apr 29, 2025
5d9fc80
Add support for Vlan SVI with in|output: syntax
mjbear Apr 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 85 additions & 4 deletions ntc_templates/templates/cisco_nxos_show_interface.textfsm
Original file line number Diff line number Diff line change
Expand Up @@ -25,23 +25,104 @@ Value PACKET_OUTPUT_RATE (.+?)
Value BANDWIDTH_INPUT_RATE (.+?)
Value BANDWIDTH_OUTPUT_RATE (.+?)
Value MEDIA_TYPE (.+?)
# RX
Value RX_SHORT_FRAME (\d+)
Value RX_OVERRUN (\d+)
Value RX_UNDERRUN (\d+)
Value RX_IGNORED (\d+)
Value RX_WATCHDOG (\d+)
Value RX_BAD_ETYPE_DROP (\d+)
Value RX_BAD_PROTO_DROP (\d+)
Value RX_IF_DOWN_DROP (\d+)
Value RX_DRIBBLE (\d+)
Value RX_INPUT_DISCARD (\d+)
Value RX_PAUSE (\d+)
Value RX_STOMPED_CRC (\d+)
Value RX_JUMBO_PACKETS (\d+)
Value RX_STORM_SUPPRESSION_BYTES (\d+)
Value RX_RUNTS (\d+)
Value RX_GIANTS (\d+)
Value RX_CRC (\d+)
Value RX_NO_BUFFER (\d+)
# TX
Value TX_JUMBO_PACKETS (\d+)
Value TX_COLLISIONS (\d+)
Value TX_DEFERRED (\d+)
Value TX_LATE_COLLISIONS (\d+)
Value TX_LOST_CARRIER (\d+)
Value TX_NO_CARRIER (\d+)
Value TX_BABBLE (\d+)
Value TX_OUTPUT_DISCARD (\d+)
Value TX_PAUSE (\d+)

Start
^\S+\s+is.+ -> Continue.Record
^${INTERFACE}\s+is\s+${LINK_STATUS},\sline\sprotocol\sis\s${ADMIN_STATE}$$
^${INTERFACE}\s+is\s+${LINK_STATUS}$$
^admin\s+state\s+is\s+${ADMIN_STATE},
^admin\s+state\s+is\s+${ADMIN_STATE}
^\s+Hardware(:|\s+is)\s+${HARDWARE_TYPE},\s+address(:|\s+is)\s+${MAC_ADDRESS}(.*bia\s+${BIA})*
^\s+Hardware(:|\s+is)\s+${HARDWARE_TYPE}
^\s+Description:\s+${DESCRIPTION}\s*$$
^\s+Internet\s+Address\s+is\s+${IP_ADDRESS}\/${PREFIX_LENGTH}
^\s+Port\s+mode\s+is\s+${MODE}
^\s+${DUPLEX}, ${SPEED}(,\s+media\s+type\s+is\s+${MEDIA_TYPE})?\s*$$
^\s+MTU\s+${MTU}.*BW\s+${BANDWIDTH}.*DLY\s+${DELAY}
^\s+Encapsulation\s+${ENCAPSULATION}(,)?(\s+Virtual\s+LAN,\s+Vlan\s+ID\s+${VLAN_ID},)?
^\s+${INPUT_PACKETS}\s+input\s+packets\s+\d+\s+bytes\s*$$
^\s+${INPUT_ERRORS}\s+input\s+error\s+\d+\s+short\s+frame\s+\d+\s+overrun\s+\d+\s+underrun\s+\d+\s+ignored\s*$$
^\s+${OUTPUT_PACKETS}\s+output\s+packets\s+\d+\s+bytes\s*$$
^\s+${OUTPUT_ERRORS}\s+output\s+error\s+\d+\s+collision\s+\d+\s+deferred\s+\d+\s+late\s+collision\s*$$
^\s+${INPUT_PACKETS}\s+input\s+packets(\s+\d+\s+(unicast|multicast)+\s+packets){2}\s*$$
^\s+${OUTPUT_PACKETS}\s+output\s+packets(\s+\d+\s+(unicast|multicast)+\s+packets){2}\s*$$
^\s+${INPUT_PACKETS}\s+packets\s+input\s+\d+\s+bytes\s*$$
^\s+${OUTPUT_PACKETS}\s+packets\s+output\s+\d+\s+bytes\s+${RX_UNDERRUN}\s+underruns\s*$$
^\s+input:\s+${INPUT_PACKETS}\s+pkts,\s+\d+\s+bytes\s+-\s+output:\s+${OUTPUT_PACKETS}\s+pkts,\s+\d+\s+bytes\s*$$
^\s+Last\s+link\s+flapped\s+${LAST_LINK_FLAPPED}\s*$$
^\s+\d+\s+seconds\s+input\s+rate\s+${BANDWIDTH_INPUT_RATE}\s+bits/sec,\s+${PACKET_INPUT_RATE}\s+packets/sec
^\s+\d+\s+seconds\s+output\s+rate\s+${BANDWIDTH_OUTPUT_RATE}\s+bits/sec,\s+${PACKET_OUTPUT_RATE}\s+packets/sec
^\s+\d+\s+(second|minute)s?\s+input\s+rate\s+${BANDWIDTH_INPUT_RATE}\s+bits/sec,\s+${PACKET_INPUT_RATE}\s+packets/sec
^\s+\d+\s+(second|minute)s?\s+output\s+rate\s+${BANDWIDTH_OUTPUT_RATE}\s+bits/sec,\s+${PACKET_OUTPUT_RATE}\s+packets/sec
# RX
^\s+${INPUT_ERRORS}\s+input\s+errors?\s+${RX_SHORT_FRAME}\s+short\s+frame\s+${RX_OVERRUN}\s+overrun\s+${RX_UNDERRUN}\s+underrun\s+${RX_IGNORED}\s+ignored\s*$$
^\s+${INPUT_ERRORS}\s+input\s+errors\s+${RX_SHORT_FRAME}\s+frame\s+${RX_OVERRUN}\s+overrun\s+\d+\s+fifo\s*$$
^\s+${RX_WATCHDOG}\s+watchdog\s+${RX_BAD_ETYPE_DROP}\s+bad\s+etype\s+drop\s+${RX_BAD_PROTO_DROP}\s+bad\s+proto\s+drop\s+${RX_IF_DOWN_DROP}\s+if\s+down\s+drop\s*$$
^\s+${RX_DRIBBLE}\s+input\s+with\s+dribble\s+${RX_INPUT_DISCARD}\s+input\s+discard\s*$$
^\s+${RX_PAUSE}\s+Rx\s+pause\s*$$
^\s+${RX_STOMPED_CRC}\s+Stomped\s+CRC\s*$$
^\s+${RX_JUMBO_PACKETS}\s+jumbo\s+packets\s+${RX_STORM_SUPPRESSION_BYTES}\s+storm\s+suppression\s+bytes\s*$$
^\s+${RX_JUMBO_PACKETS}\s+jumbo\s+packets\s+\d+\s+storm\s+suppression\s+packets\s*$$
^\s+${RX_JUMBO_PACKETS}\s+jumbo\s+pa(ckets)?\s+Encapsulation\s+\S+,\s+medium\s+is\s+\S+
^\s+${RX_RUNTS}\s+runts\s+${RX_GIANTS}\s+giants\s+${RX_CRC}\s+CRC(/FCS)?\s+${RX_NO_BUFFER}\s+no\s+buffer\s*$$
# TX
^\s+${TX_JUMBO_PACKETS}\s+jumbo\s+packets\s*$$
^\s+${OUTPUT_ERRORS}\s+output\s+errors?\s+${TX_COLLISIONS}\s+collision\s+${TX_DEFERRED}\s+deferred\s+${TX_LATE_COLLISIONS}\s+late\s+collision\s*$$
^\s+${OUTPUT_ERRORS}\s+output\s+errors\s+${TX_COLLISIONS}\s+collisions\s+\d+\s+fifo\s*$$
^\s+${TX_LOST_CARRIER}\s+lost\s+carrier\s+${TX_NO_CARRIER}\s+no\s+carrier\s+${TX_BABBLE}\s+babble\s+${TX_OUTPUT_DISCARD}\s+output\s+discard\s*$$
^\s+${TX_PAUSE}\s+Tx\s+pause\s*$$
# Unmatched
^\s+reliability\s+\d+/\d+,\s+txload\s+\d+/\d+,\s+rxload\s+\d+/\d+\s*$$
^\s+Auto-(mdix|Negotiation)\s+is\s+
^\s+(Beacon|EtherType|Rate\s+mode|Switchport\s+monitor)\s+is\s+
^\s+Input\s+flow-control\s+is\s+\S+,\s+output\s+flow-control\s+is\s+\S+\s*$$
^\s+EEE\s+\(efficient-ethernet\)\s+
^\s+Last\s+clearing\s+of\s+"show\s+interface"\s+counters\s+
^\s+\d+\s+interface\s+resets\s*$$
^\s+Load-Interval\s+
^\s+L3\s+((in|out)\s+)?Switched:\s*$$
^\s+[RT][Xx]\s*$$
^\s+Dedicated\s+Interface\s*$$
^\s+Belongs\s+to\s+
^\s+admin\s+fec\s+state\s+is\s+\S+,\s+oper\s+fec\s+state\s+is\s+\S+\s*$$
^\s+Keepalive\s+
^\s+ARP\s+type:\s+\S+\s*$$
^\s+\d+\s+broadcast\s+packets\s+\d+\s+bytes\s*$$
^\s+ucast:\s+\d+\s+pkts,\s+\d+\s+bytes(\s+-\s+mcast:\s+\d+\s+pkts,\s+\d+\s+bytes)?\s*$$
^\s+\d+\s+unicast\s+packets\s+\d+\s+multicast\s+packets\s+\d+\s+broadcast\s+packets\s*$$
^\s+(Ha\s+)?input\s+rate\s+\S+\s+\w?bps,\s+\S+\s+\w?pps;\s+output\s+rate\s+\S+\s+\w?bps,\s+\S+\s+\w?pps\s*$$
^\s+Members\s+in\s+this\s+channel:\s+
^\s+No\s+members
^\s+Management\s+transceiver:
^\s+Active\s+connector:
^\s+Configured\s+Media-type:
^\s+vPC\s+Status:\s+\S+,\s+vPC\s+number:\s+\d+
^\s+Input\s+flow-control\s+is\s+\S+,\s+Port\s+mode\s+is\s+\S+\s*$$
^\s+\d+\s+multicast\s+frames\s+\d+\s+compressed\s*$$
^\s+\d+\s+out_carrier_errors\s*$$
^. -> Error
93 changes: 87 additions & 6 deletions tests/cisco_nxos/show_interface/cisco_nxos_show_interface.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,20 +25,47 @@ parsed_sample:
packet_input_rate: ""
packet_output_rate: ""
prefix_length: "24"
rx_bad_etype_drop: ""
rx_bad_proto_drop: ""
rx_crc: ""
rx_dribble: ""
rx_giants: ""
rx_if_down_drop: ""
rx_ignored: ""
rx_input_discard: ""
rx_jumbo_packets: ""
rx_no_buffer: ""
rx_overrun: ""
rx_pause: ""
rx_runts: ""
rx_short_frame: ""
rx_stomped_crc: ""
rx_storm_suppression_bytes: ""
rx_underrun: ""
rx_watchdog: ""
speed: ""
tx_babble: ""
tx_collisions: ""
tx_deferred: ""
tx_jumbo_packets: ""
tx_late_collisions: ""
tx_lost_carrier: ""
tx_no_carrier: ""
tx_output_discard: ""
tx_pause: ""
vlan_id: ""
- admin_state: "up"
bandwidth: "100000 Kbit"
bandwidth_input_rate: ""
bandwidth_output_rate: ""
bandwidth_input_rate: "744"
bandwidth_output_rate: "1608"
bia: "5087.89a1.d8ce"
delay: "10 usec"
description: "out of band mgmt interface"
duplex: "full-duplex"
encapsulation: "ARPA"
hardware_type: "GigabitEthernet"
input_errors: ""
input_packets: ""
input_packets: "3093618"
interface: "mgmt0"
ip_address: "10.1.100.21"
last_link_flapped: ""
Expand All @@ -48,11 +75,38 @@ parsed_sample:
mode: ""
mtu: "1500"
output_errors: ""
output_packets: ""
packet_input_rate: ""
packet_output_rate: ""
output_packets: "394746"
packet_input_rate: "0"
packet_output_rate: "0"
prefix_length: "24"
rx_bad_etype_drop: ""
rx_bad_proto_drop: ""
rx_crc: ""
rx_dribble: ""
rx_giants: ""
rx_if_down_drop: ""
rx_ignored: ""
rx_input_discard: ""
rx_jumbo_packets: ""
rx_no_buffer: ""
rx_overrun: ""
rx_pause: ""
rx_runts: ""
rx_short_frame: ""
rx_stomped_crc: ""
rx_storm_suppression_bytes: ""
rx_underrun: ""
rx_watchdog: ""
speed: "100 Mb/s"
tx_babble: ""
tx_collisions: ""
tx_deferred: ""
tx_jumbo_packets: ""
tx_late_collisions: ""
tx_lost_carrier: ""
tx_no_carrier: ""
tx_output_discard: ""
tx_pause: ""
vlan_id: ""
- admin_state: "up"
bandwidth: "10000000 Kbit"
Expand All @@ -79,5 +133,32 @@ parsed_sample:
packet_input_rate: "0"
packet_output_rate: "0"
prefix_length: ""
rx_bad_etype_drop: "0"
rx_bad_proto_drop: "0"
rx_crc: "0"
rx_dribble: "0"
rx_giants: "0"
rx_if_down_drop: "0"
rx_ignored: "0"
rx_input_discard: "0"
rx_jumbo_packets: "0"
rx_no_buffer: "0"
rx_overrun: "0"
rx_pause: "0"
rx_runts: "0"
rx_short_frame: "0"
rx_stomped_crc: ""
rx_storm_suppression_bytes: ""
rx_underrun: "0"
rx_watchdog: "0"
speed: "10 Gb/s"
tx_babble: "0"
tx_collisions: "0"
tx_deferred: "0"
tx_jumbo_packets: "0"
tx_late_collisions: "0"
tx_lost_carrier: "0"
tx_no_carrier: "0"
tx_output_discard: "0"
tx_pause: "0"
vlan_id: ""
Loading