NVIDIA
NVIDIA
SONiC WJH
Container
NVIDIA
NVIDIA
SONiC WJH

SONiC What Just Happened

NVIDIA SONiC

SONiC is an open source network operating system based on Linux that runs on switches.
SONiC What Just Happened is an application giving the user a way to debug network issues.

SONiC What Just Happened (WJH)

What Just Happened is provided to the user as a docker image and can be installed on Nvidia SONiC switch using SONiC Application Extension infrastructure.

License

By pulling and using the container, you accept the terms and conditions of this End User License Agreement

Release History

SONiC ReleaseQualified HashWJH TagSDK
2023-05208c17051.6.2-2023054.6.2202
2022-11_1e7ce179b1.5.4-2022114.6.1062
2022-11d93970bc1.5.3-2022114.5.5142
2022-05_250817f5b1.3.4-2022054.5.4206

How to use SONiC WJH

In order to install the WJH package, do the following:

Add what-just-happened into sonic-package-manager repositories list:

admin@sonic:~$ sudo sonic-package-manager repository add what-just-happened nvcr.io/nvidia/sonic/sonic-wjh

Make sure what-just-happened appears in sonic-package-manager list table:

admin@sonic:~$ sonic-package-manager list Name Repository Description Version Status ------------------ ---------------------------------------- ---------------------------- --------- ------------- database docker-database SONiC database package 1.0.0 Built-In dhcp-relay docker-dhcp-relay N/A 1.0.0 Installed fpm-frr docker-fpm-frr SONiC fpm-frr package 1.0.0 Built-In lldp docker-lldp SONiC lldp package 1.0.0 Built-In macsec docker-macsec SONiC macsec package 1.0.0 Built-In mgmt-framework docker-sonic-mgmt-framework SONiC mgmt-framework package 1.0.0 Built-In nat docker-nat SONiC nat package 1.0.0 Built-In pmon docker-platform-monitor SONiC pmon package 1.0.0 Built-In radv docker-router-advertiser SONiC radv package 1.0.0 Built-In restapi docker-sonic-restapi SONiC restapi package 1.0.0 Built-In sflow docker-sflow SONiC sflow package 1.0.0 Built-In snmp docker-snmp SONiC snmp package 1.0.0 Built-In swss docker-orchagent SONiC swss package 1.0.0 Built-In syncd docker-syncd-mlnx SONiC syncd package 1.0.0 Built-In teamd docker-teamd SONiC teamd package 1.0.0 Built-In telemetry docker-sonic-telemetry SONiC telemetry package 1.0.0 Built-In what-just-happened nvcr.io/nvidia/sonic/sonic-wjh N/A N/A Not Installed

During 1st phase you can add a description and a default version to be installed.

admin@sonic:~$ sudo sonic-package-manager repository add what-just-happened nvcr.io/nvidia/sonic/sonic-wjh --description "WJH package" --default-reference 1.0.0 admin@sonic:~$ sonic-package-manager list Name Repository Description Version Status ------------------ --------------------------- ---------------------------- --------- ------------- database docker-database SONiC database package 1.0.0 Built-In dhcp-relay docker-dhcp-relay N/A 1.0.0 Installed fpm-frr docker-fpm-frr SONiC fpm-frr package 1.0.0 Built-In lldp docker-lldp SONiC lldp package 1.0.0 Built-In macsec docker-macsec SONiC macsec package 1.0.0 Built-In mgmt-framework docker-sonic-mgmt-framework SONiC mgmt-framework package 1.0.0 Built-In nat docker-nat SONiC nat package 1.0.0 Built-In pmon docker-platform-monitor SONiC pmon package 1.0.0 Built-In radv docker-router-advertiser SONiC radv package 1.0.0 Built-In restapi docker-sonic-restapi SONiC restapi package 1.0.0 Built-In sflow docker-sflow SONiC sflow package 1.0.0 Built-In snmp docker-snmp SONiC snmp package 1.0.0 Built-In swss docker-orchagent SONiC swss package 1.0.0 Built-In syncd docker-syncd-mlnx SONiC syncd package 1.0.0 Built-In teamd docker-teamd SONiC teamd package 1.0.0 Built-In telemetry docker-sonic-telemetry SONiC telemetry package 1.0.0 Built-In what-just-happened <docker repository> WJH package N/A Not Installed

Install WJH with the wanted version:

