log: Allow padding of the function name
At present when function names are logged, the output is a little hard to read since every function is a different length. Add a way to pad the names so that the log messages line up vertically. This doesn't work if the function name is very long, but it makes a big difference in most cases. Use 20 characters as a default since this covers the vast majority of functions. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -322,6 +322,14 @@ config LOGF_FUNC
|
||||
Show the function name in log messages by default. This value can
|
||||
be overridden using the 'log format' command.
|
||||
|
||||
config LOGF_FUNC_PAD
|
||||
int "Number of characters to use for function"
|
||||
default 20
|
||||
help
|
||||
Sets the field width to use when showing the function. Set this to
|
||||
a larger value if you have lots of long function names, and want
|
||||
things to line up.
|
||||
|
||||
config LOG_SYSLOG
|
||||
bool "Log output to syslog server"
|
||||
depends on NET
|
||||
|
||||
@@ -38,7 +38,7 @@ static int log_console_emit(struct log_device *ldev, struct log_rec *rec)
|
||||
if (fmt & BIT(LOGF_LINE))
|
||||
printf("%d-", rec->line);
|
||||
if (fmt & BIT(LOGF_FUNC))
|
||||
printf("%s()", rec->func);
|
||||
printf("%*s()", CONFIG_LOGF_FUNC_PAD, rec->func);
|
||||
}
|
||||
if (fmt & BIT(LOGF_MSG))
|
||||
printf("%s%s", add_space ? " " : "", rec->msg);
|
||||
|
||||
Reference in New Issue
Block a user