Skip to content
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

arista_eos_show_interfaces_status.template does not deal with disabled ports properly #460

Closed
centove opened this issue Aug 28, 2019 · 0 comments · Fixed by #488
Closed

Comments

@centove
Copy link

centove commented Aug 28, 2019

ISSUE TYPE
  • Bug Report
TEMPLATE USING

Value PORT (\S+)
Value NAME (.+?)
Value STATUS (connected|notconnect|inactive|errdisabled)
Value VLAN (\S+)
Value DUPLEX (\S+)
Value SPEED (\S+)
Value TYPE (\S+)

Start
^${PORT}\s+${NAME}\s+${STATUS}\s+${VLAN}\s+${DUPLEX}\s+${SPEED}\s+${TYPE} -> Record
^${PORT}\s+${STATUS}\s+${VLAN}\s+${DUPLEX}\s+${SPEED}\s+${TYPE} -> Record

SAMPLE COMMAND OUTPUT

Port Name Status Vlan Duplex Speed Type
Et1 Cust: (SERV-22119 disabled 1 auto auto 1000BASE-T
Et2 Cust: (SERV-22120 disabled 1 auto auto 1000BASE-T
Et3 Cust: (SERV-22118 disabled 1 auto auto 1000BASE-T
Et4 Cust: (SERV-22121 disabled 1 auto auto 1000BASE-T
Et5 Cust: (SERV-22117 disabled 1 auto auto 1000BASE-T
Et6 Cust: (SERV-22122 disabled 1 auto auto 1000BASE-T
Et7 Cust: SERV-22379 connected 1 a-full a-1G 1000BASE-T
Et8 Cust: (SERV-22123 disabled 1 auto auto 1000BASE-T
Et9 Cust: SERV-14824 connected 106 a-full a-1G 1000BASE-T
Et10 Cust: (SERV-22124 disabled 1 auto auto 1000BASE-T
Et11 Cust: SERV-14823 connected 106 a-full a-1G 1000BASE-T
Et12 Cust: (SERV-22125 disabled 1 auto auto 1000BASE-T
Et13 Cust: SERV-14822 connected 106 a-full a-1G 1000BASE-T
Et14 Cust: (SERV-22126 disabled 1 auto auto 1000BASE-T
Et15 Cust: SERV-14821 notconnect 1 auto auto 1000BASE-T
Et16 Cust: (SERV-22127 disabled 1 auto auto 1000BASE-T
Et17 Cust: SERV-14820 notconnect 1 auto auto 1000BASE-T
Et18 Cust: (SERV-22128 disabled 1 auto auto 1000BASE-T
Et19 Cust: SERV-14819 notconnect 1 auto auto 1000BASE-T
Et20 Cust: (SERV-22129 disabled 1 auto auto 1000BASE-T
Et21 Cust: SERV-14818 notconnect 1 auto auto 1000BASE-T
Et22 Cust: (SERV-22130 disabled 1 auto auto 1000BASE-T
Et23 Cust: SERV-14817 connected 126 a-full a-1G 1000BASE-T
Et24 Cust: (SERV-22131 disabled 1 auto auto 1000BASE-T
Et25 Cust: SERV-14816 notconnect 1 auto auto 1000BASE-T
Et26 Cust: (SERV-22132 disabled 1 auto auto 1000BASE-T
Et27 Cust: SERV-14815 notconnect 1 auto auto 1000BASE-T
Et28 Cust: (SERV-22133 disabled 1 auto auto 1000BASE-T
Et29 disabled 1 auto auto 1000BASE-T
Et30 Cust: (SERV-22134 disabled 1 auto auto 1000BASE-T
Et31 disabled 1 auto auto 1000BASE-T
Et32 Cust: (SERV-22135 disabled 1 auto auto 1000BASE-T
Et33 disabled 1 auto auto 1000BASE-T
Et34 Cust: (SERV-22136 disabled 1 auto auto 1000BASE-T
Et35 disabled 1 auto auto 1000BASE-T
Et36 disabled 1 auto auto 1000BASE-T
Et37 disabled 1 auto auto 1000BASE-T
Et38 disabled 1 auto auto 1000BASE-T
Et39 disabled 1 auto auto 1000BASE-T
Et40 disabled 1 auto auto 1000BASE-T
Et41 disabled 1 auto auto 1000BASE-T
Et42 disabled 1 auto auto 1000BASE-T
Et43 disabled 1 auto auto 1000BASE-T
Et44 disabled 1 auto auto 1000BASE-T
Et45 disabled 1 auto auto 1000BASE-T
Et46 disabled 1 auto auto 1000BASE-T
Et47 disabled 1 auto auto 1000BASE-T
Et48 disabled 1 auto auto 1000BASE-T
Et49 Core: dr01.lon01 connected in Po49 full 10G 10GBASE-SR
Et50 Core: dr02.lon01 connected in Po49 full 10G 10GBASE-SR
Et51 Core: drXX.LOC () notconnect in Po49 full 10G Not Present
Et52 Core: drXX.LOC () notconnect in Po49 full 10G Not Present
Ma1 notconnect routed a-half a-10M 10/100/1000
Po49 Core: dr01-02.lon connected trunk full 20G N/A

SUMMARY

There is actually two issues here, the description we use breaks the template as well but using the same name pattern as the ios template uses corrects that. If a port is in the disabled state (shutdown) the template will not parse it.

STEPS TO REPRODUCE

Login to an arista, shutdown a port, do a 'show interfaces status' and parse the result with the above template, observe that the disabled port(s) are not in the resulting dictionary list.

EXPECTED RESULTS

all the ports parsed.

ACTUAL RESULTS

only the ports in the 'connected|notconnect|inactive|errdisabled' are displayed. adding |disabled corrects this as well as changing the NAME to (.+?) fixes both issues.

targuan added a commit to targuan/ntc-templates that referenced this issue Oct 9, 2019
Disabled port where not matched
Name starting or ending with word character where not matched
targuan added a commit to targuan/ntc-templates that referenced this issue Oct 9, 2019
Disabled port were not matched
Name starting or ending with word character were not matched
targuan added a commit to targuan/ntc-templates that referenced this issue Oct 9, 2019
Disabled port were not matched
Name starting or ending with word character were not matched
@targuan targuan mentioned this issue Oct 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants