genieparser icon indicating copy to clipboard operation
genieparser copied to clipboard

[NXOS] "show interface status" parser is very broken in v23.11 release

Open ChristopherJHart opened this issue 2 years ago • 5 comments

The recent v23.11 release of Genie parsers made some major changes to the show interface status parser that fails to parse any interfaces on Nexus 9000 switches that are not in a connected status.

Example output:

switch# show interface
--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
mgmt0         --                 connected routed    full    1000    --         

--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
Eth1/1        --                 connected trunk     full    1000    1000base-T 
Eth1/2        --                 connected trunk     full    1000    1000base-T 
Eth1/3        --                 notconnec trunk     auto    auto    1000base-SX
Eth1/4        --                 notconnec trunk     auto    auto    1000base-LH
Eth1/5        --                 xcvrAbsen trunk     auto    auto    --         
Eth1/6        --                 xcvrAbsen trunk     auto    auto    --         
Eth1/7        --                 xcvrAbsen trunk     auto    auto    --         
Eth1/8        --                 xcvrAbsen trunk     auto    auto    --         
Eth1/9        --                 xcvrAbsen trunk     auto    auto    --         
Eth1/10       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/11       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/12       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/13       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/14       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/15       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/16       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/17       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/18       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/19       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/20       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/21       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/22       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/23       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/24       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/25       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/26       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/27       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/28       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/29       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/30       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/31       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/32       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/33       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/34       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/35       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/36       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/37       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/38       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/39       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/40       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/41       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/42       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/43       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/44       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/45       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/46       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/47       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/48       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/49       connected-to-switc connected routed    full    40G     QSFP-40G-SR-BD
Eth1/50       connected-to-switc connected routed    full    40G     QSFP-40G-SR-BD
Eth1/51       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/52       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/53       --                 xcvrAbsen trunk     auto    auto    --         
Eth1/54       --                 xcvrAbsen trunk     auto    auto    --         

--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
Po1           --                 connected trunk     full    1000    --         
Po2           --                 noOperMem trunk     auto    auto    --         
Po500         "vpc-peer-link vas connected trunk     auto    auto    --         

--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
Lo0           Routing loopback i connected routed    auto    auto    --         
Lo1           VTEP loopback inte connected routed    auto    auto    --         
Lo11          --                 connected routed    auto    auto    --         
Lo12          --                 connected routed    auto    auto    --         

--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
Vlan1         --                 down      routed    auto    auto    --
Vlan2000      --                 connected routed    auto    auto    --
Vlan2001      --                 connected routed    auto    auto    --
Vlan2401      --                 connected routed    auto    auto    --
Vlan2402      --                 connected routed    auto    auto    --
Vlan2501      --                 connected routed    auto    auto    --
Vlan2502      --                 connected routed    auto    auto    --

--------------------------------------------------------------------------------
Port          Name               Status    Vlan      Duplex  Speed   Type
--------------------------------------------------------------------------------
nve1          --                 connected --        auto    auto    --         

Resulting parsed data from this output:

{
  "interfaces": {
    "mgmt0": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "full",
      "port_speed": "1000",
      "type": "--"
    },
    "Ethernet1/1": {
      "name": "--",
      "status": "connected",
      "vlan": "trunk",
      "duplex_code": "full",
      "port_speed": "1000",
      "type": "1000base-T"
    },
    "Ethernet1/2": {
      "name": "--",
      "status": "connected",
      "vlan": "trunk",
      "duplex_code": "full",
      "port_speed": "1000",
      "type": "1000base-T"
    },
    "Ethernet1/49": {
      "name": "connected-to-switc",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "full",
      "port_speed": "40G",
      "type": "QSFP-40G-SR-BD"
    },
    "Ethernet1/50": {
      "name": "connected-to-switc",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "full",
      "port_speed": "40G",
      "type": "QSFP-40G-SR-BD"
    },
    "Port-channel1": {
      "name": "--",
      "status": "connected",
      "vlan": "trunk",
      "duplex_code": "full",
      "port_speed": "1000",
      "type": "--"
    },
    "Port-channel2": {
      "name": "--",
      "status": "noOperMem",
      "vlan": "trunk",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Loopback0": {
      "name": "Routing loopback i",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Loopback1": {
      "name": "VTEP loopback inte",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Loopback11": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Loopback12": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2000": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2001": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2401": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2402": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2501": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Vlan2502": {
      "name": "--",
      "status": "connected",
      "vlan": "routed",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    },
    "Nve1": {
      "name": "--",
      "status": "connected",
      "vlan": "--",
      "duplex_code": "auto",
      "port_speed": "auto",
      "type": "--"
    }
  }
}

This issue is not present in v23.10 of Genie parsers.

ChristopherJHart avatar Dec 18 '23 13:12 ChristopherJHart

Hi @ChristopherJHart ,

Thank you for letting us know. Kindly give me some time to check this issue.

Thank you.

ParimiNeeraja avatar Jan 05 '24 11:01 ParimiNeeraja

Hi @ParimiNeeraja - just FYI, this issue has already been fixed through the internal repository via PR #3023. Just needs to be merged :)

ChristopherJHart avatar Jan 05 '24 11:01 ChristopherJHart

Hi @ChristopherJHart , Can you please share me the PR link.

ParimiNeeraja avatar Jan 05 '24 11:01 ParimiNeeraja

@ParimiNeeraja I pinged you a link internally on Webex. Thanks!

ChristopherJHart avatar Jan 05 '24 12:01 ChristopherJHart

Hi @ChristopherJHart , The PR got merged.

ParimiNeeraja avatar Jan 11 '24 04:01 ParimiNeeraja

Closing this issue, as it was resolved internally.

ChristopherJHart avatar Apr 05 '24 22:04 ChristopherJHart