For debug purposes, refer to this page for instructions on enabling the debug options in BISDN Linux.
To ensure proper operation of BISDN Linux, the services
ofagent must be running. First check that these necessary services are up and running with the following command.
systemctl status <service>
Before diving deeper into the debugging process, you should verify your network configuration. Make sure that the network configuration files are read and applied correctly, by checking the status and logs of services that you are using to apply network configuration. In most cases this will be
systemd-networkd, and maybe
To follow the logs from the service, use the following command.
journalctl -u <service>
man journalctl for more information on the arguments.
When trying to configure a feature, please remember to verify if the version and plaform being tested does support the feature. Make sure to check the list of known limitations.
To ensure that the link state itself is as expected, use
onlpdump -S to get the state of all ports (sample output below). If the port state and SFP information (not applicable to patch cables) does not correspond to the physical connections, debug the physical connection by adding another cable or try another module, if available.
Port Type Media Status Len Vendor Model S/N ---- -------------- ------ ------ ----- ---------------- ---------------- ---------------- 48 NONE ... 51 1GBASE-CX Copper 1m SFP-10G-DAC
baseboxd ships with the default configuration file
/etc/default/baseboxd shown below.
### Configuration options for baseboxd # # Enable multicast support: # FLAGS_multicast=true # # Listening port: # FLAGS_port=6653 # # gRPC listening port: # FLAGS_ofdpa_grpc_port=50051 ### glog # # log to stderr by default: GLOG_logtostderr=1 # verbose log level: # GLOG_v=0
The relevant option for enabling debug logs in baseboxd is the
GLOG_v key. By increasing the value in this configuration option (default is 0 for disabled), more detailed debug information will be printed. The accepted values are
When passing the baseboxd module names to
GLOG_vmodule, which correspond to the class names, specific logging for that component will be activated with the specified logging level. The following command exemplifies how to configure this value.
GLOG_vmodule=<module name>=<log level> set log levels of the cnetlink, nl_l3 and controller modules to 1, 3 and 2 respectively. GLOG_vmodule=cnetlink=1,nl_l3=3,controller=2
ofdpa ships with the default configuration file
/etc/default/ofdpa shown below.
### Configuration options for ofdpa # # Set the component for debugging (can be added multiple times), # valid components are: # 1 = API # 2 = Mapping # 3 = RPC # 4 = OFDB # 5 = Datapath # 6 = G8131 # 7 = Y1731 # e.g. (API and Mapping): # -c 1 -c 2 # # debug level 0..4 (all components) # -d 2 # # example: # OPTIONS="-c 1 -c 2 -d 2" OPTIONS=""
To activate the logging for ofdpa, pass the component identifier (the numbers show in the default configuration file), together with the debug level you need to the
OPTIONS key (e.g.
OPTIONS="-c 1 -c 5 -d 4" to enable the maximum verbosity for the “API” and “DATAPATH” components).
ofagent ships with the default configuration file
/etc/default/ofagent shown below.
### Configuration options for ofagent # # set the dpid # -i 1 # # connect to IP:PORT # -t 10.10.10.10:6653 # # agent level debugging 0..2 # -a 2 # # insert all options here: OPTIONS="-t 127.0.0.1:6653 -m"
Logging in ofagent can be enabled by amending the
OPTIONS key (please do not overwrite the default settings) with the
-a <log level> flag (e.g.
OPTIONS="-t 127.0.0.1:6653 -m -a 2" for maximum verbosity).
You can check the service status and logs of FRR like we do for all other services above. For more information we refer to the official FRR documentation for the instructions in activating the debug components FRR documentation.