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

Show interface status does not work with portchannels #6520

Closed
d-dashkov opened this issue Jan 21, 2021 · 2 comments · Fixed by sonic-net/sonic-utilities#1376
Closed

Show interface status does not work with portchannels #6520

d-dashkov opened this issue Jan 21, 2021 · 2 comments · Fixed by sonic-net/sonic-utilities#1376

Comments

@d-dashkov
Copy link
Contributor

Description

Adding portchannels breaks the script for showing interface status

Steps to reproduce the issue:

  1. Create portchannel
    $ sudo config portchannel add PortChannel0011
  2. Execute interface status command
    $ show int status

Describe the results you received:

Traceback (most recent call last):
  File "/usr/local/bin/intfutil", line 521, in <module>
    main()
  File "/usr/local/bin/intfutil", line 513, in main
    interface_stat.display_intf_status()
  File "/usr/local/bin/intfutil", line 354, in display_intf_status
    self.get_intf_status()
  File "/usr/local/lib/python3.7/dist-packages/utilities_common/multi_asic.py", line 137, in wrapped_run_on_all_asics
    func(self,  *args, **kwargs)
  File "/usr/local/bin/intfutil", line 435, in get_intf_status
    self.portchannel_speed_dict = po_speed_dict(self.po_int_dict, self.db)
  File "/usr/local/bin/intfutil", line 249, in po_speed_dict
    interface_speed = '{}G'.format(interface_speed[:-3])
TypeError: 'NoneType' object is not subscriptable

Describe the results you expected:

      Interface            Lanes    Speed    MTU    FEC    Alias             Vlan    Oper    Admin            Type    Asym PFC
---------------  ---------------  -------  -----  -----  -------  ---------------  ------  -------  --------------  ----------
      Ethernet0          0,1,2,3      40G   9100    N/A     etp1           routed    down       up             N/A         N/A
      Ethernet4          4,5,6,7      N/A   9100    N/A     etp2  PortChannel0011    down       up             N/A         N/A
      Ethernet8        8,9,10,11      N/A   9100    N/A     etp3           routed    down       up             N/A         N/A
     Ethernet12      12,13,14,15      N/A   9100    N/A     etp4           routed    down       up             N/A         N/A
     Ethernet16      16,17,18,19      N/A   9100    N/A     etp5           routed    down       up             N/A         N/A
     Ethernet20      20,21,22,23      N/A   9100    N/A     etp6           routed    down       up             N/A         N/A
     Ethernet24      24,25,26,27      N/A   9100    N/A     etp7           routed      up       up  QSFP+ or later         N/A
     Ethernet28      28,29,30,31      N/A   9100    N/A     etp8           routed    down       up             N/A         N/A
     Ethernet32      32,33,34,35      N/A   9100    N/A     etp9           routed      up       up  QSFP+ or later         N/A
     Ethernet36      36,37,38,39      N/A   9100    N/A    etp10           routed      up       up  QSFP+ or later         N/A
     Ethernet40      40,41,42,43      N/A   9100    N/A    etp11           routed      up       up  QSFP+ or later         N/A
     Ethernet44      44,45,46,47      N/A   9100    N/A    etp12           routed      up       up  QSFP+ or later         N/A
     Ethernet48      48,49,50,51      N/A   9100    N/A    etp13            trunk      up       up  QSFP+ or later         N/A
     Ethernet52      52,53,54,55      N/A   9100    N/A    etp14           routed      up       up  QSFP+ or later         N/A
     Ethernet56      56,57,58,59      N/A   9100    N/A    etp15           routed    down       up  QSFP+ or later         N/A
     Ethernet60      60,61,62,63      N/A   9100    N/A    etp16           routed      up       up  QSFP+ or later         N/A
     Ethernet64      64,65,66,67      N/A   9100    N/A    etp17           routed      up       up  QSFP+ or later         N/A
     Ethernet68      68,69,70,71      N/A   9100    N/A    etp18           routed      up       up  QSFP+ or later         N/A
     Ethernet72      72,73,74,75      N/A   9100    N/A    etp19            trunk      up       up  QSFP+ or later         N/A
     Ethernet76      76,77,78,79      N/A   9100    N/A    etp20           routed      up       up  QSFP+ or later         N/A
     Ethernet80      80,81,82,83      N/A   9100    N/A    etp21  PortChannel0002      up       up  QSFP+ or later         N/A
     Ethernet84      84,85,86,87      N/A   9100    N/A    etp22           routed    down       up             N/A         N/A
     Ethernet88      88,89,90,91      N/A   9100    N/A    etp23           routed    down       up             N/A         N/A
     Ethernet92      92,93,94,95      N/A   9100    N/A    etp24           routed    down       up             N/A         N/A
     Ethernet96      96,97,98,99      N/A   9100    N/A    etp25           routed    down       up             N/A         N/A
    Ethernet100  100,101,102,103      N/A   9100    N/A    etp26           routed    down       up             N/A         N/A
    Ethernet104  104,105,106,107      N/A   9100    N/A    etp27           routed    down       up             N/A         N/A
    Ethernet108  108,109,110,111      N/A   9100    N/A    etp28           routed    down       up             N/A         N/A
    Ethernet112  112,113,114,115      N/A   9100    N/A    etp29           routed    down       up             N/A         N/A
    Ethernet116  116,117,118,119      N/A   9100    N/A    etp30           routed    down       up             N/A         N/A
    Ethernet120  120,121,122,123      N/A   9100    N/A    etp31           routed    down       up             N/A         N/A
    Ethernet124  124,125,126,127      N/A   9100    N/A    etp32           routed    down       up             N/A         N/A
