-
I would like to split the Zephyr SHELL logging from general logging vla LOG_X into different physical interface backends. Example of this might be 2 UARTS, 1 UART plus a Telnet Session for the shell, or 2 Telnet session operating on different TCP ports.
The purpose of this isolation is to keep standard logging, which can be a continuous stream, from overwriting the menus and results from the shell interface. For 2 Telnet sessions:
So notionally, I might need the option of capture log output to memory for one modality, or dumping log content onto the floor up until the point that the logging output is enabled. Any general recommendations or direction on this redirection of both the logging output and the Zephyr shell to different isolated interfaces as described? If there was a way of multiplexing the console and log output, multiplexing them, which I am not sure how that would work where the log content would not overwrite the shell menus, details on that would be much appreciated. For a 2 Uart implementation, it might seem that only the following device tree entries are required?
The Telnet sample does a good job of showing the shell being targeted towards a Telnet session.
The kernel configuration as follows, and this effort targets the native_posix_64 board target.
Walking through the code into LOG_INF() into method log_generic() the <shell_backend_telnet> device/value is positive allowing all log output to likewise target this interface. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
This item was discussed and closed as item #36057, "Zephyr Shell Console and Logging Targeting Isolated Different Device Interfaces". I was missing a kernel configuration parameter. |
Beta Was this translation helpful? Give feedback.
This item was discussed and closed as item #36057, "Zephyr Shell Console and Logging Targeting Isolated Different Device Interfaces". I was missing a kernel configuration parameter.