admin@sonic:~$ sudo sonic-package-manager install what-just-happened==<version> what-just-happened==1.1.0-202106 is going to be installed, continue? [y/N]: y Extracting c2fc991234e9 100%| 37.87/37.87 Mb [00:24<00:00, 1.61 Mb/s] Extracting f714ae43fcbe 100%| 80.79/80.79 Mb [00:24<00:00, 3.43 Mb/s] Extracting d960726af2be 100%| 48.10/48.10 Mb [00:24<00:00, 2.04 Mb/s] Extracting 77e6ca625721 100%| 5.39/5.39 Mb [00:21<00:00, 0.25 Mb/s] Extracting e4e9fbe90e50 100%| 5.67/5.67 Mb [00:21<00:00, 0.27 Mb/s] Extracting 94d30986e75d 100%| 49.48/49.48 Mb [00:21<00:00, 2.36 Mb/s] Extracting e1ec38773a81 100%| 8.47/8.47 Mb [00:21<00:00, 0.41 Mb/s] Extracting 6a9310cc6314 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting e6bbe5c78b8b 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 372b13cd48bd 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting ce6c9e0c0800 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 82cf8e812ea5 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 32d86fe1dae2 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 912faf9c80e9 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 5f0e11c30315 100%| 0.00/0.00 Mb [00:20<00:00, 0.00 Mb/s] Extracting 920084c53ba5 100%| 0.00/0.00 Mb [00:00<00:00, 0.10 Mb/s] generated /usr/bin/what-just-happened.sh generated /usr/local/bin/what-just-happened.sh generated /usr/lib/systemd/system/what-just-happened.service generated /usr/lib/systemd/system/what-just-happened@.service generated /usr/lib/systemd/system/what-just-happened.timer generated /usr/lib/systemd/system/what-just-happened@.timer generated /usr/local/bin/debug-dump/what-just-happened

In order to enable WJH feature, execute:

admin@sonic:~$ sudo config feature state what-just-happened enabled admin@sonic:~$ show feature status Feature State AutoRestart SetOwner ------------------ -------------- -------------- ---------- bgp enabled enabled database always_enabled always_enabled dhcp_relay enabled enabled local lldp enabled enabled macsec disabled enabled mgmt-framework enabled enabled nat disabled enabled pmon enabled enabled radv enabled enabled restapi enabled enabled sflow disabled enabled snmp enabled enabled swss enabled enabled syncd enabled enabled teamd enabled enabled telemetry enabled enabled what-just-happened enabled enabled local

In order to see drops, use "show what-just-happened" command

admin@sonic:~$ show what-just-happened poll # Timestamp sPort dPort VLAN sMAC dMAC EthType Src IP:Port Dst IP:Port IP Proto Drop Severity Drop reason - Recommended action Group -- ---------------------- ----------- ------ ----- ------------------ ------------------ -------- ------------ ------------ --------- ------ --------- --------------------- 1 20/11/24 08:25:15.847 Ethernet60 N/A 500 00:11:22:33:44:55 00:00:00:00:00:01 Dot1Q 127.0.0.1 127.0.0.1 ip L2 Error Ingress VLAN filtering - Validate the VLAN membership configuration on both ends of the link 2 20/11/24 08:25:15.925 Ethernet60 N/A N/A 00:11:22:33:44:55 b8:59:9f:a9:2a:00 0x0 N/A N/A N/A L3 Notice Non IP packet - Destination MAC is the router, packet is not routable 3 20/11/24 08:25:20.667 Ethernet8 N/A N/A N/A N/A N/A N/A N/A N/A L1 Warn Generic L1 event - Check layer 1 aggregated information

Integrating WJH to SONiC Build System

Create mk file: PACKAGE = my-package $(PACKAGE)_REPOSITORY = <myrepo/mypackage> $(PACKAGE)_VERSION = <version> SONIC_PACKAGES += $(PACKAGE) Add it to rules folder in source code

NOTE: SDK version in WJH must match the SDK version in the SONiC image. To check execute the following command

admin@sonic docker exec -ti syncd sx_sdk --version
Publisher
NVIDIA
NVIDIA
Latest Tag1.6.2-202305
UpdatedFebruary 6, 2024 UTC
Compressed Size169.56 MB
Multinode SupportNo
Multi-Arch SupportNo

NVIDIA uses cookies to improve your experience on our web site. We and our third-party partners also use cookies and other tools to collect and record information you provide as well as information about your interactions with our websites for performance improvement, analytics, and to assist in marketing efforts. By clicking "Accept All", you consent to our use of cookies and other tools as described in our Cookie Policy. You can manage your cookie settings by clicking on "Manage Settings." By continuing to use this site or by clicking one of the buttons below, you agree to our Terms of Service (which contains important waivers). Please see our Privacy Policy for more information on our privacy practices.