PortChannel0002              N/A      N/A   9100    N/A      N/A           routed      up       up             N/A         N/A
PortChannel0011              N/A      N/A   9100    N/A      N/A           routed    down       up             N/A         N/A

Additional information you deem important (e.g. issue happens only occasionally):

**Output of `show version`:**
$ show version

SONiC Software Version: SONiC.master.514-f99dbff7
Distribution: Debian 10.7
Kernel: 4.19.0-9-2-amd64
Build commit: f99dbff7
Build date: Thu Jan  7 11:32:16 UTC 2021
Built by: johnar@jenkins-worker-7

Platform: x86_64-mlnx_msn2700-r0
HwSKU: Mellanox-SN2700
ASIC: mellanox
ASIC Count: 1
Serial Number: MT2020T04280
Uptime: 12:58:37 up 9 days, 19:33,  2 users,  load average: 5.41, 6.57, 6.43

Docker images:
REPOSITORY                    TAG                   IMAGE ID            SIZE
docker-syncd-mlnx             latest                8537800d1c46        536MB
docker-syncd-mlnx             master.514-f99dbff7   8537800d1c46        536MB
docker-sflow                  latest                0a822def5cfe        452MB
docker-sflow                  master.514-f99dbff7   0a822def5cfe        452MB
docker-snmp                   latest                2069a95759c9        432MB
docker-snmp                   master.514-f99dbff7   2069a95759c9        432MB
docker-teamd                  latest                08b104d44f5b        451MB
docker-teamd                  master.514-f99dbff7   08b104d44f5b        451MB
docker-router-advertiser      latest                8cb6defab300        391MB
docker-router-advertiser      master.514-f99dbff7   8cb6defab300        391MB
docker-platform-monitor       latest                5276a7643b58        672MB
docker-platform-monitor       master.514-f99dbff7   5276a7643b58        672MB
docker-lldp                   latest                b246a382937e        431MB
docker-lldp                   master.514-f99dbff7   b246a382937e        431MB
docker-database               latest                01e9cf4ea8cf        391MB
docker-database               master.514-f99dbff7   01e9cf4ea8cf        391MB
docker-orchagent              latest                b0ef7ae5f9a4        468MB
docker-orchagent              master.514-f99dbff7   b0ef7ae5f9a4        468MB
docker-nat                    latest                33f3d25505eb        453MB
docker-nat                    master.514-f99dbff7   33f3d25505eb        453MB
docker-sonic-telemetry        latest                873eda70c348        465MB
docker-sonic-telemetry        master.514-f99dbff7   873eda70c348        465MB
docker-dhcp-relay             latest                90a1733f4c5d        397MB
docker-dhcp-relay             master.514-f99dbff7   90a1733f4c5d        397MB
docker-sonic-mgmt-framework   latest                c6b96579ad33        604MB
docker-sonic-mgmt-framework   master.514-f99dbff7   c6b96579ad33        604MB
docker-fpm-frr                latest                d71593b61940        468MB
docker-fpm-frr                master.514-f99dbff7   d71593b61940        468MB
@prsunny
Copy link
Contributor

prsunny commented Jan 21, 2021

in what case is speed N/A ? is it a missing config?

@d-dashkov
Copy link
Contributor Author

d-dashkov commented Jan 21, 2021

The redis LAG_TABLE entry is missing speed information and when I tried execute intfutil it returned None, which caused the script to crash. In other cases with Ethernet interfaces, PORT_TABLE also doesn't contain information about the port speed by default, but it works well and shows N/A. Therefore, I suggested a PR in which, with such an error, the script does not crash, but returns N/A.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants